Files
azuredatastudio/test/unit/README.md
Charles Gagnon a595fb8fd1 Inline source maps in dev build (#18970)
* Inline source maps in dev build

* Update readme

* correct command

* Use env var

* Update location
2022-04-07 16:39:08 -07:00

46 lines
2.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 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
- use `yarn watch` to automatically compile changes
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 --ui tdd --run src/vs/editor/test/browser/controller/cursor.test.ts
## Coverage
The following command will create a `coverage` folder in the `.build` folder at the root of the workspace:
**OS X and Linux**
./scripts/test.sh --coverage
**Windows**
.\scripts\test.bat --coverage
NOTE: When running locally the coverage will be generated for the .js files because by default the sourcemaps
are inlined. To fix this set the environment variable `SQL_NO_INLINE_SOURCEMAP` to `1`, re-run the
compile/watch task and then re-run the test script with coverage enabled.