* fix: fix chrome crash when CRI client is disconnected
* chore: build binaries for chrome recovery crash for users to test
* chore: add changelog entry
* initial commit, a kinda working prototype
* Ready to test in CI
* "SyntaxError: Cannot use import statement outside a module" I blame VS code for always inserting the wrong dependency
* try using built js instead of the ts file
* typescript fixes?
* get version correctly, don't use optional chaining in child process.
* trying this, idk
* try running telemetry for driver-integration-tests-chrome
* fix missing spans, add more attributes for some spans
* fix missing spans and add suite spans
* types
* Remove un-used require
* remove spans for describe blocks in favor of the full title for tests
* migrate to sync resource discovery, start new custom exporters for spans
* encrypted
* localhost
* don't do things on child process
* latest changes
* update server start span time / add v8 snapshot span & update command span names
* prepare for sync
* don't send blank key
* make telemetry work again for sending directly to honeycomb
* web-socket exporter
* Add in IPC exporter and message the child process before disconnecting
* Use the cloud api by default
* move cloud span exporter into telemetry package
* shutdown fixes
* fix enabled
* improve types
* run in ci
* yml is the worst
* type!
* add spans for timing insights for visible areas of improvement
* type errors
* lets try sending data to staging
* types
* types again
* remove problematic attributes
* clean up exporters
* i like this better even though it doesn't seem to matter much
* some self review cleanup
* Update comment
* add debug messages
* mocha tests
* actually exit with the right code... oops
* simple mistake... have to look into how to fix with ts...
* try this i guess
* don't return undefined
* read me diagram
* color?
* no rect
* moar diagram
* docs!
* formatting
* build more binaries
* Supposedly fix cypress in cypress test failures
* test 'fixes'
* try this instead
* do not transpile cypress packages dir
* lets try escaping our regex string
* Add some diagnostics to help test the built binary....
* try a more complex solution
* fix tests probably
* just ignore the specific file
* fix unit tests
* cr updates
* Apply suggestions from code review
Co-authored-by: Matt Schile <mschile@cypress.io>
Co-authored-by: Bill Glesias <bglesias@gmail.com>
* Pr updates
* don't change the command queue
* move encoding and decoding telemetry context for ipc to the telemetry package
* build darn it
* plead for mercy from the testing gods, i merely wished to have named test reports, but clearly i have overreached.
* pr updates, send record key
* pr review
* optional chaining fails tests
* Apply suggestions from code review
Co-authored-by: Bill Glesias <bglesias@gmail.com>
* tests for cloud-span-exporter
* bad merge
* adding tests for the remaining exporters
* note
* docs
* Correctly set test under the current run span for component testing
* gate sending the message.
* pr updates
* finally, fingers crossed.
---------
Co-authored-by: Emily Rohrbough <emilyrohrbough@yahoo.com>
Co-authored-by: Matt Schile <mschile@cypress.io>
Co-authored-by: Bill Glesias <bglesias@gmail.com>
* Handle chrome tab and browser crashes.
* handle process crashes and add system tests
* handle crashing on windows
* updating comment
* update unit tests
* Update packages/server/lib/browsers/index.ts
Co-authored-by: Emily Rohrbough <emilyrohrbough@users.noreply.github.com>
* Apply suggestions from code review
Co-authored-by: Ryan Manuel <ryanm@cypress.io>
* fix flaky system test probably
Co-authored-by: Emily Rohrbough <emilyrohrbough@users.noreply.github.com>
Co-authored-by: Ryan Manuel <ryanm@cypress.io>
* revive logic to run CT in a single tab
* add feature flag: experimentalSingleTabRunMode
* remove log
* reset browser state between tests
* document single tab run mode experiment;
* add system test for experimental run mode
* fix snapshots
* use more simple project for testing
* additional guard;
* fix test
* Apply suggestions from code review
Co-authored-by: Emily Rohrbough <emilyrohrbough@users.noreply.github.com>
* destroy aut after each spec
* update snapshot
* fix types
* add experiment flag error
* add warning when using experimental flag with e2e
* build binaries for experimentalSingleTabRunMode feature
* build binaries take 2
* make error message more open ended
* destroy AUT later in run mode lifecycle
* add additional assertion around experimental flag
* simplify error
* remove test code from production code
Co-authored-by: Emily Rohrbough <emilyrohrbough@users.noreply.github.com>
* feat: add modify obstructive user agent code for electron to strip electron and cypress out of the UA string.
* fix user agent destructuring error within unit tests
* remove explicit CDP command and opt for _setUserAgent. add test to not override passed in user agent via config
* add get user agent method to electron and update tests
* move user agent override in electron under experimentalModifyObstructiveThirdPartyCode over experimentalSessionAndOrigin
* move position of setting user agent to browser launch, hopefully fixing issues in CI with parallelization between parent/child processes
* update stale documentation and remove no longer necessary stub of getUserAgent
* add user agent to get user agent debug log
Co-authored-by: Matt Schile <mschile@gmail.com>
* Adding prototype before-quit handler to handle async teardown.
* Getting binary builds
* Let's try this then
* Working the async changes backwards, hope I got them all. Unit tests will be a disaster currently.
* Actually getting build artifacts for testing
* Moving logic to server interactive/run
* fix: Fix some tests
* fix: Revert changes to circle config
* fix: Fix some tests
* fix: Fix more tests
* fix: Remove dead code comment
* fix: Fix ProjectDataSource tests
* fix: Add comment prefix
* fix: Remove comment and unnecessary async
* fix: Build Mac binary
* Reverting run changes
* Addressing PR comments. Cleaning up a few naming quibbles I had.
* Addressing TODO regarding onLoadError watcher cleanup.
* Correcting catch
* Fighting some unref errors on these catches
* Reverting making this private en lieu of binding
* Should have left these as instances, whoops
* Removing unnecessary test that was previously skipped
* Adding a couple cheap unit tests for the new interactive mode behavior
Co-authored-by: Tyler Biethman <tbiethman@gmail.com>
Co-authored-by: Tyler Biethman <tbiethman@users.noreply.github.com>
* fix: properly run multiple specs in run and headed mode on linux and windows
* fix: properly run multiple specs in run and headed mode on linux and windows
* Update test
* Update test
* Fix issue with running headed in linux and windows
* Improve test
* Update packages/server/lib/browsers/browser-cri-client.ts
* PR comments
* PR comments
* Fix test failure due to refactor
Co-authored-by: Lachlan Miller <lachlan.miller.1990@outlook.com>
Co-authored-by: Matt Henkes <mjhenkes@gmail.com>
* fix: restart dev-server on config change
* close dev server before cp is spawned
* fix test that is failing... not sure why
* cleanup unsued close events
* remove wait
* add back in close for unit tests
Co-authored-by: Tim Griesser <tgriesser10@gmail.com>
* fix: Updating Focus behavior to relaunch browser if runner has been closed
Also updating firefox executable used to ensure focus behavior continues working for firefox
* Adding unit tests
* feat: add spec watcher to data-context
* fix typo
* attempt to fix flake
* fix path.join
* if this fixes it I'm going to be upset
* remove unused code
* address comments