vscode/test/unit
Robo 3d0d50caf8
chore: update to electron 9-x-y (#102011)
* chore: bump electron@9.0.5

* remove exploration config

* fix compile error

* fix compile error

* crashReporter has to be called only once before app ready

* chore: bump electron@9.1.0

* enable LayoutNG

* fix cron schedule

* allow disabling appcenter crash reporting

* set additional crash reporting parameters

* start crashreporter for child process on linux

* setup crash parameters only once

* remove unused crashReporter.guid

* address review feedback

* reuse argv.json for storing crash reporter id

* remove trailing commas

* update localized name

* update argv based on telemetry optout

* update initial config based on setting

* fix conditional errors

* remove telemetry.enableCrashReporter

* move default crash reporter config to electron-main

* update comment for ext host crash reporting

* set default value for configuration

* some 💄 changes

* address review feedback

* do not use ES7 features in JS yet

* add app.focus({ steal: true }) usage

Co-authored-by: Benjamin Pasero <benjpas@microsoft.com>
2020-07-21 09:39:34 +02:00
..
browser Move read and write logic from nativeTextFileService to textFileService for #79275 (#100804) 2020-07-03 15:55:44 +02:00
electron chore: update to electron 9-x-y (#102011) 2020-07-21 09:39:34 +02:00
node Move coverage.js into test/unit 2020-02-07 12:37:26 +01:00
assert.js Move assert.js into test/unit 2020-02-07 12:32:06 +01:00
coverage.js Move coverage.js into test/unit 2020-02-07 12:37:26 +01:00
README.md added missing word in the readme (#95043) 2020-04-12 08:43:50 -07:00

Unit Tests

Run (inside Electron)

./scripts/test.[sh|bat]

All unit tests are run inside a electron-browser environment which access to DOM and Nodejs api. This is the closest to the environment in which VS Code itself ships. Notes:

  • use the --debug to see an electron window with dev tools which allows for debugging
  • to run only a subset of tests use the --run or --glob options

For instance, ./scripts/test.sh --debug --glob **/extHost*.test.js runs all tests from extHost-files and enables you to debug them.

Run (inside browser)

yarn test-browser --browser webkit --browser chromium

Unit tests from layers common and browser are run inside chromium, webkit, and (soonish) firefox (using playwright). This complements our electron-based unit test runner and adds more coverage of supported platforms. Notes:

  • these tests are part of the continuous build, that means you might have test failures that only happen with webkit on windows or chromium on linux
  • you can run these tests locally via yarn test-browser --browser chromium --browser webkit
  • to debug, open <vscode>/test/unit/browser/renderer.html inside a browser and use the ?m=<amd_module>-query to specify what AMD module to load, e.g file:///Users/jrieken/Code/vscode/test/unit/browser/renderer.html?m=vs/base/test/common/strings.test runs all tests from strings.test.ts
  • to run only a subset of tests use the --run or --glob options

Run (with node)

yarn run mocha --run src/vs/editor/test/browser/controller/cursor.test.ts

Coverage

The following command will create a coverage folder at the root of the workspace:

OS X and Linux

./scripts/test.sh --coverage

Windows

scripts\test --coverage