Releases: Andorbal/what-the-test
Releases · Andorbal/what-the-test
Release list
v0.4.0
Added
- F# support: xUnit, NUnit, MSTest and FsCheck tests (attributed
let
bindings and members, including``double backtick``names) and
ExpectotestList/testCase/testdeclarations. Uses Ionide's
language server; tests run through Ionide's or any other .NET test controller.
New settingwhatTheTest.fsharp.additionalTestAttributes. - Go support:
TestXxx,BenchmarkXxx,FuzzXxxandExampleXxx
functions,t.Runsubtests with literal names, and testify suite methods
(withSetupTestand friends as setup). Uses gopls; tests run through the
Go extension. A subtest that hasn't run yet (so has no test item) runs
through its parent test. - Java support: JUnit 5 (including
@Nestedclasses), JUnit 4, TestNG and
jqwik tests, with@BeforeEachand friends and test class constructors as
setup. Uses the Java extension's language server; tests run through the
Test Runner for Java. New settingwhatTheTest.java.additionalTestAnnotations. - Python support: pytest
test*functions andTest*classes, unittest
TestCaseclasses, their setup methods, autouse fixtures and module-level
setup. Regular pytest fixtures are followed to the tests that request them.
Uses Pylance; tests run through the Python extension. - The Tests Covering Line view keeps its list when you go into one of the
listed tests, and selects that test, so you can go through them one by one.
"Run All" and "Debug All" still run the whole list. - Pin button in the Tests Covering Line view (and
Pin Tests Covering Line
/Unpin Tests Covering Linecommands) to stop the list from following the cursor. Run Tests Covering Changes,Debug Tests Covering Changesand
Show Tests Covering Changes: find the tests that reach code changed since
the last commit (including unsaved edits) and run them together. Also in the
Source Control view's…menu.whatTheTest.runTestsOnSavesetting (off by default): after each save, run
the tests covering the lines that changed.- Keyboard shortcuts, next to VS Code's own test shortcuts:
Ctrl+; Wruns
the tests covering the line (Ctrl+; Ctrl+Wdebugs them,Ctrl+; Shift+W
lists them), andCtrl+; G/Ctrl+; Ctrl+G/Ctrl+; Shift+Gdo the same
for the tests covering your changes.Cmdinstead ofCtrlon macOS. - An extension icon.
Changed
- Calls through interfaces and base classes are followed: the callers of the
interface and base-class members a method implements or overrides count as
its callers (using the language server's type hierarchy). In C#, these tests
used to be found only when nothing called the method directly.
Fixed
- The view's Refresh button now discards cached results, so it picks up
tests the language server hadn't indexed yet.
v0.2.2
Changed
- Fixed publisher in integration tests
v0.2.0
Added
- Versioning strategy and release process (RELEASING.md).
- Release workflow: pushing a
v*tag tests the extension, packages a.vsix
and publishes it as a GitHub Release. - CI uploads an installable
.vsixfor every push and pull request.
Changed
- A line inside a test (or a setup region such as
beforeEach) no longer lists
that test as covering it. The status bar count is hidden there, and the Tests
Covering Line view names the test the line belongs to. The exported
findTestsForLinereports that test asenclosingTest.
Fixed
- TypeScript/JavaScript: when several tests in one file call the code, all of
them are found, not only the first. - Messages about a single test say "1 test covers line …" instead of "1 test cover line …".
v0.1.0
Added
- Shows how many tests reach the current line (end-of-line hint and status bar).
- "Tests Covering Line" view in the Testing side bar and a quick pick to open,
run or debug any covering test, or run/debug all of them. - Runs tests through VS Code's Testing API (
vscode.runTestsById), falling back
to "Run Test at Cursor" for test controllers with opaque IDs. - C#/.NET support (xUnit, NUnit, MSTest, TUnit) and TypeScript/JavaScript support
(Jest, Vitest, Mocha, Jasmine,node:test, Playwright). - Pluggable language adapters, including registration from other extensions.