* Updated cypress/scripts/binary/util/upload.coffee to use curl and API Tokens as the cfcli command currently *ONLY* supports API Keys.
* Update purge cache to use request-promise
* Cleanup & remove sync method
* Remove unused cloudflare-cli dep
* update appveyor encrypted secrets for cloudflare
* add missing deps
Co-authored-by: Zach Bloomquist <github@chary.us>
Co-authored-by: Brian Mann <brian.mann86@gmail.com>
* cleanup type_spec, allow unused-vars for args
* fix missing return
* rename mouse/keyboard
* apply changes on this branch with rename
* temp 07/18/19 [skip ci] type_spec minor changes
* temp 07/19/19 [skip ci]
* temp 07/22/19 [skip ci]
* temp 07/22/19 [skip ci]
* remove accidental spec, use beforeEach visit in click_spec
* add tests for cy.trigger changes
* re-run build
* add typedefs
* temp 08/08/19 [skip ci]
* fix type_spec, click_spec
* fix console table event table logging
* fix spec utils
* fix invalid clicking-into-iframe spec
* address review, cleanup
* temp 09/25/19 [skip ci]
* add test for clicking checkbox, cleanup click_spec
* document mouse click and mouse move algo, adjust mouse move, add test for recursive movement
* cleanup / formatting
* scope the getCommandLogWithText to the active runnable to prevent leakage
* cleanup tests, make values static so tests pass consistently
- use attach listener alias APIs
- remove magic number constants
- fix some incoherent html / script tag stuff
* begin implementation for returning fromAutWindow
- restore original fromWindow algorithm
- begin writing fromAutWindow for calculating red hitbox coordinates
which are layered on the AUT
* move describe block with the others
* refactor actions to DRY up duplicated logic between click/dblclick/rightclick
- tighten up the mouse.js method names, name them consistently
* remove comment
* fix iframe coords and test
* rename fromDocCoords->fromWindowCoords, fix type_spec ux test
* tighten up method, remove unnecessary arg
* add debug logic for retries to console.error() non cypress errors
* renamed fromWindow -> fromElWindow, and fromViewport -> fromElViewport
* handle calculating the fromElWindow coordinates inline
* extract out function for clarity, receive consistent arg names
* cleanup, add lots of comments
Co-authored-by: Brian Mann <brian.mann86@gmail.com>
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
* try connecting to chrome remote interface
* linting
* print CRI targets for better debugging
* linting
* load empty tab first when connecting to CRI
* first load blank page, then navigate
* Page.navigate is working
* linting
* remove title
* add mocha banner
* more banners
* update some server unit tests
* update integration test
* document how to run single driver spec file
* set the focus back on the page before navigating from blank chrome tab
* update server unit test
* do not store Chrome remote interface reference for now
* record video of the Chrome tab using screencast API
* use dynamic port to connect to Chrome remote interface
* update unit tests
* refactoring
* wrap chrome remote interface in our interface, limit access to send
* resolved merge
* fix reference
* passing run unit spec
* stub canary search for CI to pass
* add build step to packages/server
* update chrome spec
* do not build js on install for server
* updated spec snapshots
* update 6_visit_spec snapshot
* update snapshot for 6_web_security_spec
* update snapshot for 3_plugins_spec
* update snapshot for 3_user_agent_spec
* update snapshot for 5_stdout_spec
* update snapshot for 2_browser_path_spec
* do not git ignore js files, add note why
* update several snapshots with video on Chrome
* update visit performance snapshot
* add chrome-remote-interface dependency
* cleanup coffeescript conversion to JS, fix some type errors, make parallel override clearer
* fix failing tests
* Fix snapshot - now we do record in Chrome, so warning message is no longer there.
* remove chrome warnings about not recording from snapshot
* Remove performance tests from 6_visit_spec snapshot
* Remove error from snapshot
* Add newline back to cy_visit_performance_spec snapshot
* Navigate to about:blank
* look for blank page url
* add note about avoiding Prettier
* disable prettier a little more
* call chrome remote interface close after each spec
* return promise when starting screencast
* update failing unit tests, add cri client close test
* update integration test
* Add verbose debug statements to cri-client
* Use connect.createRetryingSocket for CDP connection
* record video from chrome browsers
* add method for validating browser family
* update e2e spec snapshot
* update 4_request_spec snapshot
* update snapshot for spec 1_commands_outside_of_test_spec
* update snapshot for 3_plugins_spec
* update snapshot for spec 3_user_agent_spec
* try: Always log video capturing errors
* update snapshot for 2_browser_path_spec
* update snapshot for 2_cookies_spec
* better browser family test
* update snapshot for 5_stdout_spec
* update snapshot for 5_subdomain_spec
* Add protocol_spec tests
* do not capture video during performance test
* Add test for VIDEO_POST_PROCESSING_FAILED warning
* use client.on to register screencast callback
* cleanup prettier, extract some functions, switch to browser.family
* moar cleanup and fixes
* add logging to the cri-client so we can see every message sent + received to the cdp protocol
* bump bluebird to 3.7.0 for .tapCatch addition
* Fix unit tests
* WIP: update e2e test to ensure that duration of the video matches what we expect
* Test duration of recorded video
* Run 6_video_compression in chrome + electron
* Cleanup
* finish ffmpeg duration verification
* Update 8_reporters_spec snapshot
* Update CRI close logic to monkey-patch browser.kill
* add isBrowserFamily back
* make it possible for remote-debugging-port to get overridden
* Make CDP timeout 5s; add unit, e2e tests for CDP failure; add user-friendly CDP failure error
* Update tests
* Use CYPRESS_REMOTE_DEBUGGING_PORT to set CDP port; update CDP error message
Co-authored-by: Brian Mann <brian.mann86@gmail.com>
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
Co-authored-by: Zach Bloomquist <github@chary.us>
* dont use jquery for width/height calculations for dom highlights, put opacity on wrapper element
* add test for inline els
* some final cleanup
Co-authored-by: Brian Mann <brian.mann86@gmail.com>
* [skip-ci] Add some of new Pull Request and Pull Request Review process to Contributing guide
* More updates to the Guidelines / dep updates and minor changes that were outdated.
* run driver-integration tests in electron as well
* fix invalid clock_spec, performance entries not present in electron
* circleci: bump parallelism to 5 for driver tests
* circleci: fix config
* fix invalid navigation_spec to work on electron
* fix: switch back to using jquery width/height on element dimensions
* cleanup spec
* minor minor cleanup spec
* fix padding highlight as well
* test refac
* rename expect -> should
* still use innerwidth for window
* Suppress NODE_TLS_REJECT_UNAUTHORIZED warning
* move warning suppression to own module; add tests with and without
* use spread operator for args
* move originalEmitWarning
* use Node path from config file to run plugins
* add finding system node
* memoize node find, use fix-path if Node is not found
* find Node asynchronously
* update note on ENFILE
* print node version before executing registered event
* use nodeVersion option, add validator isOneOf
* linting
* remove resolve-dir
* debugging unit test
* resolve original promise to make the tests run correctly
* update second test
* add unit tests
* upgrade snap-shot-it package to be able to update snapshots
* make finding node path part of startup, merge into config
* update tests
* add node version & path to run output
* add node version display to desktop-gui
* add warnings, add tests, add learn more link in desktop-gui
* Revert "add node version & path to run output"
This reverts commit 40a3218175.
* only show Node Version if it is non-default
* Add e2e test for using system node
* cleanup
* add tests that resolvedNodePath and Version are available in tests
* assert nodeVersion == system
* add nodeVersion to schema
* add new configoptions to types
* add fallback if pluginsfile is disabled
* new package.json sorting
* update some of the wording/styling of Node Version panel
* remove ` from schema file
* clean up decaffeinated tests + update wording when no pluginsfile is present
* playing with messaging.
* push updated node version panel design
* update design + copy of Node panel again
* some more iteration on design (WIP)
* Finish design changes + fix tests
* add debug message
* linting problems
* add missed require
* Add comment to refactor the colWidths in this PR after another PR goes
* replace the exact length of Node version in specfiles
* print object for node version and path instead of %s %s
* update snapshot to match v12 length
Co-authored-by: Zach Bloomquist <github@chary.us>
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
* Fix scrolling of desktop-gui panes after Chrome upgrade
* even better
* Restore box-shadow on runs tab
* Add auth fallback code on runs list
* Update project modal to use LoginModal instead of copypasta
* Fix failing tests
* bump up truncation of formatting http props to 2000 chars instead of 100
let’s see what snapshots look like 🤞
* Add a test for something with a long prop (url) to have snapshot to not truncate.
* remove unnecessary module
Co-authored-by: Brian Mann <brian.mann86@gmail.com>
* deasync failing on node 12.4.0 until its installed manually
* existential operator + comments
* use $dom utils for determining whether arg is valid jquery element
* cleanup and normalize variables to indicate whether they are jquery or not
- micro opt setting const for element accessors
* nvm, don't think its necessary
* fix(errors): better error message when element is detached during actionability (address #695)
* fix various failing tests
* fix visibility_spec typo
* cleanup test, ensures.coffee
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
* add failing test for utf8 word boundary corruption
* use UTF-8 aware stream replacer
* cleanup
* cleanup test server
* add link to issue
* add replace_stream tests
* add license
* perf improvements - tsificiation
* emit the maximum chars possible
* add better types
* move license, update test
* cli, server: introduce --config-file argument
* server: remove unused import
* server: wip
* server: consider --config-file in settings
* server: pass options to settings.read from config
* server: store options in Project class, pass to all settings calls
* server: _initPlugins needs to accept options, for being called from server
* server: accept optional external options in open
* cli: update help snapshots
* server: realizing now that these were written like this so they could be stubbed - removing some unnecessary usages of @options
* cli: pass configFile when it's false
* server: --config-file false and --config-file blah.json work
* server: add unit tests for --config-file
* server: pass configFile to desktop-gui
* desktop-gui: display 'cypress.json' according to --config-file arg
* desktop-gui: add integration tests for --config-file
* cli: add tests for --config-file
* PR changes
* PR changes
* cli: update snapshots
* server: updating error messages
* runner: update cypress.json mention
* fixing name overlap
* server: integration tests for --config-file
* runner: update Header component tests
* cli: fix snapshot
* desktop-gui: fix test
* driver: fixing error messages - not really any visibility to cli args from here so just static strings
* server: update snapshots
* server: update snapshots
* cli: updating snapshot
* driver: how did i miss this?
* add skipped blank line to the snapshot
* fix missing proxy require statement (was lost in merge of develop)...weird
* add module API defs to types
* module API tests
* send better error when config file can't be found
* fix dtslint test
* update cli help to use 'configuration file'
* update snapshot using 7.7.1 in place
* fix failing config_spec
* be.visible
* show custom config file name in driver errors
* add tests for non-default config file in driver error messages
* single-quote config file name
* 🙅 IIFEs 🙅
* 🤦
* fix failing test
* fix failing test, cleanup
* lint
* delete duplicate coffee spec
* Update run.js
* Delete app_spec.js.mp4
* in open mode, only store projects to recents list if 'cypress.json' is the configFile
discussion: https://git.io/JeGyF
* feedback