Skip to content

Latest commit

 

History

History
1724 lines (925 loc) · 40.1 KB

CHANGELOG.md

File metadata and controls

1724 lines (925 loc) · 40.1 KB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.

[Unreleased]

[4.12.0] - 2024-03-29

Added

  • testGrouping.groupByLabel. ex.: "testGrouping": { "groupByLabel": { "label": "Release", "groupByExecutable": {}}}

[4.11.0] - 2024-03-09

Changed

  • from now mergeByLabel configuration only takes env in account. (related)
  • Catch2 parser improvements (related)

[4.10.0] - 2024-03-05

Added/Changed/Removed

  • files.watcherExclude is not applied by default anymore: reverts v4.8.0.
  • testMate.test.advancedExecutables -> exclude: Here one can specify a vscode setting to be applied for exclusion.

[4.9.0] - 2024-02-21

Added

  • testMate.test.advancedExecutables - debug.configTemplate. (req)

[4.8.3] - 2024-02-07

Added

  • testMate.test.advancedExecutables - executableSuffixToInclude for custom filtering.

[4.8.2] - 2024-02-07

Fixed

  • issue related to files.watcherExclude. It is not working in v4.8.1.

[4.8.1] - 2024-02-07

Improved logging

[4.8.0] - 2023-12-29

Changed

  • files matching files.watcherExclude will be ignored. issue
  • increased max test file count from 10,000 to 100,000.
  • refactored configuration change event. Not relevant to user but wort to mention.

[4.7.0] - 2023-12-16

Added

  • testMate.test.advancedExecutables - executableCloning: (experimental) If enabled it creates a copy of the test executable before listing or running the tests. NOTE: discovery (--help) still uses the original file.

[4.6.3] - 2023-11-17

Fixed

  • issue related to debugging

[4.6.2] - 2023-10-27

[4.6.1] - 2023-10-19

Changed

  • using relative path at test output. users can use Cmd+click to navigate.

Fixed

  • issue preventing to cancel continuous runs: link

[4.6.0] - 2023-09-11

Implemented new vscode veature: invalidate result.

[4.5.2] - 2023-08-25

doctest improvements

[4.5.1] - 2023-07-26

Fixed

  • regression issue related to doctest

[4.5.0] - 2023-07-23

Changed

  • doctest default grouping now uses tags which is based on suites related

Fixed

  • issue that test with same name but different suite are merged in case of doctest related

[4.4.4] - 2023-06-07

Fixed

  • issue related to autorun feature.

[4.4.3] - 2023-06-06

Fixed

  • issue related to autorun feature. It was not picking up some level of tests. related.

[4.4.2] - 2023-04-28

Improved .env file parser

[4.4.1] - 2023-04-05

Added

  • support 'multi-environment' tests feature

[4.4.0] - 2023-03-31

Added

[4.3.12] - 2023-03-22

[4.3.11] - 2023-03-22

[4.3.10] - 2022-12-26

Fixed

  • issue related to path resolution. Especially Catch2 related on windows but it also effects source file mapping. details

[4.3.9] - 2022-12-25

[4.3.8] - 2022-12-25

Fixed

  • issue related to path resolution. Especially Catch2 related on windows but it also effects source file mapping. details

[4.3.7] - 2022-12-01

[4.3.6] - 2022-12-01

[4.3.5] - 2022-11-28

[4.3.4] - 2022-10-28

[4.3.3] - 2022-10-22

[4.3.2] - 2022-10-22

Fixed

  • an issue which prevented to unset variables using null value in "testMate.cpp.debug.setEnv"

[4.3.1] - 2022-10-15

Added

  • recursive variable resolution up to 3 levels

[4.3.0] - 2022-08-05

Added

  • testMate.cpp.discovery.loadOnStartup

[4.2.5] - 2022-07-30

Fixed broken version.

[4.2.4] - 2022-07-29

! BROKEN !

[4.2.3] - 2022-07-22

Added

  • new variable resolution rule: ${config:<config name>} where <config name> can be anything like

[4.2.2] - 2022-05-22

Added

  • improved progress bar and status bar message

[4.2.1] - 2022-05-21

Added

  • show more progress in case of reloading workspace.

[4.2.0] - 2022-05-19

Added

  • refresh button to reload the all the tests

[4.1.1] - 2022-04-26

Added

  • experimental basic support for GUnit framework.

[4.1.0] - 2022-04-26

Added

  • mergeByLabel to groupByExecutable. If it is set to true then groups having the same name won't be distingueshed and all their childern will go under the 1 node. Solves this issue.

Fixed

  • an issue related to Catch2 v3 preview 5
  • an issue related to empty .env file parsing.

