Commit Graph

111 Commits

Author SHA1 Message Date
Alejandro Estrada
0366d4fa89 feat: use supportFile by testingType (#19364)
* feat: use supportFile by testingType

* Fix defaults

* Start renaming files, and updating system-tests

* Fix some tests

* Fix some tests

* Fix more tests

* Try to fix CI

* Fix more tests

* Fix some tests

* Revert changes

* Revert supportFile defaultValue

* Fix some tests

* Fix some tests

* Fix some tests

* Fix some tests

* Update supportFile example

* Update snapshots

* Remove scaffold support

* Handle config errors

* Remove scaffold

* Fix tests

* Fix test

* Update test

* Fix test

* Update supportFile template

* Fix template
2022-01-05 13:37:44 -05:00
Zachary Williams
c66a890229 feat: scaffold integration files in app (#18763) 2021-11-15 09:44:49 +10:00
Alejandro Estrada
081dd19cc6 feat: Use .config files (#18578)
Co-authored-by: Tim Griesser <tgriesser10@gmail.com>
2021-11-02 10:24:39 -04:00
userquin
8614e97802 fix(unified-desktop-gui branch): initial installation on windows (#18247) 2021-09-25 14:18:17 -04:00
Zach Panzarino
da3e49bf59 feat: updated scaffolding, new project & user banners, ability to remove scaffolding (#15826)
* update example build scripts

* remove old scaffolding relics

* update

* Fix some issues with scaffolding

* Correctly fix issues with scaffolding

* Replace old onboarding with new banner

* Add ability to remove scaffolded files

* Add banner for new users

* Update tests for new scaffolding

* Compare file sizes before removing

* Add tests for remove file

* Save when user opened cypress rather than boolean

* Update intro link and add tets for banners

* fix small issue

* Update design and copy of onboarding banners

* Update style of new spec file button

* Improve outline button active statE

* Update design of new project a bit more

* Fix specs list tests

* Update banner copy and layout

* Update banner copy and layout

* Switch to docs style alerts

* Fix testing logic

* Update banner styles a bit

* Update banners

* Add confirmation modal for delete specs

* Update tests and fix states

* Upgrade kitchensink dep

* Upgrade kitchen sink version and fix unit tests

* Update integration scaffolding test

* Add further description to warning modal

* Update test for new user and new project case

* Remove check to file tree when removing files

* Update kitchensink version

* Fix edge case where banner could appear when no files have been scaffolded

* Fix tests

* Update styling for 'note' when deleting files

* fix issue with path on windows

* Change remove command

* Fix rm dir

* Fix for windows

* Try to use appveyor to test

* appveyor please

* getting some feedback

* Why doesn't this work

* more info

* I have a feeling this works

* maybe its the other path

* please

* this is the one

* this is it

* this should work

* try reverting that change that might not be needed

* remove appveyor testing scaffolding

Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
2021-06-22 10:59:47 -05:00
Barthélémy Ledoux
7162bd1330 chore: avoid creating files at every yarn build (#16781) 2021-06-02 15:59:31 -05:00
Manuel Abascal
24a4d765a7 feat: Add keyboard shortcuts to pause, go to next test, and toggle scrolling in e2e Test Runner (#16411) 2021-05-20 10:25:58 -05:00
Ben Kucera
6abc245f91 fix: exception when recording with no tests in specfile (#15517) 2021-03-17 11:51:37 -04:00
Dmitriy Kovalenko
c405ee89ef feat: create-cypress-tests installation wizard (#9563)
* Remove unused stuff

* Fix eslint errors

* Use local cypress running script

* Fix dependency resolution

* Revert "Fix dependency resolution"

This reverts commit 01a70be211.

* Add @cypress/react CI

* Properly resolve @types pacakges

* Run tests with mocha

* Fix cypress tests

* Fix or skip some specs

* Add retries to the card-spec.js

* Remove jest mocks

* Run e2e examples on CI

* Fix yarn cache key

* Fix e2e examples jobs

* Rename cypress-react-unit-test with @cypress/react

* Fix circleci.yml

* Revert "Fix e2e examples jobs"

This reverts commit efcc7c4d19.

* Revert " Rename cypress-react-unit-test with @cypress/react"

This reverts commit 4febfcc82b.

* Replce cypress-react-unit-test with @cypress/react

* Persist build artifacts

* Fix working directory paths circle.yml

* Fix more CI

* adding yarn.lock files

* Make package.json for  folder

* Remove .npmrc

* Update circle.yml

* Remove unused files

* Copy plugins files to the "dist" folder

* Fix links to the github repos

* Move init wizard from npm/react/init to npm/wizard

* Move init wizard from npm/react/init to npm/wizard

* Implement initial vue template

* Run wizard tests on CI

* Refactor continue: bool to success: bool for better code readability

* Fix circleci.yml

* Use only absolute paths for tests

* Stub process.exit calls

* Remove useless comments

* Add installation cypress to the wizard logic

* More improvements

* Include packages/examples/cypress into git

* Commit new files

* Use packages/example as SST for generated files

* Last improvements for wizard

* Update packages/server/lib/scaffold.js

* Rename wizard to create-cypress-tests

* Fix circleci config

* Fix snapshot tests

* Run all create-cypress-tests on ci

* Do not install plugins and scaffold files from kitchensink

* Ignore integration/examples folder for packages/example

* Run create-cypress-tests-tests on CI

* Add copy example cross-platform script

* Use copy example script in tests

* feat: create-cypress-tests auto-inject config (#9116)

* Implement the basic babel code transformation for configs

* Add more tests for edge-cases

* Add snapshot tests for autogenerated code for each template

* Add git status guard

* Add git status guard

* Fix last test

* Fix tests

* Revert changes for packages/example

* Revert changes for packages/example/tsconfig.json

* Prepeare package for the release

* Fix inquirer name

* v0.0.125

* v0.0.127

* v0.0.128

* v0.0.130

* v0.0.131

* Add more UX features

* Add vue-cli template

* Make src as default folder for vue-cli template

* Revert dev-time changes

* Run appveyour windows build

* Run full appveyour build

* Fix circle.yml

* Update plugins

* Join paths for windows

* Revert example/lib changes

* Fix tests

* Revert unnecessary changes

* Implement dev-server dependency installation

* Update npm/create-cypress-tests/README.md

* Include webpack-options template in dist

Co-authored-by: Jessica Sachs <jess@jessicasachs.io>
2021-03-05 07:51:53 +02:00
renovate[bot]
759ce08d64 chore(deps): update dependency cypress-example-kitchensink to version 1.14.0 🌟 (#14760)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-01-27 11:29:18 +06:30
Zach Panzarino
3eb3bfa487 build: properly use local npm packages for development and binary build (#14182) 2021-01-05 00:34:13 -05:00
renovate[bot]
91b5e1615a chore(deps): update dependency cypress-example-kitchensink to version 1.13.1 🌟 (#14351)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-12-30 13:34:08 +06:30
Zach Bloomquist
c87f7b9104 chore: revert "feat: create-cypress-tests wizard (#8857)" (#9554) 2020-12-07 17:09:32 -05:00
Dmitriy Kovalenko
21ee591d1e feat: create-cypress-tests wizard (#8857)
Co-authored-by: Jessica Sachs <jess@jessicasachs.io>
2020-11-30 13:20:43 -05:00
Zach Bloomquist
ce73743f09 chore: Upgrade cypress-example-kitchensink to 1.13.0 (#9294) 2020-11-23 18:37:06 -05:00
Chris Breiding
4ca9ddc732 chore: Upgrade cypress-example-kitchensink to 1.12.0 (#8312) 2020-08-18 15:41:13 -04:00
Brian Mann
a491d5169a Merge branch 'develop' into v5.0-release
# Conflicts:
#	circle.yml
#	packages/server/test/unit/browsers/firefox_spec.ts
2020-07-17 18:51:52 -04:00
renovate[bot]
bf272a6d8f chore(deps): Update dependency cypress-example-kitchensink to version 1.11.2 🌟 (#7974)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-07-14 16:54:47 +06:30
Jennifer Shehane
639df99036 Rename uses of term 'whitelist' (#7782)
* Rename non-user facing instances of whitelist

* Rename server option 'whitelist' to 'ignore'

* Update use of whitelist with server to throw instead of warn

* Rename Cypress.Cookies.defaults 'whitelist' option to 'preserve'

* fix circle yml parameter parsing consistent

* compose cloning an external repo and switching to the NEXT_DEV_VERSION branch consistently

* add cypress org to repo parameter

* cd into the right dir before switching branches

* one line git checkout

* simplify passing repo

* cd into the right dir

* clone into the right dir

* oh my cd 101

* replace kitchen sink strings for 5.0.0

Co-authored-by: Brian Mann <brian.mann86@gmail.com>
2020-06-30 02:27:29 -04:00
Ben Kucera
47faf52e16 internal: use yarn workspace over lerna for individual package commands (#7644)
* use yarn workspace over lerna for individual package commands

* remove usage of wait-on

* fix readmes after regex replace

* revert wait-on changes

* update yarn.lock
2020-06-10 18:31:40 -04:00
renovate[bot]
2bbf75a628 chore(deps): update dependency cypress-example-kitchensink to version 1.11.1 🌟 (#7634)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-06-09 20:32:39 +06:30
renovate[bot]
713eec44eb chore(deps): Update dependency cypress-example-kitchensink to version 1.11.0 🌟 (#7282)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-06-01 11:33:01 -04:00
Hossam Magdy
7a829a336d docs: fix broken CONTRIBUTING.md link 2020-05-16 15:36:02 +02:00
Andrew Smith
0a6a2abcec Replace npm with yarn (#5555)
* enable using yarn

* enable lerna and yarn workspaces

No longer can reliably access node_modules via thei node_modules directory; yarn may optimize it via hoisting it up. This meant updating JS tasks that were copying files directly from node_modules directories. In these cases, pulled in a new package to resolve these correctly.

SCSS files remain impacted, but cannot easily import via JS. These paths have been modified, but it feels dangerous and incorrect to reach into a node_module to grab files like this.

Many prebuild steps were removed. I **think** the purpose of `check-deps-pre` is no longer needed, but need to confirm this.

* enabling test-unit script

removal of pretest-unit due to check-deps-pre

* removal of all  `check-deps` and `check-deps-pre`

I do not think these are needed anymore

* remove npm run all

Replaced by `lerna run` and `lerna run --scope`

* use yarn in circle CI

appveyor to soon follow

* yarn in appveyor

* remove need for bin-upplaces using bin-up have a dev dependency on some package; mostly mocha. This mocha package will be optimized by yarn workspaces by hoisting it into the root; which is effectively what bin-up usage was mimicing.

* replace npm run with yarn in package files

* replace explict paths to internal packages with yarn bin

* remove unecessary link packages script and references

* properly require package for mocha

* removing yarn test in this package as it was just a proxy for test-*

* yarn test in root now reflects what is run in circle ci

* relax yarn version requirement for circle ci

* @packages/cli is really just cypress

also run test in parallel via `yarn test`; it runs test in all 10 packages

* ensure postinstall is called before prebuild

yarn does not call postinstall when nothing has installed; such is the case when everything has been cached

* vscode config uses yarn

* cannot rely on which node_modules dir a package is in

find the right node_module dir via `resolve-pkg`

* further relax yarn version for OSX build in circle ci

* resolve failing test

Regarding direct access to node_modules

* node version in mac build not sufficient

ignoring check of node/yarn versions when installing

* preinstall script does not exist

I **think** the reason to not install packages' modules (the reason for `--ignore-scripts` may be irrelevant with yarn workspaces managing the packages)

* upgrade mocha that was using --file

`--file` was introduce in >=5

* scope test runs to correct packages

* explictly close connections; otherwise script hangs after tests run

* refactor so npm and npx commads can be created

npx is used to utlize lerna for running across all packages sans cli

* properly resolve socket.io-client node_module

We cannot reach directly into node_modules to grab the socket.io-client file. Furthermore, running it locally will require resolving from a different cwd, the repo root, as opposed to the package's dist directory.

The existence of the file deterimes whether we are building the binary or running locally.

* remove unnecessary arg in vscode debug config

enable debugging in @packages/server to troubleshoot failing test

* another npm command found to be changed to yarn

* properly print colors to terminal

`lerna run` does not appear to print colors to the terminal properly. Changed to leverage `lerna exec`

See https://github.com/lerna/lerna/issues/1168

* add missing test scripts to packages that have partially have them

'test', 'test-unit', 'test-watch', and 'test-debug'

This makes running them from the root easier and enables debugging via IDE on more packages

* properly patch package in yarn workspaces

* another package needing to postinstall

* use existing script over explicit lerna exec

* patches must be copied to dist

* return to building on postinstall

* do not hoist driver's packagesThere are too many places we need driver's packages to not be hoisted when testing. We have *.html files in test with script tags srcing node_modules.

* wait-on is used in circle-ci and needs to be a root dep

No longer hoisted by `@packages/driver`. This previously worked only because it was hoisted. Adding it to root properly.

* update documentation based on new ergonomics

* launcher has unit tests that should be runnable via top level task

* more concise way to run build within cypress scope

* fix for unit test that never seemed to work

`getPathToExample` is really `getPathToExamples`

* bust cache based on yarn.lock changing

* define intra-dependencies among packages

Due to the way we build the binary, all are considered dev dependencies.

* address `jquery.scrollto` mismatched jquery version

Tell yarn to explicitly resolve `jquery@3.1.1` for any dependencies and sub-dependencies. The root issue is that `jquery.scrollto` package specifies jquery as a dependency instead of a peer dependency (which is correct). Its jquery version is set to the `>=1.8` which then resolves to 3.4.1. In doing so, it will patch its jquery instead of ours; meaning that `$.scrollTo` is not defined.

* add/remove deps from renovate

- bin-up is gone in favor of yarn workspaces and lerna from root
- check-deps is gone in favor of `yarn check --integrity`
- lerna added

* few misc yarn lock updates

* hope that this may speed up build binary

installing several of the same dep in >1 package will likely be sped up using yarn due to its machine-wide caching.

* yarn pack prefix version with a `v`

* auto-run `yarn install` when deps become out of date

When switching to a branch with a different set of required deps, running any of the main top level tasks (as seen in the `./CONTRIBUTING.md` guide) will check for deps changes via `yarn check --integrity` and run `yarn` in root if deps are out of sync.

* add clean top level task, remove prebuild

install => build => prebuild => check => install === no good

* address code review to undo formatting changes

* favor default imports over deconstructing imports

* favor @package resolution; pr feedback

* include a specific revision

for some reason, it cannot resolve the original SHA `29dafed297142d3b8a9d8a01842cbdf249a98b72`

using the next closes SHA

* properly cache yarn packagesfollowed guide: https://circleci.com/docs/2.0/yarn/

* lower barrier for contributors to get started

relax node version to be 12.0.0 or higher; will use node version found in `.node-version` in CI

* updates required after merging latest development

was getting type errors when building. recreating the `yarn.lock` file seemed to resolve the issue.

* hidden dep on a specific type version in server

made dep explicit and now it can build.

* update request to patched version

non-breaking changes to request was updated in server, but not everywhere else. It appears that transitive deps were using the 2.88.0 request version instead of the updated one for the server package.

* missing commit from previous commit/merge

* do not force a higher version of yarn than the default on circleci

* exclude e2e.js helper from stop-only command

* trying to bust node_modules cache.https://github.com/yarnpkg/yarn/issues/6412#issuecomment-537787740

* incorrect quotation tick placement

* fix: properly postinstall parse-domain

Do not explicitly script the shell invocation of a dependency's postinstall (parse-domain). The dependency's node_modules may not be where the package thinks they are and are not properly resolved.

It appears that postinstall will automatically be called when installing with yarn.

* run all CI stages

* fix win-appveyor-build.js

* Update CONTRIBUTING.md

Co-Authored-By: Zach Bloomquist <github@chary.us>

* Update CONTRIBUTING.md

Co-Authored-By: Zach Bloomquist <github@chary.us>

* Update CONTRIBUTING.md

Co-Authored-By: Zach Bloomquist <github@chary.us>

* Server package watching a specific test works correctly.

* PR feedback

* Correctly use yarn to pack (to get package size)

* correct size calculation

`yarn pack` does not output the file name like `npm pack` does. Correct this by explictly setting the filename.

* PR feedback

* PR feedback

* update readmes and testing commands from them

* do not include this in default build

* yarn is now installed by default

https://github.com/appveyor/ci/issues/1852

* do not include server in `yarn` auto build

* a few more npm references changed to yarn

* Revert "run all CI stages"

This reverts commit 9256aed99f.

* Update circle.yml

Co-Authored-By: Zach Bloomquist <github@chary.us>

Co-authored-by: Zach Bloomquist <github@chary.us>
2020-02-11 12:40:07 +06:30
Chris Breiding
4b4842e55c Define types for plugin events (#6322)
* define types for plugin events

* add plugins file TS test

* fix plugins return type

* add void returns where allowed

* config can be partial

* add async test

* cannot return unknown keys in config

* add more tests

* add Task types and tests

* fix style issues

* update task type with compromise, remove redundant tests

* fix type

* bump kitchensink dep

* add typescript reference and jsdoc to plugins scaffold file

* update scaffold snapshot

* add more tests for before:browser:launch

* fix return type

Co-authored-by: Gleb Bahmutov <gleb.bahmutov@gmail.com>
Co-authored-by: Jennifer Shehane <shehane.jennifer@gmail.com>
2020-02-05 16:01:11 -05:00
renovate[bot]
ef27efcbca chore(deps): update dependency cypress-example-kitchensink to v… (#6175)
Co-authored-by: WhiteSource Renovate <renovatebot@gmail.com>
2020-01-16 12:21:18 +06:30
Jennifer Shehane
c8dac444f9 replace gulp-gh-pages-will with original gulp-gh-pages (#4827)
* replace gulp-gh-pages-will with original gulp-gh-pages

- the original has the gift update that was intended for the forked
versions usage.

* actually, the dep updated needed is only in their 'next' release.

Nobody has any idea why they haven't tagged it as latest in npm, the
repo looks a bit abandoned tbh.

* update require statement to new dep

* fix weird merge conflict
2019-12-19 22:07:14 +06:30
Zach Bloomquist
13aa496476 use cross-env in npm scripts so they work on Windows (#5888)
* use cross-env in npm scripts so they work on Windows

* update more cross-envs

* Apply suggestions from code review

Co-Authored-By: Gleb Bahmutov <gleb.bahmutov@gmail.com>
2019-12-05 11:38:03 -05:00
Gleb Bahmutov
2ea77db35a Collect GitHub templates in .github folder (#5701)
* move github templates into .github folder

* move code of conduct

* add pull request review comments

* fix a few missed links to newly moved github resources


Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
2019-11-18 15:32:41 -05:00
renovate[bot]
87d41bc54c chore(deps): Update cypress-example-kitchensink to 1.8.1 🌟 (#5600) 2019-11-08 15:57:44 -05:00
renovate[bot]
eb078974fe chore(deps): update dependency cross-env to version 5.2.1 🌟 (#5491)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2019-10-28 14:47:07 -04:00
renovate[bot]
905b7900dc chore(deps): Update dependency cypress-example-kitchensink to v… (#5472)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2019-10-28 09:39:37 -04:00
renovate[bot]
868dc83cf4 chore(deps): Update dependency cypress-example-kitchensink to v… (#5372)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2019-10-15 11:55:51 -04:00
renovate[bot]
daab2d7075 chore(deps): Update dependency bin-up and is-fork-pr (#5321)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
2019-10-09 17:56:18 -04:00
Chris Breiding
6ba8d7cc93 Electron v5.0.10 (#4720)
* fix specs

* use debugger protocol for cookie handling in electron

* use latest gulp

* use rimraf instead of gulp-clean

* use electron 3.1.8 and node 10.2.1

* use gulp 4 in packages/static

* fix sendCommandAsync, log Schema.getDomains on CDP connect

* autofill e2e test name [skip ci]

* electron@5.0.7, see what new failures exist

* --no-sandbox for launching Electron

* update cookies logic for electron

* node 12

* update snapshot for new node

* update error message for new node

* stub sendCommandAsync

* only connect to socket if path has been replaced, fixes #4776

* update node-sass to support node 12

* skip wacky socket tests for now

* snapshot

* fix run_plugins_spec snapshot, don't include stack trace

* use --no-sandbox on linux to run as root

* allow sendCommandAsync to resolve

* use euid for root check

* log domains even if undefined

* don't worry about ending 1xx responses immediately anymore

* use --max-http-header-size, change max size from 8kb to 1mb, fix #76

* do not send 502 on failed websocket, just send back ECONNRESET

* update websocket spec port to not collide with other test

* update outdated expect

* Revert "only connect to socket if path has been replaced, fixes #4776"

This reverts commit f179eda5ca.

* update gulp in root

* update https-proxy unit tests

* update network spec to properly close server

* update reporter spec

* update https-proxy-agent to fix node 10.10.0 change

discussion: https://github.com/nodejs/node/issues/24474\#issuecomment-511963799

* only pass --max-http-header-size on node >=12

* use own server-destroy implementation that supports secureConnect events

* oops

* update socket_spec

* electron 6.0.0

* console.table introduced in node 10

* change browserify entry to init.js

* handle edge case when no response body

* console.table added in node 10

* do not exit app when all BrowserWindows are closed

* update e2e snapshots

* value may not be null

* update plugins spec

* correct cookie expiry, use browser.getversion for CDP version check

* fix snapshotting for require stacks

* reorder cookies in spec

* warn when depreated electron callback apis are used

* only report 1 plugin error per process

* cleanup

* node 12.4.0, cypress/browsers:node12.4.0-chrome76 docker image

* update shell.openExternal to promisified

* update dialog.showOpenDialog to promisified

* update webContents.session.setProxy to promisified

* updating native dependencies since we don't need ancient node ABI support anymore

* WIP: switch cookies to simpler, jar-less approach

* WIP: switch cookies to simpler, jar-less approach

* making tests pass

* improve cookie filtering logic

* Remove unneeded Promise.try

* filter what makes it to the extension

* properly re-set superdomain cookies on cross-origin cy.visit

* allow comma-separated list of e2e tests

* sort cookies in order of expiration date, ascending

* updating tests, cleanup

* update tests

* version electron as a devDependency, electron@6.0.1

* cleanup, remove old automation

* cleanup, remove old automation

* bump chokidar to fix win10 + node12 issue

was seeing this on windows:
https://github.com/nuxt/nuxt.js/issues/6035

fixed with version bump

* enable now-supported quit role, re-enable old tests

* don't need that arg there

* remove last deprecated callback electron invocations

* Delete cypress.json

* responding to PR feedback

* cleanup

* invoke

* use 'quit' role

* Use new appMenu role for Cypress menu on mac

* electron@6.0.2

* electron@6.0.3

* remove domain: cookie.domain and see what happens

* remove setErrorHandler

* Revert "remove domain: cookie.domain and see what happens"

This reverts commit 49e916896d.

* add unit tests for cookies

* ci

* fix project-content css

* electron@6.0.4

* fix specs_list test

* electron@6.0.7

* some cleanup

* electron@6.0.9

* Update 8_reporters_spec.coffee.js

* electron@5.0.10 - Chromium 73, Node 12

* cli: fix the STDIN pipe on Windows (#5045)

* cli: pipe stdin

* uggh, here is the actual change

* update cli unit tests

* add unit test

* more permissive check for json to include application/vnd.api+j… (#5166)

* more permissive check for json to include

* add json test for content-type application/vnd.api+json

* cruder solution passes e2e tests locally, so let's go with that

* Remove 'charset' from content-type before checking if JSON

* fix eslint for fixture specs (#5176)

* update eslint to lint files within 'fixtures' in support files

- ignore some edge cases like jquery, jsx and obvious js files we wrote
with broken code

* Fixes from eslint to 'fixtures' files

* Catch env variable with reserved name CYPRESS_ENV 1621 (#1626)

* server: check CYPRESS_ENV variable when merging configs

* catch invalid CYPRESS_ENV value in CLI, close #1621

* linting

* sanitize platform in test snapshot

* linting

* update error message text

* add missing comma

* fix finally merge in JS code

* pass CLI linter

* fix log reference, should be debug

* use correct sinon reference

* update message, show first part in red

* update error message text

* Addresses #2953 (#5174)

* Addresses #2953

* Added proper test for new error message

* Didn't realize it ran this test as well, whoops

* Implementing changes as suggested by @jennifer-shehane

* Fixing tests and error output. Moved the checks to the start of the get command to ensure we always catch improper options

* Removing issue test since the querying spec covers it

* Using coffescript isArray check

* depromisify things that were promisified b/t electron 5 <=> 6

Revert "update shell.openExternal to promisified"

This reverts commit 8b6460d015.

Revert "update dialog.showOpenDialog to promisified"

This reverts commit 5f178b075b.

Revert "update webContents.session.setProxy to promisified"

This reverts commit 727df3a4e5.

* node12.4.0-chrome76 => node12.0.0-chrome75

* fix tests for electron downgrade

* node12.0.0-chrome75 => node12.0.0-chrome73


Co-authored-by: Zach Bloomquist <github@chary.us>
Co-authored-by: Brian Mann <brian.mann86@gmail.com>
2019-09-24 14:35:24 -04:00
Brian Mann
680a2fccd2 gitignore packages/example/cypress (#4862)
- this prevents a situation where after running npm install and then
npm run build, the diff of cypress shows up as changes in git
2019-07-29 14:35:52 -04:00
Gleb Bahmutov
3111ae1027 updated example spec files 2019-07-29 11:51:51 -04:00
renovate[bot]
fa3bb9344b chore(deps): update dependency cypress-example-kitchensink to v… (#4849)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2019-07-29 12:47:51 +06:30
renovate[bot]
879288942c chore(deps): update dependency gulp to version .x 🌟 (major) (#4816)
* chore(deps): update gulp to 4.0.2 🌟

* remove unused gulp-typescript package

* rename gulpDebug dep for consistency

* remove run-sequence dep - replace with new gulp.sequence and gulp.parallel

* pass new sourcemaps arg through to gulp-coffee

* fix favicon task that I broke. 😬

* fix extension gulpfile - needed those returns :P

- also update vinyl-source-stream to avoid vinyl errors during gulp
tasks

* Fix example gulpfile to allow empty sources


Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
2019-07-26 14:02:44 +06:30
Ben Kucera
7857dac907 [internal] use webpack for builds (#4103)
* add webpack

* fix build proccess

* fix reporter build and test

* fix reporter test .css

* use apply(window, ...) since strict mode in webpack

* temp 05/13/19 [skip ci] resolver

* temp 05/14/19 [skip ci] webpack w/ root level symlinks

* run ci

* minor fixes

* fix link-packages script

* hopefully fix mac build

* re-add build-prod script in reporter

* fix typo in link-packages script

* fix lint errors

* fix node-version

* namespace files in webpack

* bust circle ci cache

* bust circle ci cache 2

* remove deps

* bust circle ci cache 3

* bust circle ci cache (launcher)

* ok circleci, you win. I will change all the cache keys

* update snapshot: not sure why added stack lines

* add mocha to reporter devDeps

* separate build file for reporter

* remove unneeded code

* node-sass-globbing use relative imports for appveyor

* add debugging for appveyor failure

* node-sass-globbing force unix paths for windows

* node-sass-globbing force unix paths for windows 2

* node-sass-globbing force unix paths for windows in runner

* run ci

* add checksum to packages caches

* bust circle ci cache (sub packages)

* testing code for appveyor env vars

* fix appveyor env vars for branchname
06-00000026

* fix binary build script, smoke test catch errors, include pkg mains
03-0000000a

* build binary in appveyor for this branch
07-00000047

* fix binary unit test, revert mocha upgrade in root, fix e2e specs
02-00000004

* statically replace symlinks at build time, add test, remove proxy packages code
03-00000002

* oops, update snapshot
04-00000049

* bump circle packages cache
02-00000005

* fix path.win32 on windows, add test for it
00-00000058

* for some reason packages ci cache is not including `rebuild-node-sass` in node_modules/.bin, and npm does not recreate .bin links if a node_modules folder already exists. so Im bumping all the npm caches, again
00-00000003

* emit during webpack-dev-server watch mode
02-00000020

* try revert circle.yml
02-0000002f

* try revert everything
03-0000003b

* Revert "try revert everything"

This reverts commit be125b88ff.

* no circle cache now
02-00000013

* remove logging in reporter build
06-00002a41

* Merge branch develop of github.com:cypress-io/cypress into webpack-runner
02-0000089b

* make build scripts DRY
04-00000a7f

* fix missing fonts, better watch mode
06-00003053

* use webpack --progress in watch mode
00-00000582

* move webpack config files into dedicated package
05-000023bf

* build desktop-gui with webpack, use relative scss url()s
03-00001801

* add timings info, fix configs
07-00005582

* enable sourcemaps "eval", fix desktopgui test
04-00005a08

* try 2: fix desktopgui test
01-0000058e

* fix lint
03-00000b10

* fix snapshot (very minor do not worry)
04-000014a4

* code cleanup
00-00007a4f

* try disable devtool
07-0000a97a

* remove cypress:// devtool sourceURL mapping to prevent cross-domain on electron
00-000056e4

* re-enable eval sourcemap in dev and prod
06-000051e6

* code cleanup
02-000056ae

* refactor node-jsdom setup for tests
00-000041a2

* re-enable sourceURL protocol, enable crossorigin script on runner to appease electron

* smoke tests for static assets in binary build script, disable sourceURL protocol mapping, more consistent dev/prod webpack builds

* use cross-env for desktop-gui

* desktop-dui: expect development NODE_ENV during build script (as has been in past)

* fix build script unit test

* fix build script unit test for real

* fix sourcemaps for dev/prod, add comments, add build static asset tests

* add cross-env to runner devDeps

* fix unit tests for build binary script

* fix whitespace

* add postcss autoprefixer + staticAsset tets

* add eslintrc to scripts/unit

* tabs -> spaces

* tabs -> spaces

* fix binary/util scripts

* fix testStaticAssets in build script

* fix extension requiring node socket

* fix unit-test for binary build script

* fix unit test for runner/reporter

* disable sourcemaps/eval in production

* fix disable sourcemaps in prod code

* resort jsons w/ new lint

* linting fixes

* runner/package.json add back rebuild-node-sass

* no circle cache again

* fix circle.yml

* try appveyor again

* fix binary build: remove "timers" from server/package.json.files

* fix testStaticAssets false-positive sourcemap detection (due to diff package)

* fix 2 failing e2e tests (run in chrome for now)
use build-prod scripts in binary-build script
add build-prod scripts to all packages

* a string is no regex

* correct merge: global_mode_spec

* fix all snapshot screenshot dimensions

* fix all snapshot screenshot dimensions (again)

* fix testStaticAssets development -> production

* Revert "fix all snapshot screenshot dimensions (again)"

This reverts commit d9022ef950.

* Revert "fix all snapshot screenshot dimensions"

This reverts commit 4f7628a051.

* helpers/e2e: only normalize screenshot dimensions NOT on electron

* post-task: windows build don't build on this branch

* post-task: un-bump circleci cache

* post-task: bump circleci cache packages/node_modules to v9

* cleanup: fix eol-newline, remove unneeded eslintrc

* bump circleci cache

* run rebuild-node-sass inside webpack build config

* bump circleci cache

* use cache version from env variable on circle

* use custom command to save cache for most packages

* add custom restore cache command

* restore 2 packages separately

* allow passing package path to restore

* pass explicit path to package to restore

* add restore-caches and save-caches

* print name for restoring cache commands

* print name when storing cache

* print .bin when saving cache

* fix path to .bin

* print launcher .bin

* show .bin for desktop-gui

* print bins

* update npm version

* update npm version - try 2

* update npm version - try 3

* remove circleci debugging print commands

* Revert "remove circleci debugging print commands"

This reverts commit 248966efcd.

* add TERM=xterm to Circle

* Revert "Revert "remove circleci debugging print commands""

This reverts commit cf77273b10.

* Revert "add TERM=xterm to Circle"

This reverts commit dc77c94c57.

* remove --serial arg from run all scripts

* add web-config package to cache

* simplify circleci build job

* circleci: try rmrf node_modules/@packages before install

* appveyor: try removing --serial from install script

* Revert "appveyor: try removing --serial from install script"

This reverts commit 7ef619ff30.

* use appveyor from develop

* use preinstall removing subpackage symlinks
fix webpack config typescript errors
fix path to rebuild-node-sass in packages/web-config
assert replace minimum number of symlink requires

* test binary build [build binary]

* fix transformRequires code [build binary]
2019-07-18 12:11:27 -04:00
renovate[bot]
dbc0db81fe chore(deps): Update dependency cypress-example-kitchensink to v… (#4721)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2019-07-16 12:20:37 +06:30
Ben Kucera
fbd523615e [internal] Lint typescript, json, new eslint rules (#4449)
* temp 07/01/19 [skip ci] main lint files

* use lint-staged scripts

* fix all auto-fixable eslint errors

* manually fix lint issues in files

* temp 07/01/19 [skip ci]

* bump eslint plugin versions, update circle.yml

* [lint fix] remaining js files

* update vscode/settings.json

* add back stop-only

* use stop-only for linting .onlys

* fix verify_spec, build_spec

* update json plugin

* relint & apply corrections

* fix appveyor.yml not cleansing env vars (very bad)

* dont echo commit message in appveyor script

* retry build &

* re-add & upgrade lint-staged

* update contributing docs

* only let stop-only catch staged changes
2019-07-12 13:59:44 -04:00
renovate[bot]
bd9233f192 chore(deps): update dependency cypress-example-kitchensink to v… (#4688)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2019-07-10 12:07:42 +06:30
Brian Mann
17520bd4b2 remove dead code [skip ci] 2019-06-27 17:09:18 -04:00
renovate[bot]
2dc1ed6a93 chore(deps): Update dependency cypress-example-kitchensink to version 1.5.4 🌟 (#4378)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2019-06-04 12:49:27 +06:30
Gleb Bahmutov
28c75d0bcc upgrade kitchensink to get rid of http-server dependency (#4107) 2019-05-02 17:04:33 -04:00
Gleb Bahmutov
b96066a396 chore: linting example spec files 2019-05-01 10:18:33 -04:00
renovate[bot]
06fa095961 chore(deps): update dependency cypress-example-kitchensink to version 1.5.2 🌟 (#4079)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2019-05-01 09:11:10 +06:30
renovate[bot]
9372bc3f67 chore(deps): update dependency gulp-rev-all to version 0.9.8 🌟 (#4061)
* chore(deps): update gulp-rev-all to 0.9.8 🌟

* update rev-all usage to match new 0.9 API


Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
2019-04-30 15:56:55 +06:30
renovate[bot]
875186ed36 chore(deps): update dependency bin-up to version 1.2.0 🌟 (#4047)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2019-04-29 16:11:09 +06:30