[4.0.26] - 2022-02-22

Changed

  • improvements to the built-in default search pattern for waitForBuildProcess
  • waitForBuildProcess can now take a string (custom regex search pattern to match processes), see issue328
  • changing the testMate.cpp.discovery.runtimeLimit option used to take effect only after reloading the window; now it takes effect immediately

[4.0.25] - 2022-02-05

Fixed

[4.0.24] - 2022-02-01

Changed

  • advancedExecutables.[dependsOn] property triggers the reolad of all related executables. (related)

[4.0.23] - 2022-02-01

Changed

  • Removed location added to executabe test item node. issue

[4.0.22] - 2022-01-09

Fixed

  • missing subtest name in output window

[4.0.21] - 2022-01-09

Added

  • enable run and debug option for doctest subtest

Fixed

  • issue which repeated the label as description for SubTests

[4.0.20] - 2022-01-08

Added

  • experimental advanced tag support

[4.0.19] - 2022-01-08

Added

  • debug.configTemplate can now point to a named item in launch.json.

[4.0.18] - 2022-01-08

Added

  • enable run and debug option for Catch2 sections
  • improved sourceFileMap resolution

[4.0.17] - 2021-12-27

Changed

  • Test groups like executable, suite and source (groupByExecutable, groupBySource, groupByTags) will have navigation set to their first found item. This features does not intended to be bullet proof but for the majority of the cases it might provide a useful link. Feel free to provide feedback here.

[4.0.16] - 2021-12-17

Changed

  • some Catch2 related issue which prevented handling [!shoudfail] and [!mayfail]

[4.0.15] - 2021-12-14

Fixed

  • some issue which messe with the test's path

[4.0.14] - 2021-12-11

Fixed

  • various issues

[4.0.13] - 2021-12-11

Fixed

  • various issues

[4.0.12] - 2021-12-10

Added

  • partial support for doctest subcase evaluation (if there is some modiffier it won't do the evaluation)
  • support new doctest version: "skipped" and "test_case_success" xml attributes

[4.0.11] - 2021-12-07

Fixed

  • hopefully fixes the "infinite test loading" issue

[4.0.10] - 2021-12-04

Changed

  • streamed load of tests

Fixed

  • issue which caused the test message's location not to be resolved.
  • issue preventing proper load of gtest tests

[4.0.9] - 2021-12-02

Fixed

  • an issue that testMate.cpp.test.advancedExecutables framework specific settigns were only picking catch2

[4.0.8] - 2021-12-01

Added

  • envFile now supports .env format too. (determines from the end of the filename)
  • removing missing SubCases / Sections

[4.0.7] - 2021-11-27

Fixed

  • running tasks feature with limitation: test list of executables won't be reloaded so in case the task results in a new test then that test won't be run.

[4.0.6] - 2021-11-25

  • Improved Output formatting and colorization

Fixed

  • advancedExecutable->env variable usage has been fixed

[4.0.5] - 2021-11-24

[4.0.4] - 2021-11-23

Fixed

  • navigation to source file related issue (again)

[4.0.3] - 2021-11-23

  • Improved Output formatting and colorization

Fixed

  • navigation to source file related issue

[4.0.2] - 2021-11-22

Added

  • basic support of terminal.integrated.env.*. Limitation: changes of the config are not detected.

[4.0.1] - 2021-11-22

Changed

  • Improved Output formatting and colorization

[4.0.0] - 2021-11-22

Replaced Test Explorer with native API.

[3.6.33] - 2021-10-20

Added

  • doctest: supporting testMate.cpp.debug.breakOnFailure.

Fixed

  • issue regarding to doctest's test duration parsing

[3.6.32] - 2021-10-01

Added

  • testMate.cpp.test.advancedExecutables -> fsWatcher option to circumvent limitations caused by files.watcherExclude.
  • testMate.cpp.debug.configTemplate -> testMate.cpp.debug.setEnv (Record<string,string>)

[3.6.31] - 2021-09-10

Added / Fixed

  • doctest: supporting may_fail, should_fail, timeout and expected_failures modifiers.

Changed

  • activation event is onStartupFinished from now. This mean stat the extension will be activated every timethe vscode is opened. Hopefully it wont affect the users and the reasoning behind it is that after migrationg to the vscode native testing api it would happen anyway.

[3.6.30] - 2021-08-31

Added

  • activation event for testing.__ vscode commands and view workbench.view.testing With this "testExplorer.useNativeTesting": true has some support.

[3.6.29] - 2021-08-29

Fixed

  • some GoogleTest and GoogleBenchmark related error handling issue

[3.6.28] - 2021-08-29

Using GitHub actions for releases instead of TravisCI and AppVeyor

[3.6.27] - 2021-08-09

NPM update Moving to travis-ci.com Minified code

[3.6.26] - 2021-04-27

Fixed

  • regression issue related to debug.configTemplate

[3.6.25] - 2021-04-23

Fixed

  • lot of issues regarding to debug.configTemplate't platfrom specific resolution.

[3.6.24] - 2021-04-04

Improved documentation NPM update

[3.6.23] - 2021-03-07

Improved documentation NPM update

Fixed

  • an issue related to doctest test-grouping

[3.6.22] - 2021-02-22

Fixed

  • an issue wich prevented the proper splitting of the test names to short-enough-subsets

[3.6.21] - 2021-02-21

Changed

  • DOCTest output reporter in case of debugging has changed xml -> console

[3.6.20] - 2021-01-27

[3.6.19] - 2020-12-23

Nothing really, just typo fixes.

[3.6.18] - 2020-12-17

Added

  • indexing option for ${workspaceFolder}: For the last part of the variable try ${workspaceFolder[-1]}

Changed

  • skipped tests will not be run when "Enable autorun" is used.

Deprecated

  • ${workspaceDirectory}. Use ${workspaceFolder} instead.

[3.6.17] - 2020-12-14

Fixed

  • debug extension recognition

[3.6.16] - 2020-12-14

Fixed

  • an issue where Catch2 v3 tests with tags were parsed incorrectly

[3.6.15] - 2020-12-10

Fixed

  • an issue which stopped the debut button working

[3.6.14] - 2020-12-08

Improved logging.

[3.6.13] - 2020-12-06

Added

  • testMate.cpp.test.advancedExecutables -> waitForBuildProcess: (experimental) Prevents the extension of auto-reloading. With this linking failure might can be avoided. Regex: (cmake|make|ninja|cl|c++|ld|clang|gcc|g++|link|icc|armcc|armclang)

[3.6.12] - 2020-12-05

Changed BACK the way how the testMate.cpp.debug.configTemplate is resolved.

[3.6.11] - 2020-12-03

Fixed

[3.6.10] - 2020-12-02

Logging related changes and NPM update.

[3.6.9] - 2020-11-29

Changed the way how the testMate.cpp.debug.configTemplate is resolved. Hopefully better than it was.

[3.6.8] - 2020-11-29

Fixed

  • env variable passing to ms-vscode.cpptools

[3.6.7] - 2020-11-21

Improved stability and performance.

Fixed

  • a bug related to variable flat resolution. Ex.: ${argsFlat}

[3.6.5] - 2020-11-16

Added

  • populate sourceFileMap to debug.ConfigTemplate with variable ${sourceFileMapObj}.
  • improved error feedback

[3.6.4] - 2020-11-15

Small fixes. Nothing interesting.

[3.6.3] - 2020-11-14

Performance improvements related to test listing.

[3.6.2] - 2020-11-11

npm update

[3.6.1] - 2020-11-01

Added

  • ${argsStr} and ${argsFlat} for executionWrapper.

[3.6.0] - 2020-10-31

Added

  • vscode command resolution ${command:<...>}: From now variables like ${command:cmake.buildDirectory} will be resolved.

Fixed

  • source file resolution

Removed

  • ${if(isWin)...}
  • ${osEnvSep}. Use ${osPathEnvSep} instead.

[3.5.3] - 2020-10-30

Fixed

  • resolution of foo ${match_lowercased}

[3.5.2] - 2020-10-30

Added

  • for testGrouping.groupByRegex and testGrouping.groupByTagRegex added ${match_lowercased} and ${match_upperfirst} as alternative of ${match}. Note: regex can contain one grouping (...).

[3.5.1] - 2020-10-29

Added

  • groupByTagRegex
  • sourceFileMap

[3.5.0] - 2020-10-25

Added

  • Support for Google Benchmark: One can set a limit which will report a test/benchmark failure in case of the cpu_time exceeds it: testMate.cpp.test.advancedExecutables -> gbenchmark -> failIfExceedsLimitNs.
  • testMate.cpp.test.advancedExecutables -> markAsSkipped: It can be useful espacially in case of GoogleBenchmark.

Removed

  • testMate.cpp.discovery.retireDebounceLimit

[3.4.4] - 2020-10-23

Performance improvements.

[3.4.3] - 2020-10-16

Fixed

  • prependTestRunningArgs was ignored in case of debugging.

[3.4.2] - 2020-10-02

Added

  • Workaround for , char in doctest's test-name.

[3.4.1] - 2020-08-21

Added

  • Handling more gtest cases

[3.4.0] - 2020-07-27

Added

  • (experimental) testMate.advancedExecutables.executionWrapper: Probably your best option if your executables need some initinalization of enviroment.

[3.3.0] - 2020-07-27

Added

  • testMate.advancedExecutables.envFile: Probably your best option if your executables need some initinalization of enviroment.

[3.2.12] - 2020-07-26

Fixed

  • Catch2 tag parsing

[3.2.11] - 2020-07-24

Fixed

  • Potential Catch2 xml parsing issue

Removed

  • Migration from old version is removed. (If one still want it, they can downgrade for temporarily.)

[3.2.10] - 2020-07-18

Added

Fixed

  • file link recognition for workaround

[3.2.9] - 2020-07-11

  • npm update
  • Logging improvemets
  • Passing serializeble data for Live Share

[3.2.8] - 2020-06-26

Added

  • Recognising regular links to workaround this issue.

[3.2.7] - 2020-06-26

  • This version tries to limit the coloring to fix an issue.
  • Improved link detection

[3.2.6] - 2020-06-21

Fixed

  • Catch2 v3 preview fixes

[3.2.5] - 2020-05-30

Minor improvmenets

[3.2.4] - 2020-05-20

Logging improvements

[3.2.3] - 2020-05-19

Stability improvements

[3.2.2] - 2020-05-17

Fixed

  • Error message in case of attempt of debugging suites.

[3.2.1] - 2020-05-16

Added

  • Support for Catch2 v3.x
  • Option for colored debug output enableOutputColouring

[3.2.0] - 2020-05-15

Added

  • Scoping for testMate.test.advancedExecutables. Example:
    "testMate.test.advancedExecutables": [{
      "pattern": "<default pattern>",
      "darwin": { "pattern":"<value on mac>" },
      "win32": { "pattern":"<value on win>" },
      "linux": { "pattern":"<value on linux>" },
      ....
    }]
    

[3.1.3] - 2020-05-15

Added

  • Now tests can be added to the run-queue even if there are some tests running already. (UI experience isn't the best though.)

[3.1.2] - 2020-05-14

  • Absolute patterns in Windows can now point to a different volume than the workspace folder.

[3.1.1] - 2020-05-14

Added

  • discovery.strictPattern

[3.1.0] - 2020-05-13

Lot of changes under the hood to make your life easier.

[3.0.4] - 2020-05-10

Added

  • Support for custom GTEST_FLAG_PREFIX. It is recognised automatically by running the executable with --help.
  • Support for running vscode tasks before tests. (Experimental)
  • Support for strictPattern: Test loading will fail if one of the matched executables cannot be loaded.

[3.0.3] - 2020-05-07

Changed

  • Cache file naming convention has changed. Relates: discovery.testListCaching

[3.0.2] - 2020-05-06

Logging improvmenets

[3.0.1] - 2020-05-05

"Proofreading"

[3.0.0] - 2020-05-04

It's a big day! The extension was finally renamed to C++ TestMate. (Finally, I mean I've been planning this since a long time ago in a galaxy far, far away....) Lots of small tweaks were added. (Please be patient and report issuess. ^^)

May the 4th be with you 🖖 (Yes, I know.. ^^)

Changed

  • All the configs has moved and renamed. ⚠ (Merge logic is implemented to make the transition easier.)

Removed

[2.9.12] - 2020-05-01

Fine-tuning colorization

[2.9.11] - 2020-04-30

[2.9.10] - 2020-04-30

Catch2 long filename recognition improvement.

[2.9.9] - 2020-04-29

Output coloring improvements.

Hint: Are you working on an executable or a TestCase or just on 1 test?

Just right click on it and Enable autorun. Next time you recompile your executable it will run it automatically.

[2.9.8] - 2020-04-29

Sentry was broken

[2.9.7] - 2020-04-29

Added

  • Better path resolution in case of output parser.

[2.9.6] - 2020-04-29

Added

  • Navigation from outout window to source
  • Colored output (if not overridden by other extension)

[2.9.5] - 2020-04-25

Fixed

  • GoogleTest parsing. Nobody told me that on windows GoogleTest has a different format

[2.9.4] - 2020-04-24

Fixed

  • GoogleTest debugging
  • other small stuffs

[2.9.3] - 2020-04-23

Added

  • Exeprimental multirun feature. Run the same executable multiple times. See config: parallelizationLimit.

Changed

  • Experimental grouping has changed. More general and flexible. (again)

[2.9.2] - 2020-04-22

Changed

  • Experimental grouping has changed. More general and flexible.

Fixed

  • An issue when too much test caused ENAMETOOLONG.

[2.9.1] - 2020-04-19

Pesky bug fixes and tons of improvements

[2.9.0] - 2020-04-17

Added

Experiment feature: testGrouping: Groups the tests inside the executable. (Example)

[2.8.13] - 2020-04-04

Fixed

  • an issue (#169) when source file path resolution didn't work in case of DOCTest

[2.8.12] - 2020-03-29

Removed

  • additionalRunArguments

Added

  • prependTestListingArgs: Similar to additionalRunArguments but it prepends instead of appending.
  • prependTestRunningArgs

[2.8.11] - 2020-03-18

npm update

[2.8.10] - 2020-03-15

README fixes and option to force add .../_deps/....

[2.8.9] - 2020-03-15

Changed

  • Ignoring more known extensions and also ignoring _deps subfolder. This change might cause a problem for some user but hopefully just makes the test discovery much faster.

[2.8.8] - 2020-03-08

Removed

  • Google Test framework experimental discovery.

[2.8.7] - 2020-03-03

Improved logging and some extra error handling.

[2.8.6] - 2020-02-22

Improved logging

[2.8.5] - 2020-02-10

Fixed

  • gutter location if the assertion comes from a different file (ex.: #include).

[2.8.4] - 2020-02-02

Fixed

  • catch2 custom failure parsing

[2.8.3] - 2020-02-01

Added

  • experimental support to override test framework recognition.
  • experimental Catch2 benchmark support

Fixed

  • doctest exception handling

Removed 🚫

  • catch2TestExplorer.executables used as an array cannot contain strings anymore. Example: [ "*.test.exe" ] --> [ { "pattern": "*.test.exe" } ]

[2.8.2] - 2020-01-12

Added

  • Some mechanism which prevent to enumerate test for multiple times when the file hasn't changed.

[2.8.1] - 2020-01-06

Added

  • GoogleTest version detection

[2.8.0] - 2020-01-05

Added

  • Enhanced variable for catch2TestExplorer.executables. From now array indexing is supported like: ${relDirpath[:-1]}: a/b/c => a/b

Removed

  • ${base2Filename} => ${filename[:-2]}
  • ${ext2Filename} => .${filename[-2:-1]}
  • ${base3Filename} => ${filename[:-3]}
  • ${ext3Filename} => ${filename[-3:-2]}
  • ${parentDirname} => ${relPath[-1:]}

[2.7.15] - 2019-12-30

Just some logging related fixes, nothing interesting.

[2.7.14] - 2019-12-24

Fixed:

  • Catch2 parsing bug

[2.7.13] - 2019-12-23

[2.7.12] - 2019-12-22

Nothing interesting:

  • npm update
  • logging framework usage
  • slightly more flexible Catch2 test list parsing.

[2.7.11] - 2019-12-18

[2.7.10] - 2019-12-18

Sentry fix: webpack caused it.

[2.7.9] - 2019-12-17

Added

  • experimental support for doctest version >= 2.3.6

[2.7.8] - 2019-12-08

Finally I decided to use webpack. Package is the fraction of the previous version and loading time is faster.

Fixed

  • Catch2 parsing errors.

[2.7.7] - 2019-12-06

Changed

  • Google Test parsing improvements

Fixed

  • a bug related to bactick in SECTION name

[2.7.6] - 2019-10-30

Changed

  • Catch2 output information format has been changed. (Hopefully a bit more readable.)

[2.7.5] - 2019-09-17

Logging improvements.

[2.7.4] - 2019-09-16

Logging improvements.

[2.7.3] - 2019-09-09

Logging improvements.

[2.7.2] - 2019-09-08

⚠️ Sentry.io integration: From this build errors and exceptions can be reported automatically. Please allow it by setting catch2TestExplorer.logSentry: "enable".

Changed

  • debugConfigTemplate now filters launch.json a bit more precisely

[2.7.1] - 2019-08-30

Nothing really changed (just slightly), but documentation was updated.

[2.7.0] - 2019-08-25

Fixing vulnerabilites in packages.

Changed

  • Resolving ${os_env:<varname>} will result in empty string if if <varname> is not set. Use ${os_env_strict:<varname>} which will not set the target variable if there is no <varname> environment variable.

[2.6.6] - 2019-08-02

Changed

  • catch2TestExplorer.workerMaxNumber now "really" applies for the test exploration phase too

[2.6.5] - 2019-08-02

Changed

  • catch2TestExplorer.workerMaxNumber now applies for the test exploration phase too

[2.6.4] - 2019-07-19

Fixed

  • The path is relative to the test file. If the source file is already open vscode would open it another time using the unnormalized file path.

Changed

  • Updated googletest links.

[2.6.3] - 2019-07-15

Added

  • catch2TestExplorer.retireDebounceTimeMilisec to the configs.

[2.6.2] - 2019-07-13

Fixed security vulnerability.

[2.6.1] - 2019-07-08

Added

  • catch2TestExplorer.executables's pattern resolves variables related to the process's environment variables (Ex.: ${os_env:PATH}).

[2.6.0] - 2019-07-08

Added

  • catch2TestExplorer.defaultExecParsingTimeoutSec to the configs.

[2.5.0] - 2019-06-26

Added

  • catch2TestExplorer.googletest.gmockVerbose to the configs.
  • catch2TestExplorer.googletest.treatGmockWarningAs to the configs.

[2.4.14] - 2019-06-13

Added

  • executables's properties can contains variables related to environment variables (ex.: ${os_env:PATH};/mypath).

[2.4.13] - 2019-06-08

npm update: security alert fix.

[2.4.12] - 2019-06-07

"Google Test improvements. Now I use my product, so I've found a lot a of small issues." Vol. 2.

Changed

  • Google Mock output parsing enhancements.

Fixed

  • a bug related to config retrieval.

[2.4.11] - 2019-06-06

Added

  • additional file extensions recognized as valid executable: .cmd and .bat (PR)

[2.4.10] - 2019-06-05

Google Test improvements. Now I use my product, so I've found a lot a of small issues. :)

Fixed

  • Google Test was losing it's state when the exec was touched.
  • a bug which ignored the user and global config values.

Added

  • a logic which tries to create a debug template on the fly. It searches for configurations in the workspacefolder's .vscode/launch.json. It will choose the first one which's "request" property is "launch" and has type property.

[2.4.9] - 2019-05-28

Just updated the README.md and updated the packages.

[2.4.8] - 2019-05-17

Fixed

  • a bug related to parsing a Google Test with 'TypeParam'.

[2.4.7] - 2019-05-01

Fixed

  • a bug which occured when the test executables crashed on windows.

[2.4.6] - 2019-04-27

Fixed

  • a misleading default config.

[2.4.5] - 2019-04-26

Fixed

  • a bug which reloads the suite in case of the test crashes.

[2.4.4] - 2019-04-16

Fixed

  • some vulnerabilities in packages (npm audit fix)

[2.4.3] - 2019-04-03

Fixed

  • section info in description

[2.4.2] - 2019-04-02

Fixed

  • some issue with dependsOn related to Gaze fs-watcher.

[2.4.1] - 2019-04-02

Added

  • executables's dependOn (type: string[]) property is no longer experimental. Be careful with it. It eats file descriptors and defecates test executions.
  • section result stat to description and tooltip.

[2.4.0] - 2019-03-25

Added

  • executables's description property for nicer labels
  • (experimental) executables's dependOn (type: string[]) property. Be careful with it. It eats file descriptors and defecates test executions.

[2.3.28] - 2019-03-20

Changed

  • fswatcher library has been replaced: chokidar -> gaze. There were some problem with it on OSX. Don't care, threw it out.

[2.3.27] - 2019-03-18

Fixed

  • a bug related to abs-path watcher (chokidar).

[2.3.26] - 2019-03-18

Added

  • support for GTEST_SKIP().
  • (experimental) glob pattern for patterns outside the workspace directory
  • (experimental) watcher for executables outside the workspace directory

Fixed

  • a bug which caused to run all tests of a suite including the skipped ones too

[2.3.25] - 2019-03-15

Added

  • experimental feature: catch2TestExplorer.enableTestListCaching

Changed

  • scripts like .py, .sh, .js are allowed for those who are using wrappers. Related issue.

[2.3.24] - 2019-03-14

Fixed

Changed

  • test suite loading order from now is not deterministic. One can set testExplorer.sort for ordering.

[2.3.23] - 2019-03-14

Changed

  • doesn't send skipped events for skipped tests: This will preserve
  • in case of Google Test 'DISABLED_' prefix is removed from the label. The icon indicates it anyway.
  • it seems Google Test's test names first character can be a digit.

[2.3.22] - 2019-03-01

Changed

  • the test list parser timeout from 5 to 30 seconds.

Added

  • section picker for debugging.

Fixed

  • a bug related to env variables in case of debugging.

[2.3.21] - 2019-02-26

Added

  • testExplorer.sort, so I removed my logic. If you want the old ordering set this to byLabelWithSuitesFirst.
  • tooltip: it will show more info about the suites and tests.

[2.3.20] - 2019-02-22

Fixed

  • catch2TestExplorer.defaultRngSeed, which didn't work at all.

[2.3.19] - 2019-02-21

Added

  • config scheme validation is much better

[2.3.18] - 2019-02-18

Fixed

  • a small bug related to executables's environment variables.

[2.3.17] - 2019-02-13

Stability improvements.

Changed

  • A list of non-executable extensions has been extended to: 'c', 'cmake', 'cpp', 'cxx', 'deb', 'dir', 'gz', 'h', 'hpp', 'hxx', 'ko', 'log', 'o', 'php', 'py', 'rpm', 'sh', 'so', 'tar', 'txt'

Fixed

  • a bug related to navigation to source.

[2.3.16] - 2019-01-31

This version probably contains stability improvements ✌️, but in case it doesn't work on all platforms as I expect, you can downgrade it in the vscode's extension manager and please file an issue about the bug. 🙏

REMARK: A list of non-executable extensions are hard-coded: ['py', 'sh', 'cmake', 'deb', 'o', 'so', 'rpm', 'tar', 'gz', 'php', 'ko']. And on Windows everything is filtered what is not ends with .exe;

Added

  • sending SIGKILL in case of second cancel. (Clicking onto the cancel button after the first cancel wasn't successful.)

[2.3.15] - 2019-01-20

Changed

  • In case of multiple adapters or workspace folders, if there are no tests in a particular workspace folder it won't be shown in the Test Explorer.

[2.3.14] - 2019-01-18

Fixed

  • a bug related to Google Test framework's test list loading. (Issue)

[2.3.13] - 2019-01-16

Sorting has been change to alphabetic order.

Google Test tests are grouped.

[2.3.12] - 2019-01-13

Fixed

  • a bug related to suite name uniquification.

[2.3.11] - 2019-01-11

Performance and stability improvements.

[2.3.10] - 2019-01-05

Performance and stability improvements.

[2.3.9] - 2019-01-03

Fixed

  • a bug which caused that files.exclude were also applied to pattern. Not anymore.
  • a bug which caused to show not file names but patterns in the explorer.
  • a bug which allowed suite duplications if more patterns were matching.

[2.3.8] - 2019-01-03

Fixed

  • a bug related to Google Test framework: INSTANTIATE_TEST_CASE_P.

[2.3.7] - 2019-01-02

Fixed

  • a bug related to defaultCwd and defaultEnv and executables's cwd.

[2.3.6] - 2018-12-25

Added

  • Handling: Catch2: INFO, WARN, FAIL, std::cout, std::cerr

Deprecated

  • catch2TestExplorer.enableSourceDecoration will be removed. Use testExplorer.errorDecoration.

[2.3.5] - 2018-12-23

Fixed

  • fs-extra was only a devDependencie, so the extension couldn't load.

[2.3.4] - 2018-12-22

Fixed

  • Debugging a Google Test did run all the tests.

[2.3.3] - 2018-12-22

Google Test framework support has been added. It is in experimental phase.

[2.3.2] - 2018-12-19

Fixed

  • bug related to loading test list with duplicated test names

[2.3.1] - 2018-12-17

Fixed

  • a bug related to autorun see

[2.3.0] - 2018-12-17

Better error handling and logging.

Added

  • catch2TestExplorer.defaultRunningTimeoutSec to prevent infinite loops

[2.2.6] - 2018-12-10

Stability improvements.

[2.2.5] - 2018-12-04

Fixed

  • Source file path resolution
  • Bug related to automatic test reloading

[2.2.4] - 2018-12-04

Updated README.md

[2.2.3] - 2018-11-28

Unnecessary codes and packages are removed from extension package.

Also old releases will be removed from Github releases page, because of a security issue related to vscode package.

[2.2.2] - 2018-11-28

Security

[2.2.1] - 2018-11-25

Stability improvements.

Fixed

  • relative patter/path outside of workspace didn't work
  • tests are added/removed if change detected under running tests

[2.2.0] - 2018-11-25

Performance and stability improvements. Improved logging.

Added

  • catch2TestExplorer.defaultNoThrow option. Skips all assertions that test that an exception is thrown, e.g. REQUIRE_THROWS. This is a Catch2 parameter: --nothrow.

Fixed

  • debugger recognition. (ms-vscode.cpptools's documentation is incorrect)

[2.1.0] - 2018-11-20

Added

  • catch2TestExplorer.debugBreakOnFailure option. It is true by default.
  • Change of test file (ex.:recompilation) triggers "autorun" feature. (Right click on test/suite in text explorer -> Enable to enable autorun for the selected test/suite.) This basically means that the selected test/suite will run in case of any filesystem event related to the executables variable. It can be really useful if one would like to run a test (or suite) automatically after recompiliation.

Fixed

Performance and stability improvements.

[2.0.3] - 2018-11-20

Fixed

  • It reloads suite if it finds any new tests.
  • A bug in package.json. It couldn't load the tests by default.

[2.0.2] - 2018-11-19

Fixed

  • A bug related to jumping to source.

[2.0.1] - 2018-11-07

Fixed

  • A bug related to xml parsing.

Added

For development:

Now, if there is 'something' in the CHANGELOG without date (ex.: "[1.2.3]") and it is merged to the master, a deploy job will run it will:

  • Appends the CHANGELOG.md's new version-line with the current UTC date: "[1.2.3]" --> "[1.2.3] - 2018-10-31".
  • Updates the version number in package.json according to the one in CHANGELOG.md.
  • Creates a commit about it.
  • Creates a tag too.
  • Creates a GitHub release for the tag and uploads the generated .vsix file.
  • Publish the new version to Visual Studio Marketplace.

Hopefully it works (partially tested only 🤞).

Deprecated

  • executables's path. Now it is mapped to pattern, so works, but it will be removed in the future.

[2.0.0] - 2018-10-30

Lot of things new under the hood, but lets talk about the 'API' change.

Changed ⚠️

  • Renamed defaultExecWatchTimeout --> defaultWatchTimeoutSec.

    • Also the unit has changed from millisecond to second.
  • Renamed debugConfigurationTemplate --> debugConfigTemplate.

  • Renamed path property of executables --> pattern. (Technically path still can be used as an alias.)

  • Changed behaviour of path property of executables. Now it can understand "VSCode patterns". (Details) - These work for only path's inside the workspace directory. Paths outside of it can be used with absolute path or with relative to working directory (ex.: ../build/test.exe), but without patterns (and without file-watch).

    • * to match one or more characters in a path segment
    • ? to match on one character in a path segment
    • ** to match any number of path segments, including none
    • {} to group conditions (e.g. {**/*.html,**/*.txt} matches all HTML and text files)
    • [] to declare a range of characters to match (e.g., example.[0-9] to match on example.0, example.1, …)
  • File system is watched through the previously mentioned pattern (only inside the workspace directory), and newly created executables will be added automatically, deleted ones will be removed and changed ones will be refreshed.

  • Variable substitution has been changed. (See README for details.)

Removed 🚫

  • Removed regex property of executables.
  • Removed recursiveRegex property of executables.

[1.2.0] - 2018-10-24

Added

  • Configuration: catch2TestExplorer.defaultExecWatchTimeout: Test executables are being watched. In case of one compiles too much this variable can help with it.

[1.1.2]

Bugfix release

[1.1.1]

Added

  • Parsing 'Randomness' values

Changed

  • Fixed catch2TestExplorer.defaultRngSeed

[1.1.0]

Added

  • Configuration catch2TestExplorer.defaultRngSeed is added.
  • Test's running duration is shown.

[1.0.2] - 2018-09-13

Changed

  • package.json workerMaxNumber naming has been fixed.

[1.0.1] - 2018-09-13

Changed

  • Lots of bugs ave been fixed. (Typically platform related ones.)

[1.0.0] - 2018-09-12

Added

  • Skipped tests are recognised.
  • catch2TestExplorer.workerMaxNumber, see Changed section.
  • Tricky test names (with spaces in it) are handled.

Changed

  • Just global worker limitation exists from now so, it was renamed catch2TestExplorer.globalWorkerMaxNumber => catch2TestExplorer.workerMaxNumber

Removed

  • catch2TestExplorer.defaultGroupFileLevelRun was removed. Now just group file level run exists.
  • Thats why catch2TestExplorer.defaultWorkerMaxNumberPerFile was unnecessary too, removed.
  • And also catch2TestExplorer.executables's workerMaxNumber was removed.
  • catch2TestExplorer.globalWorkerMaxNumber, see Changed section.

[0.3.0] - 2018-09-03

Added

  • catch2TestExplorer.defaultGroupFileLevelRun. Check [README.md] for details. If you have a loads of tests in a file or your test file starts slowly because you should benefit from this.

Changed

  • Project structure was refactored.
  • Navigate to source now works before running the tests too. (Except on Windows. Probably that is not the problem of this extension.)

[0.2.3] - 2018-09-02

Changed

  • npm update.

[0.2.2] - 2018-08-31

[0.2.1] - 2018-08-30

Added

  • recursiveRegex flag has been added.

Changed

  • Fixed debugConfigurationTemplate config default value.

[0.2.0] - 2018-08-29

Added

  • Debug button works now if debugConfigurationTemplate is properly set.

Changed

  • IMPORTANT!!! Config variable names has been changed. Check the updated documentation: README.md
  • Fixes some issues related to test auto-reloading after compilation.

[0.1.1] - 2018-08-25

Changed

  • Nothing really, just refactoring.

[0.1.0] - 2018-08-25

Added

  • Everything. This is the initial version for review.