mirror of
https://github.com/dorny/test-reporter.git
synced 2026-02-02 03:15:22 -08:00
Compare commits
88 Commits
v1.2.0
...
dotnet-nun
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e6a3c0ca2e | ||
|
|
0d00bb14cb | ||
|
|
a585725c8b | ||
|
|
de0b4b9ece | ||
|
|
ad831af420 | ||
|
|
2ac8b4498f | ||
|
|
17e793242c | ||
|
|
e8f4fdfec7 | ||
|
|
d01ef000ba | ||
|
|
6969ae6af5 | ||
|
|
7c6c7df048 | ||
|
|
0ed324d155 | ||
|
|
72c193c336 | ||
|
|
e873f73dd6 | ||
|
|
f88270a385 | ||
|
|
dcaab46b46 | ||
|
|
cbdb218336 | ||
|
|
43d89d5ee5 | ||
|
|
4fcb1ce90b | ||
|
|
2e3fd84080 | ||
|
|
6662b9362e | ||
|
|
0c4e1654a1 | ||
|
|
c74b76e916 | ||
|
|
d39bdea68c | ||
|
|
e81e3750bc | ||
|
|
368fd2475a | ||
|
|
78b798ea79 | ||
|
|
0e5d21a75b | ||
|
|
ee126813a2 | ||
|
|
39f7ac7868 | ||
|
|
4c2f9f34f7 | ||
|
|
fab342311c | ||
|
|
f48646179b | ||
|
|
cfaaaf1a47 | ||
|
|
690ec77880 | ||
|
|
96df6db61e | ||
|
|
3c4d3b3836 | ||
|
|
ea36be4653 | ||
|
|
2c87efac07 | ||
|
|
383ae3ef8c | ||
|
|
8a00817999 | ||
|
|
bab8ddc2ca | ||
|
|
10268d2d6d | ||
|
|
d29a37e78a | ||
|
|
faaff05398 | ||
|
|
d5e42b8d57 | ||
|
|
40df4133f9 | ||
|
|
3a0bb833dc | ||
|
|
c0e7f7f7dc | ||
|
|
b9af250554 | ||
|
|
9db99178aa | ||
|
|
3768e4e756 | ||
|
|
51956bab1c | ||
|
|
91834cafdf | ||
|
|
6a5f75601b | ||
|
|
16adfe9b7e | ||
|
|
4129c2a0bf | ||
|
|
eb581e7b54 | ||
|
|
a97bdcb7b7 | ||
|
|
dfa0da9b1a | ||
|
|
68c7ff8b71 | ||
|
|
88650b55e1 | ||
|
|
1c5d09f75b | ||
|
|
0758b46a5b | ||
|
|
4c5f847d99 | ||
|
|
1b9fa8f9ac | ||
|
|
237022c326 | ||
|
|
7ad22e7671 | ||
|
|
14c7be9d90 | ||
|
|
d0fc401052 | ||
|
|
20f80b843b | ||
|
|
7fad82f9b9 | ||
|
|
ce3f80a032 | ||
|
|
3719b10aa6 | ||
|
|
17e90d1765 | ||
|
|
a0650bfb43 | ||
|
|
fa4ff78218 | ||
|
|
8a8131cd8a | ||
|
|
a9749e3840 | ||
|
|
a1cbedbccb | ||
|
|
cf4814e8de | ||
|
|
073a4b9a03 | ||
|
|
953bdcc20a | ||
|
|
63dddc9ecc | ||
|
|
2d842d6ac6 | ||
|
|
fbb83bff74 | ||
|
|
8dba8714d0 | ||
|
|
9b675bd55f |
11
.github/dependabot.yml
vendored
11
.github/dependabot.yml
vendored
@@ -1,11 +0,0 @@
|
|||||||
version: 2
|
|
||||||
updates:
|
|
||||||
# Enable version updates for npm
|
|
||||||
- package-ecosystem: 'npm'
|
|
||||||
# Look for `package.json` and `lock` files in the `root` directory
|
|
||||||
directory: '/'
|
|
||||||
# Check the npm registry for updates every day (weekdays)
|
|
||||||
schedule:
|
|
||||||
interval: 'monthly'
|
|
||||||
ignore:
|
|
||||||
- dependency-name: '@types/node'
|
|
||||||
1
.github/workflows/ci.yml
vendored
1
.github/workflows/ci.yml
vendored
@@ -21,6 +21,7 @@ jobs:
|
|||||||
- run: npm test
|
- run: npm test
|
||||||
|
|
||||||
- name: Upload test results
|
- name: Upload test results
|
||||||
|
if: success() || failure()
|
||||||
uses: actions/upload-artifact@v2
|
uses: actions/upload-artifact@v2
|
||||||
with:
|
with:
|
||||||
name: test-results
|
name: test-results
|
||||||
|
|||||||
30
CHANGELOG.md
30
CHANGELOG.md
@@ -1,5 +1,35 @@
|
|||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
|
## v1.5.0
|
||||||
|
- [Add option to convert backslashes in path pattern to forward slashes](https://github.com/dorny/test-reporter/pull/128)
|
||||||
|
- [Add option to generate only the summary from processed test results files](https://github.com/dorny/test-reporter/pull/123)
|
||||||
|
|
||||||
|
## v1.4.3
|
||||||
|
- [Patch java-junit to handle missing time field](https://github.com/dorny/test-reporter/pull/115)
|
||||||
|
- [Fix dart-json parsing broken by print message](https://github.com/dorny/test-reporter/pull/114)
|
||||||
|
|
||||||
|
## v1.4.2
|
||||||
|
- [Fix dotnet-trx parsing of passed tests with non-empty error info](https://github.com/dorny/test-reporter/commit/43d89d5ee509bcef7bd0287aacc0c4a4fb9c1657)
|
||||||
|
|
||||||
|
## v1.4.1
|
||||||
|
- [Fix dotnet-trx parsing of tests with custom display names](https://github.com/dorny/test-reporter/pull/105)
|
||||||
|
|
||||||
|
## v1.4.0
|
||||||
|
- [Add support for mocha-json](https://github.com/dorny/test-reporter/pull/90)
|
||||||
|
- [Use full URL to fix navigation from summary to suite details](https://github.com/dorny/test-reporter/pull/89)
|
||||||
|
- [New report rendering with code blocks instead of tables](https://github.com/dorny/test-reporter/pull/88)
|
||||||
|
- [Improve test error messages from flutter](https://github.com/dorny/test-reporter/pull/87)
|
||||||
|
|
||||||
|
## v1.3.1
|
||||||
|
- [Fix: parsing of .NET duration string without milliseconds](https://github.com/dorny/test-reporter/pull/84)
|
||||||
|
- [Fix: dart-json - remove group name from test case names](https://github.com/dorny/test-reporter/pull/85)
|
||||||
|
- [Fix: net-trx parser crashing on missing duration attribute](https://github.com/dorny/test-reporter/pull/86)
|
||||||
|
|
||||||
|
## v1.3.0
|
||||||
|
- [Add support for java-junit](https://github.com/dorny/test-reporter/pull/80)
|
||||||
|
- [Fix: Handle test reports with no test cases](https://github.com/dorny/test-reporter/pull/70)
|
||||||
|
- [Fix: Reduce number of API calls to get list of files tracked by GitHub](https://github.com/dorny/test-reporter/pull/69)
|
||||||
|
|
||||||
## v1.2.0
|
## v1.2.0
|
||||||
- [Set `listTests` and `listSuites` to lower detail if report is too big](https://github.com/dorny/test-reporter/pull/60)
|
- [Set `listTests` and `listSuites` to lower detail if report is too big](https://github.com/dorny/test-reporter/pull/60)
|
||||||
|
|
||||||
|
|||||||
84
README.md
84
README.md
@@ -9,14 +9,15 @@ This [Github Action](https://github.com/features/actions) displays test results
|
|||||||
✔️ Provides final `conclusion` and counts of `passed`, `failed` and `skipped` tests as output parameters
|
✔️ Provides final `conclusion` and counts of `passed`, `failed` and `skipped` tests as output parameters
|
||||||
|
|
||||||
**How it looks:**
|
**How it looks:**
|
||||||
|||||
|
|||||
|
||||||
|:--:|:--:|:--:|:--:|
|
|:--:|:--:|:--:|:--:|
|
||||||
|
|
||||||
**Supported languages / frameworks:**
|
**Supported languages / frameworks:**
|
||||||
- .NET / [xUnit](https://xunit.net/) / [NUnit](https://nunit.org/) / [MSTest](https://github.com/Microsoft/testfx-docs)
|
- .NET / [xUnit](https://xunit.net/) / [NUnit](https://nunit.org/) / [MSTest](https://github.com/Microsoft/testfx-docs)
|
||||||
- Dart / [test](https://pub.dev/packages/test)
|
- Dart / [test](https://pub.dev/packages/test)
|
||||||
- Flutter / [test](https://pub.dev/packages/test)
|
- Flutter / [test](https://pub.dev/packages/test)
|
||||||
- JavaScript / [JEST](https://jestjs.io/)
|
- Java / [JUnit](https://junit.org/)
|
||||||
|
- JavaScript / [JEST](https://jestjs.io/) / [Mocha](https://mochajs.org/)
|
||||||
|
|
||||||
For more information see [Supported formats](#supported-formats) section.
|
For more information see [Supported formats](#supported-formats) section.
|
||||||
|
|
||||||
@@ -53,9 +54,9 @@ jobs:
|
|||||||
## Recommended setup for public repositories
|
## Recommended setup for public repositories
|
||||||
|
|
||||||
Workflows triggered by pull requests from forked repositories are executed with read-only token and therefore can't create check runs.
|
Workflows triggered by pull requests from forked repositories are executed with read-only token and therefore can't create check runs.
|
||||||
To workaround this security restriction it's required to use two separate workflows:
|
To workaround this security restriction, it's required to use two separate workflows:
|
||||||
1. `CI` runs in the context of PR head branch with read-only token. It executes the tests and uploads test results as build artifact
|
1. `CI` runs in the context of the PR head branch with the read-only token. It executes the tests and uploads test results as a build artifact
|
||||||
2. `Test Report` runs in the context of repository main branch with read/write token. It will download test results and create reports
|
2. `Test Report` runs in the context of the repository main branch with read/write token. It will download test results and create reports
|
||||||
|
|
||||||
**PR head branch:** *.github/workflows/ci.yml*
|
**PR head branch:** *.github/workflows/ci.yml*
|
||||||
```yaml
|
```yaml
|
||||||
@@ -115,16 +116,28 @@ jobs:
|
|||||||
|
|
||||||
# Coma separated list of paths to test results
|
# Coma separated list of paths to test results
|
||||||
# Supports wildcards via [fast-glob](https://github.com/mrmlnc/fast-glob)
|
# Supports wildcards via [fast-glob](https://github.com/mrmlnc/fast-glob)
|
||||||
# All matched result files must be of same format
|
# All matched result files must be of the same format
|
||||||
path: ''
|
path: ''
|
||||||
|
|
||||||
|
# The fast-glob library that is internally used interprets backslashes as escape characters.
|
||||||
|
# If enabled, all backslashes in provided path will be replaced by forward slashes and act as directory separators.
|
||||||
|
# It might be useful when path input variable is composed dynamically from existing directory paths on Windows.
|
||||||
|
path-replace-backslashes: 'false'
|
||||||
|
|
||||||
# Format of test results. Supported options:
|
# Format of test results. Supported options:
|
||||||
# dart-json
|
# dart-json
|
||||||
# dotnet-trx
|
# dotnet-trx
|
||||||
# flutter-json
|
# flutter-json
|
||||||
|
# java-junit
|
||||||
# jest-junit
|
# jest-junit
|
||||||
|
# mocha-json
|
||||||
reporter: ''
|
reporter: ''
|
||||||
|
|
||||||
|
# Allows you to generate only the summary.
|
||||||
|
# If enabled, the report will contain a table listing each test results file and the number of passed, failed, and skipped tests.
|
||||||
|
# Detailed listing of test suites and test cases will be skipped.
|
||||||
|
only-summary: 'false'
|
||||||
|
|
||||||
# Limits which test suites are listed:
|
# Limits which test suites are listed:
|
||||||
# all
|
# all
|
||||||
# failed
|
# failed
|
||||||
@@ -140,7 +153,7 @@ jobs:
|
|||||||
# Must be less or equal to 50.
|
# Must be less or equal to 50.
|
||||||
max-annotations: '10'
|
max-annotations: '10'
|
||||||
|
|
||||||
# Set action as failed if test report contain any failed test
|
# Set action as failed if test report contains any failed test
|
||||||
fail-on-error: 'true'
|
fail-on-error: 'true'
|
||||||
|
|
||||||
# Relative path under $GITHUB_WORKSPACE where the repository was checked out.
|
# Relative path under $GITHUB_WORKSPACE where the repository was checked out.
|
||||||
@@ -222,8 +235,8 @@ Or with (undocumented) CLI argument:
|
|||||||
|
|
||||||
|
|
||||||
According to documentation `dart_test.yaml` should be at the root of the package, next to the package's pubspec.
|
According to documentation `dart_test.yaml` should be at the root of the package, next to the package's pubspec.
|
||||||
On current `stable` and `beta` channels it doesn't work and you have to put `dart_test.yaml` inside your `test` folder.
|
On current `stable` and `beta` channels it doesn't work, and you have to put `dart_test.yaml` inside your `test` folder.
|
||||||
On `dev` channel it's already fixed.
|
On `dev` channel, it's already fixed.
|
||||||
|
|
||||||
For more information see:
|
For more information see:
|
||||||
- [test package](https://pub.dev/packages/test)
|
- [test package](https://pub.dev/packages/test)
|
||||||
@@ -234,14 +247,23 @@ For more information see:
|
|||||||
</details>
|
</details>
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>jest-junit</summary>
|
<summary>java-junit (Experimental)</summary>
|
||||||
|
|
||||||
[JEST](https://jestjs.io/) testing framework support requires usage of [jest-junit](https://github.com/jest-community/jest-junit) reporter.
|
Support for [JUnit](https://Junit.org/) XML is experimental - should work but it was not extensively tested.
|
||||||
It will create test results in junit XML format which can be then processed by this action.
|
To have code annotations working properly, it's required your directory structure matches the package name.
|
||||||
You can use following example configuration in `package.json`:
|
This is due to the fact Java stack traces don't contain a full path to the source file.
|
||||||
|
Some heuristic was necessary to figure out the mapping between the line in the stack trace and an actual source file.
|
||||||
|
</details>
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>jest-Junit</summary>
|
||||||
|
|
||||||
|
[JEST](https://jestjs.io/) testing framework support requires the usage of [jest-Junit](https://github.com/jest-community/jest-Junit) reporter.
|
||||||
|
It will create test results in Junit XML format which can be then processed by this action.
|
||||||
|
You can use the following example configuration in `package.json`:
|
||||||
```json
|
```json
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"test": "jest --ci --reporters=default --reporters=jest-junit"
|
"test": "jest --ci --reporters=default --reporters=jest-Junit"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"jest": "^26.5.3",
|
"jest": "^26.5.3",
|
||||||
@@ -261,9 +283,39 @@ You can use following example configuration in `package.json`:
|
|||||||
Configuration of `uniqueOutputName`, `suiteNameTemplate`, `classNameTemplate`, `titleTemplate` is important for proper visualization of test results.
|
Configuration of `uniqueOutputName`, `suiteNameTemplate`, `classNameTemplate`, `titleTemplate` is important for proper visualization of test results.
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>mocha-json</summary>
|
||||||
|
|
||||||
|
[Mocha](https://mochajs.org/) testing framework support requires:
|
||||||
|
- Mocha version [v7.2.0](https://github.com/mochajs/mocha/releases/tag/v7.2.0) or higher
|
||||||
|
- Usage of [json](https://mochajs.org/#json) reporter.
|
||||||
|
|
||||||
|
You can use the following example configuration in `package.json`:
|
||||||
|
```json
|
||||||
|
"scripts": {
|
||||||
|
"test": "mocha --reporter json > test-results.json"
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
Test processing might fail if any of your tests write anything on standard output.
|
||||||
|
Mocha, unfortunately, doesn't have the option to store `json` output directly to the file, and we have to rely on redirecting its standard output.
|
||||||
|
There is a work in progress to fix it: [mocha#4607](https://github.com/mochajs/mocha/pull/4607)
|
||||||
|
</details>
|
||||||
|
|
||||||
|
## GitHub limitations
|
||||||
|
|
||||||
|
Unfortunately, there are some known issues and limitations caused by GitHub API:
|
||||||
|
|
||||||
|
- Test report (i.e. Check Run summary) is markdown text. No custom styling or HTML is possible.
|
||||||
|
- Maximum report size is 65535 bytes. Input parameters `list-suites` and `list-tests` will be automatically adjusted if max size is exceeded.
|
||||||
|
- Test report can't reference any additional files (e.g. screenshots). You can use `actions/upload-artifact@v2` to upload them and inspect them manually.
|
||||||
|
- Check Runs are created for specific commit SHA. It's not possible to specify under which workflow test report should belong if more
|
||||||
|
workflows are running for the same SHA. Thanks to this GitHub "feature" it's possible your test report will appear in an unexpected place in GitHub UI.
|
||||||
|
For more information, see [#67](https://github.com/dorny/test-reporter/issues/67).
|
||||||
|
|
||||||
## See also
|
## See also
|
||||||
- [paths-filter](https://github.com/dorny/paths-filter) - Conditionally run actions based on files modified by PR, feature branch or pushed commits
|
- [paths-filter](https://github.com/dorny/paths-filter) - Conditionally run actions based on files modified by PR, feature branch, or pushed commits
|
||||||
|
|
||||||
## License
|
## License
|
||||||
|
|
||||||
The scripts and documentation in this project are released under the [MIT License](https://github.com/dorny/test-reporter/blob/master/LICENSE)
|
The scripts and documentation in this project are released under the [MIT License](https://github.com/dorny/test-reporter/blob/main/LICENSE)
|
||||||
|
|||||||
@@ -1,32 +1,28 @@
|
|||||||

|

|
||||||
## <a id="user-content-r0" href="#r0">fixtures/dart-json.json</a> ❌
|
## ❌ <a id="user-content-r0" href="#r0">fixtures/dart-json.json</a>
|
||||||
**6** tests were completed in **3.760s** with **1** passed, **4** failed and **1** skipped.
|
**6** tests were completed in **4s** with **1** passed, **4** failed and **1** skipped.
|
||||||
|Test suite|Passed|Failed|Skipped|Time|
|
|Test suite|Passed|Failed|Skipped|Time|
|
||||||
|:---|---:|---:|---:|---:|
|
|:---|---:|---:|---:|---:|
|
||||||
|[test/main_test.dart](#r0s0)|1✔️|3❌||74ms|
|
|[test/main_test.dart](#r0s0)|1✔️|3❌||74ms|
|
||||||
|[test/second_test.dart](#r0s1)||1❌|1✖️|51ms|
|
|[test/second_test.dart](#r0s1)||1❌|1✖️|51ms|
|
||||||
### <a id="user-content-r0s0" href="#r0s0">test/main_test.dart</a> ❌
|
### ❌ <a id="user-content-r0s0" href="#r0s0">test/main_test.dart</a>
|
||||||
**4** tests were completed in **74ms** with **1** passed, **3** failed and **0** skipped.
|
```
|
||||||
|
Test 1
|
||||||
|
✔️ Passing test
|
||||||
|
Test 1 Test 1.1
|
||||||
|
❌ Failing test
|
||||||
|
Expected: <2>
|
||||||
|
Actual: <1>
|
||||||
|
|
||||||
**Test 1**
|
❌ Exception in target unit
|
||||||
|Result|Test|Time|
|
Exception: Some error
|
||||||
|:---:|:---|---:|
|
Test 2
|
||||||
|✔️|Test 1 Passing test|36ms|
|
❌ Exception in test
|
||||||
|
Exception: Some error
|
||||||
**Test 1 Test 1.1**
|
```
|
||||||
|Result|Test|Time|
|
### ❌ <a id="user-content-r0s1" href="#r0s1">test/second_test.dart</a>
|
||||||
|:---:|:---|---:|
|
```
|
||||||
|❌|Test 1 Test 1.1 Failing test|20ms|
|
❌ Timeout test
|
||||||
|❌|Test 1 Test 1.1 Exception in target unit|6ms|
|
TimeoutException after 0:00:00.000001: Test timed out after 0 seconds.
|
||||||
|
✖️ Skipped test
|
||||||
**Test 2**
|
```
|
||||||
|Result|Test|Time|
|
|
||||||
|:---:|:---|---:|
|
|
||||||
|❌|Test 2 Exception in test|12ms|
|
|
||||||
### <a id="user-content-r0s1" href="#r0s1">test/second_test.dart</a> ❌
|
|
||||||
**2** tests were completed in **51ms** with **0** passed, **1** failed and **1** skipped.
|
|
||||||
|
|
||||||
|Result|Test|Time|
|
|
||||||
|:---:|:---|---:|
|
|
||||||
|❌|Timeout test|37ms|
|
|
||||||
|✖️|Skipped test|14ms|
|
|
||||||
@@ -1,18 +1,31 @@
|
|||||||

|

|
||||||
## <a id="user-content-r0" href="#r0">fixtures/dotnet-trx.trx</a> ❌
|
## ❌ <a id="user-content-r0" href="#r0">fixtures/dotnet-trx.trx</a>
|
||||||
**7** tests were completed in **1.061s** with **3** passed, **3** failed and **1** skipped.
|
**11** tests were completed in **1s** with **5** passed, **5** failed and **1** skipped.
|
||||||
|Test suite|Passed|Failed|Skipped|Time|
|
|Test suite|Passed|Failed|Skipped|Time|
|
||||||
|:---|---:|---:|---:|---:|
|
|:---|---:|---:|---:|---:|
|
||||||
|[DotnetTests.XUnitTests.CalculatorTests](#r0s0)|3✔️|3❌|1✖️|110ms|
|
|[DotnetTests.XUnitTests.CalculatorTests](#r0s0)|5✔️|5❌|1✖️|118ms|
|
||||||
### <a id="user-content-r0s0" href="#r0s0">DotnetTests.XUnitTests.CalculatorTests</a> ❌
|
### ❌ <a id="user-content-r0s0" href="#r0s0">DotnetTests.XUnitTests.CalculatorTests</a>
|
||||||
**7** tests were completed in **110ms** with **3** passed, **3** failed and **1** skipped.
|
```
|
||||||
|
✔️ Custom Name
|
||||||
|Result|Test|Time|
|
❌ Exception_In_TargetTest
|
||||||
|:---:|:---|---:|
|
System.DivideByZeroException : Attempted to divide by zero.
|
||||||
|❌|Exception_In_TargetTest|0ms|
|
❌ Exception_In_Test
|
||||||
|❌|Exception_In_Test|2ms|
|
System.Exception : Test
|
||||||
|❌|Failing_Test|3ms|
|
❌ Failing_Test
|
||||||
|✔️|Passing_Test|0ms|
|
Assert.Equal() Failure
|
||||||
|✔️|Passing_Test_With_Name|0ms|
|
Expected: 3
|
||||||
|✖️|Skipped_Test|1ms|
|
Actual: 2
|
||||||
|✔️|Timeout_Test|102ms|
|
✔️ Is_Even_Number(i: 2)
|
||||||
|
❌ Is_Even_Number(i: 3)
|
||||||
|
Assert.True() Failure
|
||||||
|
Expected: True
|
||||||
|
Actual: False
|
||||||
|
✔️ Passing_Test
|
||||||
|
✔️ Should be even number(i: 2)
|
||||||
|
❌ Should be even number(i: 3)
|
||||||
|
Assert.True() Failure
|
||||||
|
Expected: True
|
||||||
|
Actual: False
|
||||||
|
✖️ Skipped_Test
|
||||||
|
✔️ Timeout_Test
|
||||||
|
```
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -1,32 +1,26 @@
|
|||||||

|

|
||||||
## <a id="user-content-r0" href="#r0">fixtures/jest-junit.xml</a> ❌
|
## ❌ <a id="user-content-r0" href="#r0">fixtures/jest-junit.xml</a>
|
||||||
**6** tests were completed in **1.360s** with **1** passed, **4** failed and **1** skipped.
|
**6** tests were completed in **1s** with **1** passed, **4** failed and **1** skipped.
|
||||||
|Test suite|Passed|Failed|Skipped|Time|
|
|Test suite|Passed|Failed|Skipped|Time|
|
||||||
|:---|---:|---:|---:|---:|
|
|:---|---:|---:|---:|---:|
|
||||||
|[__tests__\main.test.js](#r0s0)|1✔️|3❌||486ms|
|
|[__tests__\main.test.js](#r0s0)|1✔️|3❌||486ms|
|
||||||
|[__tests__\second.test.js](#r0s1)||1❌|1✖️|82ms|
|
|[__tests__\second.test.js](#r0s1)||1❌|1✖️|82ms|
|
||||||
### <a id="user-content-r0s0" href="#r0s0">__tests__\main.test.js</a> ❌
|
### ❌ <a id="user-content-r0s0" href="#r0s0">__tests__\main.test.js</a>
|
||||||
**4** tests were completed in **486ms** with **1** passed, **3** failed and **0** skipped.
|
```
|
||||||
|
Test 1
|
||||||
**Test 1**
|
✔️ Passing test
|
||||||
|Result|Test|Time|
|
Test 1 › Test 1.1
|
||||||
|:---:|:---|---:|
|
❌ Failing test
|
||||||
|✔️|Passing test|1ms|
|
Error: expect(received).toBeTruthy()
|
||||||
|
❌ Exception in target unit
|
||||||
**Test 1 › Test 1.1**
|
Error: Some error
|
||||||
|Result|Test|Time|
|
Test 2
|
||||||
|:---:|:---|---:|
|
❌ Exception in test
|
||||||
|❌|Failing test|2ms|
|
Error: Some error
|
||||||
|❌|Exception in target unit|0ms|
|
```
|
||||||
|
### ❌ <a id="user-content-r0s1" href="#r0s1">__tests__\second.test.js</a>
|
||||||
**Test 2**
|
```
|
||||||
|Result|Test|Time|
|
❌ Timeout test
|
||||||
|:---:|:---|---:|
|
: Timeout - Async callback was not invoked within the 1 ms timeout specified by jest.setTimeout.Timeout - Async callback was not invoked within the 1 ms timeout specified by jest.setTimeout.Error:
|
||||||
|❌|Exception in test|0ms|
|
✖️ Skipped test
|
||||||
### <a id="user-content-r0s1" href="#r0s1">__tests__\second.test.js</a> ❌
|
```
|
||||||
**2** tests were completed in **82ms** with **0** passed, **1** failed and **1** skipped.
|
|
||||||
|
|
||||||
|Result|Test|Time|
|
|
||||||
|:---:|:---|---:|
|
|
||||||
|❌|Timeout test|4ms|
|
|
||||||
|✖️|Skipped test|0ms|
|
|
||||||
@@ -1,182 +1,182 @@
|
|||||||

|

|
||||||
## <a id="user-content-r0" href="#r0">fixtures/external/jest/jest-test-results.xml</a> ❌
|
## ❌ <a id="user-content-r0" href="#r0">fixtures/external/jest/jest-test-results.xml</a>
|
||||||
**4239** tests were completed in **165.872s** with **4207** passed, **2** failed and **30** skipped.
|
**4239** tests were completed in **166s** with **4207** passed, **2** failed and **30** skipped.
|
||||||
|Test suite|Passed|Failed|Skipped|Time|
|
|Test suite|Passed|Failed|Skipped|Time|
|
||||||
|:---|---:|---:|---:|---:|
|
|:---|---:|---:|---:|---:|
|
||||||
|e2e/__tests__/asyncAndCallback.test.ts|1✔️|||746ms|
|
|e2e/__tests__/asyncAndCallback.test.ts|1✔️|||746ms|
|
||||||
|e2e/__tests__/asyncRegenerator.test.ts|1✔️|||4.127s|
|
|e2e/__tests__/asyncRegenerator.test.ts|1✔️|||4s|
|
||||||
|e2e/__tests__/autoClearMocks.test.ts|2✔️|||1.681s|
|
|e2e/__tests__/autoClearMocks.test.ts|2✔️|||2s|
|
||||||
|e2e/__tests__/autoResetMocks.test.ts|2✔️|||1.666s|
|
|e2e/__tests__/autoResetMocks.test.ts|2✔️|||2s|
|
||||||
|e2e/__tests__/autoRestoreMocks.test.ts|2✔️|||1.797s|
|
|e2e/__tests__/autoRestoreMocks.test.ts|2✔️|||2s|
|
||||||
|e2e/__tests__/babelPluginJestHoist.test.ts|1✔️|||6.249s|
|
|e2e/__tests__/babelPluginJestHoist.test.ts|1✔️|||6s|
|
||||||
|e2e/__tests__/badSourceMap.test.ts|1✔️|||858ms|
|
|e2e/__tests__/badSourceMap.test.ts|1✔️|||858ms|
|
||||||
|e2e/__tests__/beforeAllFiltered.ts|1✔️|||958ms|
|
|e2e/__tests__/beforeAllFiltered.ts|1✔️|||958ms|
|
||||||
|e2e/__tests__/beforeEachQueue.ts|1✔️||1✖️|55ms|
|
|e2e/__tests__/beforeEachQueue.ts|1✔️||1✖️|55ms|
|
||||||
|e2e/__tests__/callDoneTwice.test.ts|1✔️|||882ms|
|
|e2e/__tests__/callDoneTwice.test.ts|1✔️|||882ms|
|
||||||
|e2e/__tests__/chaiAssertionLibrary.ts|1✔️|||1.902s|
|
|e2e/__tests__/chaiAssertionLibrary.ts|1✔️|||2s|
|
||||||
|e2e/__tests__/circularInequality.test.ts|1✔️|||1.451s|
|
|e2e/__tests__/circularInequality.test.ts|1✔️|||1s|
|
||||||
|e2e/__tests__/circusConcurrentEach.test.ts|2✔️|||1.591s|
|
|e2e/__tests__/circusConcurrentEach.test.ts|2✔️|||2s|
|
||||||
|e2e/__tests__/circusDeclarationErrors.test.ts|1✔️|||869ms|
|
|e2e/__tests__/circusDeclarationErrors.test.ts|1✔️|||869ms|
|
||||||
|e2e/__tests__/clearCache.test.ts|2✔️|||1.004s|
|
|e2e/__tests__/clearCache.test.ts|2✔️|||1s|
|
||||||
|e2e/__tests__/cliHandlesExactFilenames.test.ts|2✔️|||1.230s|
|
|e2e/__tests__/cliHandlesExactFilenames.test.ts|2✔️|||1s|
|
||||||
|e2e/__tests__/compareDomNodes.test.ts|1✔️|||1.407s|
|
|e2e/__tests__/compareDomNodes.test.ts|1✔️|||1s|
|
||||||
|e2e/__tests__/config.test.ts|6✔️|||3.945s|
|
|e2e/__tests__/config.test.ts|6✔️|||4s|
|
||||||
|e2e/__tests__/console.test.ts|7✔️|||8.072s|
|
|e2e/__tests__/console.test.ts|7✔️|||8s|
|
||||||
|e2e/__tests__/consoleAfterTeardown.test.ts|1✔️|||1.341s|
|
|e2e/__tests__/consoleAfterTeardown.test.ts|1✔️|||1s|
|
||||||
|e2e/__tests__/consoleLogOutputWhenRunInBand.test.ts|1✔️|||793ms|
|
|e2e/__tests__/consoleLogOutputWhenRunInBand.test.ts|1✔️|||793ms|
|
||||||
|e2e/__tests__/coverageHandlebars.test.ts|1✔️|||1.873s|
|
|e2e/__tests__/coverageHandlebars.test.ts|1✔️|||2s|
|
||||||
|e2e/__tests__/coverageRemapping.test.ts|1✔️|||12.701s|
|
|e2e/__tests__/coverageRemapping.test.ts|1✔️|||13s|
|
||||||
|e2e/__tests__/coverageReport.test.ts|12✔️|||22.264s|
|
|e2e/__tests__/coverageReport.test.ts|12✔️|||22s|
|
||||||
|e2e/__tests__/coverageThreshold.test.ts|5✔️|||4.868s|
|
|e2e/__tests__/coverageThreshold.test.ts|5✔️|||5s|
|
||||||
|e2e/__tests__/coverageTransformInstrumented.test.ts|1✔️|||5.029s|
|
|e2e/__tests__/coverageTransformInstrumented.test.ts|1✔️|||5s|
|
||||||
|e2e/__tests__/coverageWithoutTransform.test.ts|1✔️|||1.075s|
|
|e2e/__tests__/coverageWithoutTransform.test.ts|1✔️|||1s|
|
||||||
|e2e/__tests__/createProcessObject.test.ts|1✔️|||908ms|
|
|e2e/__tests__/createProcessObject.test.ts|1✔️|||908ms|
|
||||||
|e2e/__tests__/customInlineSnapshotMatchers.test.ts|1✔️|||2.206s|
|
|e2e/__tests__/customInlineSnapshotMatchers.test.ts|1✔️|||2s|
|
||||||
|e2e/__tests__/customMatcherStackTrace.test.ts|2✔️|||1.539s|
|
|e2e/__tests__/customMatcherStackTrace.test.ts|2✔️|||2s|
|
||||||
|e2e/__tests__/customReporters.test.ts|9✔️|||6.553s|
|
|e2e/__tests__/customReporters.test.ts|9✔️|||7s|
|
||||||
|e2e/__tests__/customResolver.test.ts|1✔️|||826ms|
|
|e2e/__tests__/customResolver.test.ts|1✔️|||826ms|
|
||||||
|e2e/__tests__/customTestSequencers.test.ts|3✔️|||2.757s|
|
|e2e/__tests__/customTestSequencers.test.ts|3✔️|||3s|
|
||||||
|e2e/__tests__/debug.test.ts|1✔️|||899ms|
|
|e2e/__tests__/debug.test.ts|1✔️|||899ms|
|
||||||
|e2e/__tests__/declarationErrors.test.ts|3✔️|||2.389s|
|
|e2e/__tests__/declarationErrors.test.ts|3✔️|||2s|
|
||||||
|e2e/__tests__/dependencyClash.test.ts|1✔️|||833ms|
|
|e2e/__tests__/dependencyClash.test.ts|1✔️|||833ms|
|
||||||
|e2e/__tests__/detectOpenHandles.ts|8✔️|||7.528s|
|
|e2e/__tests__/detectOpenHandles.ts|8✔️|||8s|
|
||||||
|e2e/__tests__/domDiffing.test.ts|1✔️|||1.361s|
|
|e2e/__tests__/domDiffing.test.ts|1✔️|||1s|
|
||||||
|e2e/__tests__/doneInHooks.test.ts|1✔️|||855ms|
|
|e2e/__tests__/doneInHooks.test.ts|1✔️|||855ms|
|
||||||
|e2e/__tests__/dynamicRequireDependencies.ts|1✔️|||847ms|
|
|e2e/__tests__/dynamicRequireDependencies.ts|1✔️|||847ms|
|
||||||
|e2e/__tests__/each.test.ts|7✔️|||4.721s|
|
|e2e/__tests__/each.test.ts|7✔️|||5s|
|
||||||
|e2e/__tests__/emptyDescribeWithHooks.test.ts|4✔️|||2.886s|
|
|e2e/__tests__/emptyDescribeWithHooks.test.ts|4✔️|||3s|
|
||||||
|e2e/__tests__/emptySuiteError.test.ts|1✔️|||885ms|
|
|e2e/__tests__/emptySuiteError.test.ts|1✔️|||885ms|
|
||||||
|e2e/__tests__/env.test.ts|6✔️|||5.221s|
|
|e2e/__tests__/env.test.ts|6✔️|||5s|
|
||||||
|e2e/__tests__/environmentAfterTeardown.test.ts|1✔️|||892ms|
|
|e2e/__tests__/environmentAfterTeardown.test.ts|1✔️|||892ms|
|
||||||
|e2e/__tests__/errorOnDeprecated.test.ts|1✔️||24✖️|56ms|
|
|e2e/__tests__/errorOnDeprecated.test.ts|1✔️||24✖️|56ms|
|
||||||
|e2e/__tests__/esmConfigFile.test.ts|3✔️|||526ms|
|
|e2e/__tests__/esmConfigFile.test.ts|3✔️|||526ms|
|
||||||
|e2e/__tests__/executeTestsOnceInMpr.ts|1✔️|||976ms|
|
|e2e/__tests__/executeTestsOnceInMpr.ts|1✔️|||976ms|
|
||||||
|e2e/__tests__/existentRoots.test.ts|4✔️|||627ms|
|
|e2e/__tests__/existentRoots.test.ts|4✔️|||627ms|
|
||||||
|e2e/__tests__/expectAsyncMatcher.test.ts|2✔️|||2.732s|
|
|e2e/__tests__/expectAsyncMatcher.test.ts|2✔️|||3s|
|
||||||
|e2e/__tests__/expectInVm.test.ts|1✔️|||1.527s|
|
|e2e/__tests__/expectInVm.test.ts|1✔️|||2s|
|
||||||
|e2e/__tests__/extraGlobals.test.ts|1✔️|||1.011s|
|
|e2e/__tests__/extraGlobals.test.ts|1✔️|||1s|
|
||||||
|e2e/__tests__/failureDetailsProperty.test.ts|1✔️|||907ms|
|
|e2e/__tests__/failureDetailsProperty.test.ts|1✔️|||907ms|
|
||||||
|e2e/__tests__/failures.test.ts|7✔️|||10.353s|
|
|e2e/__tests__/failures.test.ts|7✔️|||10s|
|
||||||
|e2e/__tests__/fakePromises.test.ts|2✔️|||1.716s|
|
|e2e/__tests__/fakePromises.test.ts|2✔️|||2s|
|
||||||
|e2e/__tests__/fatalWorkerError.test.ts|1✔️|||3.167s|
|
|e2e/__tests__/fatalWorkerError.test.ts|1✔️|||3s|
|
||||||
|e2e/__tests__/filter.test.ts|7✔️|||5.422s|
|
|e2e/__tests__/filter.test.ts|7✔️|||5s|
|
||||||
|e2e/__tests__/findRelatedFiles.test.ts|5✔️|||6.230s|
|
|e2e/__tests__/findRelatedFiles.test.ts|5✔️|||6s|
|
||||||
|e2e/__tests__/focusedTests.test.ts|1✔️|||888ms|
|
|e2e/__tests__/focusedTests.test.ts|1✔️|||888ms|
|
||||||
|e2e/__tests__/forceExit.test.ts|1✔️|||2.208s|
|
|e2e/__tests__/forceExit.test.ts|1✔️|||2s|
|
||||||
|e2e/__tests__/generatorMock.test.ts|1✔️|||1.027s|
|
|e2e/__tests__/generatorMock.test.ts|1✔️|||1s|
|
||||||
|e2e/__tests__/global-mutation.test.ts|1✔️|||40ms|
|
|e2e/__tests__/global-mutation.test.ts|1✔️|||40ms|
|
||||||
|e2e/__tests__/global.test.ts|1✔️|||31ms|
|
|e2e/__tests__/global.test.ts|1✔️|||31ms|
|
||||||
|e2e/__tests__/globals.test.ts|10✔️|||7.505s|
|
|e2e/__tests__/globals.test.ts|10✔️|||8s|
|
||||||
|e2e/__tests__/globalSetup.test.ts|10✔️|||13.926s|
|
|e2e/__tests__/globalSetup.test.ts|10✔️|||14s|
|
||||||
|e2e/__tests__/globalTeardown.test.ts|7✔️|||11.886s|
|
|e2e/__tests__/globalTeardown.test.ts|7✔️|||12s|
|
||||||
|e2e/__tests__/hasteMapMockChanged.test.ts|1✔️|||379ms|
|
|e2e/__tests__/hasteMapMockChanged.test.ts|1✔️|||379ms|
|
||||||
|e2e/__tests__/hasteMapSha1.test.ts|1✔️|||298ms|
|
|e2e/__tests__/hasteMapSha1.test.ts|1✔️|||298ms|
|
||||||
|e2e/__tests__/hasteMapSize.test.ts|2✔️|||397ms|
|
|e2e/__tests__/hasteMapSize.test.ts|2✔️|||397ms|
|
||||||
|e2e/__tests__/importedGlobals.test.ts|1✔️|||1.043s|
|
|e2e/__tests__/importedGlobals.test.ts|1✔️|||1s|
|
||||||
|e2e/__tests__/injectGlobals.test.ts|2✔️|||1.860s|
|
|e2e/__tests__/injectGlobals.test.ts|2✔️|||2s|
|
||||||
|e2e/__tests__/jasmineAsync.test.ts|15✔️|||28.291s|
|
|e2e/__tests__/jasmineAsync.test.ts|15✔️|||28s|
|
||||||
|e2e/__tests__/jasmineAsyncWithPendingDuringTest.ts|1✔️||1✖️|72ms|
|
|e2e/__tests__/jasmineAsyncWithPendingDuringTest.ts|1✔️||1✖️|72ms|
|
||||||
|e2e/__tests__/jest.config.js.test.ts|3✔️|||2.134s|
|
|e2e/__tests__/jest.config.js.test.ts|3✔️|||2s|
|
||||||
|e2e/__tests__/jest.config.ts.test.ts|5✔️|||14.322s|
|
|e2e/__tests__/jest.config.ts.test.ts|5✔️|||14s|
|
||||||
|[e2e/__tests__/jestChangedFiles.test.ts](#r0s75)|9✔️|1❌||9.045s|
|
|[e2e/__tests__/jestChangedFiles.test.ts](#r0s75)|9✔️|1❌||9s|
|
||||||
|e2e/__tests__/jestEnvironmentJsdom.test.ts|1✔️|||1.744s|
|
|e2e/__tests__/jestEnvironmentJsdom.test.ts|1✔️|||2s|
|
||||||
|e2e/__tests__/jestRequireActual.test.ts|1✔️|||1.665s|
|
|e2e/__tests__/jestRequireActual.test.ts|1✔️|||2s|
|
||||||
|e2e/__tests__/jestRequireMock.test.ts|1✔️|||2.119s|
|
|e2e/__tests__/jestRequireMock.test.ts|1✔️|||2s|
|
||||||
|e2e/__tests__/json.test.ts|2✔️|||29ms|
|
|e2e/__tests__/json.test.ts|2✔️|||29ms|
|
||||||
|e2e/__tests__/jsonReporter.test.ts|2✔️|||1.514s|
|
|e2e/__tests__/jsonReporter.test.ts|2✔️|||2s|
|
||||||
|e2e/__tests__/lifecycles.ts|1✔️|||861ms|
|
|e2e/__tests__/lifecycles.ts|1✔️|||861ms|
|
||||||
|e2e/__tests__/listTests.test.ts|2✔️|||945ms|
|
|e2e/__tests__/listTests.test.ts|2✔️|||945ms|
|
||||||
|e2e/__tests__/locationInResults.test.ts|2✔️|||1.764s|
|
|e2e/__tests__/locationInResults.test.ts|2✔️|||2s|
|
||||||
|e2e/__tests__/logHeapUsage.test.ts|1✔️|||884ms|
|
|e2e/__tests__/logHeapUsage.test.ts|1✔️|||884ms|
|
||||||
|e2e/__tests__/mockNames.test.ts|8✔️|||6.771s|
|
|e2e/__tests__/mockNames.test.ts|8✔️|||7s|
|
||||||
|e2e/__tests__/modernFakeTimers.test.ts|2✔️|||1.680s|
|
|e2e/__tests__/modernFakeTimers.test.ts|2✔️|||2s|
|
||||||
|e2e/__tests__/moduleNameMapper.test.ts|5✔️|||5.395s|
|
|e2e/__tests__/moduleNameMapper.test.ts|5✔️|||5s|
|
||||||
|e2e/__tests__/moduleParentNullInTest.ts|1✔️|||886ms|
|
|e2e/__tests__/moduleParentNullInTest.ts|1✔️|||886ms|
|
||||||
|e2e/__tests__/multiProjectRunner.test.ts|14✔️|||16.360s|
|
|e2e/__tests__/multiProjectRunner.test.ts|14✔️|||16s|
|
||||||
|e2e/__tests__/nativeAsyncMock.test.ts|1✔️|||55ms|
|
|e2e/__tests__/nativeAsyncMock.test.ts|1✔️|||55ms|
|
||||||
|e2e/__tests__/nativeEsm.test.ts|2✔️||1✖️|905ms|
|
|e2e/__tests__/nativeEsm.test.ts|2✔️||1✖️|905ms|
|
||||||
|e2e/__tests__/nativeEsmTypescript.test.ts|1✔️|||956ms|
|
|e2e/__tests__/nativeEsmTypescript.test.ts|1✔️|||956ms|
|
||||||
|e2e/__tests__/nestedEventLoop.test.ts|1✔️|||1.422s|
|
|e2e/__tests__/nestedEventLoop.test.ts|1✔️|||1s|
|
||||||
|e2e/__tests__/nestedTestDefinitions.test.ts|4✔️|||4.641s|
|
|e2e/__tests__/nestedTestDefinitions.test.ts|4✔️|||5s|
|
||||||
|e2e/__tests__/nodePath.test.ts|1✔️|||866ms|
|
|e2e/__tests__/nodePath.test.ts|1✔️|||866ms|
|
||||||
|e2e/__tests__/noTestFound.test.ts|2✔️|||1.063s|
|
|e2e/__tests__/noTestFound.test.ts|2✔️|||1s|
|
||||||
|e2e/__tests__/noTestsFound.test.ts|5✔️|||2.739s|
|
|e2e/__tests__/noTestsFound.test.ts|5✔️|||3s|
|
||||||
|[e2e/__tests__/onlyChanged.test.ts](#r0s98)|8✔️|1❌||22.281s|
|
|[e2e/__tests__/onlyChanged.test.ts](#r0s98)|8✔️|1❌||22s|
|
||||||
|e2e/__tests__/onlyFailuresNonWatch.test.ts|1✔️|||2.893s|
|
|e2e/__tests__/onlyFailuresNonWatch.test.ts|1✔️|||3s|
|
||||||
|e2e/__tests__/overrideGlobals.test.ts|2✔️|||2.046s|
|
|e2e/__tests__/overrideGlobals.test.ts|2✔️|||2s|
|
||||||
|e2e/__tests__/pnp.test.ts|1✔️|||2.715s|
|
|e2e/__tests__/pnp.test.ts|1✔️|||3s|
|
||||||
|e2e/__tests__/presets.test.ts|2✔️|||1.966s|
|
|e2e/__tests__/presets.test.ts|2✔️|||2s|
|
||||||
|e2e/__tests__/processExit.test.ts|1✔️|||1.070s|
|
|e2e/__tests__/processExit.test.ts|1✔️|||1s|
|
||||||
|e2e/__tests__/promiseReject.test.ts|1✔️|||967ms|
|
|e2e/__tests__/promiseReject.test.ts|1✔️|||967ms|
|
||||||
|e2e/__tests__/regexCharInPath.test.ts|1✔️|||962ms|
|
|e2e/__tests__/regexCharInPath.test.ts|1✔️|||962ms|
|
||||||
|e2e/__tests__/requireAfterTeardown.test.ts|1✔️|||921ms|
|
|e2e/__tests__/requireAfterTeardown.test.ts|1✔️|||921ms|
|
||||||
|e2e/__tests__/requireMain.test.ts|1✔️|||1.137s|
|
|e2e/__tests__/requireMain.test.ts|1✔️|||1s|
|
||||||
|e2e/__tests__/requireMainAfterCreateRequire.test.ts|1✔️|||966ms|
|
|e2e/__tests__/requireMainAfterCreateRequire.test.ts|1✔️|||966ms|
|
||||||
|e2e/__tests__/requireMainIsolateModules.test.ts|1✔️|||976ms|
|
|e2e/__tests__/requireMainIsolateModules.test.ts|1✔️|||976ms|
|
||||||
|e2e/__tests__/requireMainResetModules.test.ts|2✔️|||1.961s|
|
|e2e/__tests__/requireMainResetModules.test.ts|2✔️|||2s|
|
||||||
|e2e/__tests__/requireV8Module.test.ts|1✔️|||30ms|
|
|e2e/__tests__/requireV8Module.test.ts|1✔️|||30ms|
|
||||||
|e2e/__tests__/resetModules.test.ts|1✔️|||926ms|
|
|e2e/__tests__/resetModules.test.ts|1✔️|||926ms|
|
||||||
|e2e/__tests__/resolve.test.ts|1✔️|||1.863s|
|
|e2e/__tests__/resolve.test.ts|1✔️|||2s|
|
||||||
|e2e/__tests__/resolveGetPaths.test.ts|1✔️|||1.155s|
|
|e2e/__tests__/resolveGetPaths.test.ts|1✔️|||1s|
|
||||||
|e2e/__tests__/resolveNodeModule.test.ts|1✔️|||943ms|
|
|e2e/__tests__/resolveNodeModule.test.ts|1✔️|||943ms|
|
||||||
|e2e/__tests__/resolveNoFileExtensions.test.ts|2✔️|||1.263s|
|
|e2e/__tests__/resolveNoFileExtensions.test.ts|2✔️|||1s|
|
||||||
|e2e/__tests__/resolveWithPaths.test.ts|1✔️|||1.170s|
|
|e2e/__tests__/resolveWithPaths.test.ts|1✔️|||1s|
|
||||||
|e2e/__tests__/runProgrammatically.test.ts|2✔️|||575ms|
|
|e2e/__tests__/runProgrammatically.test.ts|2✔️|||575ms|
|
||||||
|e2e/__tests__/runTestsByPath.test.ts|1✔️|||1.999s|
|
|e2e/__tests__/runTestsByPath.test.ts|1✔️|||2s|
|
||||||
|e2e/__tests__/runtimeInternalModuleRegistry.test.ts|1✔️|||1.202s|
|
|e2e/__tests__/runtimeInternalModuleRegistry.test.ts|1✔️|||1s|
|
||||||
|e2e/__tests__/selectProjects.test.ts|18✔️|||5.236s|
|
|e2e/__tests__/selectProjects.test.ts|18✔️|||5s|
|
||||||
|e2e/__tests__/setImmediate.test.ts|1✔️|||904ms|
|
|e2e/__tests__/setImmediate.test.ts|1✔️|||904ms|
|
||||||
|e2e/__tests__/setupFilesAfterEnvConfig.test.ts|2✔️|||1.967s|
|
|e2e/__tests__/setupFilesAfterEnvConfig.test.ts|2✔️|||2s|
|
||||||
|e2e/__tests__/showConfig.test.ts|1✔️|||195ms|
|
|e2e/__tests__/showConfig.test.ts|1✔️|||195ms|
|
||||||
|e2e/__tests__/skipBeforeAfterAll.test.ts|1✔️|||1.061s|
|
|e2e/__tests__/skipBeforeAfterAll.test.ts|1✔️|||1s|
|
||||||
|e2e/__tests__/snapshot-unknown.test.ts|1✔️|||838ms|
|
|e2e/__tests__/snapshot-unknown.test.ts|1✔️|||838ms|
|
||||||
|e2e/__tests__/snapshot.test.ts|9✔️|||13.899s|
|
|e2e/__tests__/snapshot.test.ts|9✔️|||14s|
|
||||||
|e2e/__tests__/snapshotMockFs.test.ts|1✔️|||883ms|
|
|e2e/__tests__/snapshotMockFs.test.ts|1✔️|||883ms|
|
||||||
|e2e/__tests__/snapshotResolver.test.ts|1✔️|||823ms|
|
|e2e/__tests__/snapshotResolver.test.ts|1✔️|||823ms|
|
||||||
|e2e/__tests__/snapshotSerializers.test.ts|2✔️|||2.065s|
|
|e2e/__tests__/snapshotSerializers.test.ts|2✔️|||2s|
|
||||||
|e2e/__tests__/stackTrace.test.ts|7✔️|||4.725s|
|
|e2e/__tests__/stackTrace.test.ts|7✔️|||5s|
|
||||||
|e2e/__tests__/stackTraceNoCaptureStackTrace.test.ts|1✔️|||899ms|
|
|e2e/__tests__/stackTraceNoCaptureStackTrace.test.ts|1✔️|||899ms|
|
||||||
|e2e/__tests__/stackTraceSourceMaps.test.ts|1✔️|||2.185s|
|
|e2e/__tests__/stackTraceSourceMaps.test.ts|1✔️|||2s|
|
||||||
|e2e/__tests__/stackTraceSourceMapsWithCoverage.test.ts|1✔️|||2.444s|
|
|e2e/__tests__/stackTraceSourceMapsWithCoverage.test.ts|1✔️|||2s|
|
||||||
|e2e/__tests__/supportsDashedArgs.ts|2✔️|||968ms|
|
|e2e/__tests__/supportsDashedArgs.ts|2✔️|||968ms|
|
||||||
|e2e/__tests__/symbol.test.ts|1✔️|||49ms|
|
|e2e/__tests__/symbol.test.ts|1✔️|||49ms|
|
||||||
|e2e/__tests__/testEnvironment.test.ts|1✔️|||1.628s|
|
|e2e/__tests__/testEnvironment.test.ts|1✔️|||2s|
|
||||||
|e2e/__tests__/testEnvironmentAsync.test.ts|1✔️|||1.493s|
|
|e2e/__tests__/testEnvironmentAsync.test.ts|1✔️|||1s|
|
||||||
|e2e/__tests__/testEnvironmentCircus.test.ts|1✔️|||1.501s|
|
|e2e/__tests__/testEnvironmentCircus.test.ts|1✔️|||2s|
|
||||||
|e2e/__tests__/testEnvironmentCircusAsync.test.ts|1✔️|||1.507s|
|
|e2e/__tests__/testEnvironmentCircusAsync.test.ts|1✔️|||2s|
|
||||||
|e2e/__tests__/testFailureExitCode.test.ts|2✔️|||4.476s|
|
|e2e/__tests__/testFailureExitCode.test.ts|2✔️|||4s|
|
||||||
|e2e/__tests__/testInRoot.test.ts|1✔️|||1.009s|
|
|e2e/__tests__/testInRoot.test.ts|1✔️|||1s|
|
||||||
|e2e/__tests__/testNamePattern.test.ts|1✔️|||859ms|
|
|e2e/__tests__/testNamePattern.test.ts|1✔️|||859ms|
|
||||||
|e2e/__tests__/testNamePatternSkipped.test.ts|1✔️|||991ms|
|
|e2e/__tests__/testNamePatternSkipped.test.ts|1✔️|||991ms|
|
||||||
|e2e/__tests__/testPathPatternReporterMessage.test.ts|1✔️|||3.076s|
|
|e2e/__tests__/testPathPatternReporterMessage.test.ts|1✔️|||3s|
|
||||||
|e2e/__tests__/testResultsProcessor.test.ts|1✔️|||910ms|
|
|e2e/__tests__/testResultsProcessor.test.ts|1✔️|||910ms|
|
||||||
|e2e/__tests__/testRetries.test.ts|4✔️|||3.277s|
|
|e2e/__tests__/testRetries.test.ts|4✔️|||3s|
|
||||||
|e2e/__tests__/testTodo.test.ts|5✔️|||3.573s|
|
|e2e/__tests__/testTodo.test.ts|5✔️|||4s|
|
||||||
|e2e/__tests__/timeouts.test.ts|4✔️|||4.029s|
|
|e2e/__tests__/timeouts.test.ts|4✔️|||4s|
|
||||||
|e2e/__tests__/timeoutsLegacy.test.ts|1✔️||3✖️|71ms|
|
|e2e/__tests__/timeoutsLegacy.test.ts|1✔️||3✖️|71ms|
|
||||||
|e2e/__tests__/timerResetMocks.test.ts|2✔️|||1.878s|
|
|e2e/__tests__/timerResetMocks.test.ts|2✔️|||2s|
|
||||||
|e2e/__tests__/timerUseRealTimers.test.ts|1✔️|||1.018s|
|
|e2e/__tests__/timerUseRealTimers.test.ts|1✔️|||1s|
|
||||||
|e2e/__tests__/toMatchInlineSnapshot.test.ts|12✔️|||23.917s|
|
|e2e/__tests__/toMatchInlineSnapshot.test.ts|12✔️|||24s|
|
||||||
|e2e/__tests__/toMatchInlineSnapshotWithRetries.test.ts|3✔️|||4.670s|
|
|e2e/__tests__/toMatchInlineSnapshotWithRetries.test.ts|3✔️|||5s|
|
||||||
|e2e/__tests__/toMatchSnapshot.test.ts|9✔️|||17.025s|
|
|e2e/__tests__/toMatchSnapshot.test.ts|9✔️|||17s|
|
||||||
|e2e/__tests__/toMatchSnapshotWithRetries.test.ts|2✔️|||4.435s|
|
|e2e/__tests__/toMatchSnapshotWithRetries.test.ts|2✔️|||4s|
|
||||||
|e2e/__tests__/toMatchSnapshotWithStringSerializer.test.ts|3✔️|||3.544s|
|
|e2e/__tests__/toMatchSnapshotWithStringSerializer.test.ts|3✔️|||4s|
|
||||||
|e2e/__tests__/toThrowErrorMatchingInlineSnapshot.test.ts|4✔️|||3.562s|
|
|e2e/__tests__/toThrowErrorMatchingInlineSnapshot.test.ts|4✔️|||4s|
|
||||||
|e2e/__tests__/toThrowErrorMatchingSnapshot.test.ts|5✔️|||3.524s|
|
|e2e/__tests__/toThrowErrorMatchingSnapshot.test.ts|5✔️|||4s|
|
||||||
|e2e/__tests__/transform.test.ts|16✔️|||26.740s|
|
|e2e/__tests__/transform.test.ts|16✔️|||27s|
|
||||||
|e2e/__tests__/transformLinkedModules.test.ts|1✔️|||783ms|
|
|e2e/__tests__/transformLinkedModules.test.ts|1✔️|||783ms|
|
||||||
|e2e/__tests__/typescriptCoverage.test.ts|1✔️|||2.893s|
|
|e2e/__tests__/typescriptCoverage.test.ts|1✔️|||3s|
|
||||||
|e2e/__tests__/unexpectedToken.test.ts|3✔️|||3.411s|
|
|e2e/__tests__/unexpectedToken.test.ts|3✔️|||3s|
|
||||||
|e2e/__tests__/useStderr.test.ts|1✔️|||1.352s|
|
|e2e/__tests__/useStderr.test.ts|1✔️|||1s|
|
||||||
|e2e/__tests__/v8Coverage.test.ts|2✔️|||2.412s|
|
|e2e/__tests__/v8Coverage.test.ts|2✔️|||2s|
|
||||||
|e2e/__tests__/verbose.test.ts|1✔️|||683ms|
|
|e2e/__tests__/verbose.test.ts|1✔️|||683ms|
|
||||||
|e2e/__tests__/version.test.ts|1✔️|||138ms|
|
|e2e/__tests__/version.test.ts|1✔️|||138ms|
|
||||||
|e2e/__tests__/watchModeNoAccess.test.ts|1✔️|||4.370s|
|
|e2e/__tests__/watchModeNoAccess.test.ts|1✔️|||4s|
|
||||||
|e2e/__tests__/watchModeOnlyFailed.test.ts|1✔️|||1.394s|
|
|e2e/__tests__/watchModeOnlyFailed.test.ts|1✔️|||1s|
|
||||||
|e2e/__tests__/watchModePatterns.test.ts|2✔️|||3.503s|
|
|e2e/__tests__/watchModePatterns.test.ts|2✔️|||4s|
|
||||||
|e2e/__tests__/watchModeUpdateSnapshot.test.ts|1✔️|||1.075s|
|
|e2e/__tests__/watchModeUpdateSnapshot.test.ts|1✔️|||1s|
|
||||||
|e2e/__tests__/workerForceExit.test.ts|2✔️|||4.751s|
|
|e2e/__tests__/workerForceExit.test.ts|2✔️|||5s|
|
||||||
|e2e/__tests__/wrongEnv.test.ts|5✔️|||3.877s|
|
|e2e/__tests__/wrongEnv.test.ts|5✔️|||4s|
|
||||||
|e2e/custom-test-sequencer/a.test.js|1✔️|||29ms|
|
|e2e/custom-test-sequencer/a.test.js|1✔️|||29ms|
|
||||||
|e2e/custom-test-sequencer/b.test.js|1✔️|||21ms|
|
|e2e/custom-test-sequencer/b.test.js|1✔️|||21ms|
|
||||||
|e2e/custom-test-sequencer/c.test.js|1✔️|||42ms|
|
|e2e/custom-test-sequencer/c.test.js|1✔️|||42ms|
|
||||||
@@ -206,7 +206,7 @@
|
|||||||
|examples/module-mock/__tests__/mock_per_test.js|2✔️|||116ms|
|
|examples/module-mock/__tests__/mock_per_test.js|2✔️|||116ms|
|
||||||
|examples/module-mock/__tests__/partial_mock.js|1✔️|||215ms|
|
|examples/module-mock/__tests__/partial_mock.js|1✔️|||215ms|
|
||||||
|examples/mongodb/__test__/db.test.js|1✔️|||236ms|
|
|examples/mongodb/__test__/db.test.js|1✔️|||236ms|
|
||||||
|examples/react-native/__tests__/intro.test.js|4✔️|||8.559s|
|
|examples/react-native/__tests__/intro.test.js|4✔️|||9s|
|
||||||
|examples/react-testing-library/__tests__/CheckboxWithLabel-test.js|1✔️|||469ms|
|
|examples/react-testing-library/__tests__/CheckboxWithLabel-test.js|1✔️|||469ms|
|
||||||
|examples/react/__tests__/CheckboxWithLabel-test.js|1✔️|||256ms|
|
|examples/react/__tests__/CheckboxWithLabel-test.js|1✔️|||256ms|
|
||||||
|examples/snapshot/__tests__/clock.react.test.js|1✔️|||62ms|
|
|examples/snapshot/__tests__/clock.react.test.js|1✔️|||62ms|
|
||||||
@@ -228,7 +228,7 @@
|
|||||||
|packages/expect/src/__tests__/isError.test.ts|4✔️|||43ms|
|
|packages/expect/src/__tests__/isError.test.ts|4✔️|||43ms|
|
||||||
|packages/expect/src/__tests__/matchers-toContain.property.test.ts|2✔️|||236ms|
|
|packages/expect/src/__tests__/matchers-toContain.property.test.ts|2✔️|||236ms|
|
||||||
|packages/expect/src/__tests__/matchers-toContainEqual.property.test.ts|2✔️|||287ms|
|
|packages/expect/src/__tests__/matchers-toContainEqual.property.test.ts|2✔️|||287ms|
|
||||||
|packages/expect/src/__tests__/matchers-toEqual.property.test.ts|2✔️|||1.062s|
|
|packages/expect/src/__tests__/matchers-toEqual.property.test.ts|2✔️|||1s|
|
||||||
|packages/expect/src/__tests__/matchers-toStrictEqual.property.test.ts|3✔️|||394ms|
|
|packages/expect/src/__tests__/matchers-toStrictEqual.property.test.ts|3✔️|||394ms|
|
||||||
|packages/expect/src/__tests__/matchers.test.js|592✔️|||862ms|
|
|packages/expect/src/__tests__/matchers.test.js|592✔️|||862ms|
|
||||||
|packages/expect/src/__tests__/spyMatchers.test.ts|248✔️|||395ms|
|
|packages/expect/src/__tests__/spyMatchers.test.ts|248✔️|||395ms|
|
||||||
@@ -237,11 +237,11 @@
|
|||||||
|packages/expect/src/__tests__/toEqual-dom.test.ts|12✔️|||99ms|
|
|packages/expect/src/__tests__/toEqual-dom.test.ts|12✔️|||99ms|
|
||||||
|packages/expect/src/__tests__/toThrowMatchers.test.ts|98✔️|||257ms|
|
|packages/expect/src/__tests__/toThrowMatchers.test.ts|98✔️|||257ms|
|
||||||
|packages/expect/src/__tests__/utils.test.ts|41✔️|||147ms|
|
|packages/expect/src/__tests__/utils.test.ts|41✔️|||147ms|
|
||||||
|packages/jest-circus/src/__tests__/afterAll.test.ts|6✔️|||5.755s|
|
|packages/jest-circus/src/__tests__/afterAll.test.ts|6✔️|||6s|
|
||||||
|packages/jest-circus/src/__tests__/baseTest.test.ts|2✔️|||2.902s|
|
|packages/jest-circus/src/__tests__/baseTest.test.ts|2✔️|||3s|
|
||||||
|packages/jest-circus/src/__tests__/circusItTestError.test.ts|8✔️|||300ms|
|
|packages/jest-circus/src/__tests__/circusItTestError.test.ts|8✔️|||300ms|
|
||||||
|packages/jest-circus/src/__tests__/circusItTodoTestError.test.ts|3✔️|||81ms|
|
|packages/jest-circus/src/__tests__/circusItTodoTestError.test.ts|3✔️|||81ms|
|
||||||
|packages/jest-circus/src/__tests__/hooks.test.ts|3✔️|||3.762s|
|
|packages/jest-circus/src/__tests__/hooks.test.ts|3✔️|||4s|
|
||||||
|packages/jest-circus/src/__tests__/hooksError.test.ts|32✔️|||127ms|
|
|packages/jest-circus/src/__tests__/hooksError.test.ts|32✔️|||127ms|
|
||||||
|packages/jest-cli/src/__tests__/cli/args.test.ts|17✔️|||345ms|
|
|packages/jest-cli/src/__tests__/cli/args.test.ts|17✔️|||345ms|
|
||||||
|packages/jest-cli/src/init/__tests__/init.test.js|24✔️|||119ms|
|
|packages/jest-cli/src/init/__tests__/init.test.js|24✔️|||119ms|
|
||||||
@@ -261,12 +261,12 @@
|
|||||||
|packages/jest-core/src/__tests__/getNoTestsFoundMessage.test.js|5✔️|||61ms|
|
|packages/jest-core/src/__tests__/getNoTestsFoundMessage.test.js|5✔️|||61ms|
|
||||||
|packages/jest-core/src/__tests__/globals.test.ts|1✔️|||22ms|
|
|packages/jest-core/src/__tests__/globals.test.ts|1✔️|||22ms|
|
||||||
|packages/jest-core/src/__tests__/runJest.test.js|2✔️|||261ms|
|
|packages/jest-core/src/__tests__/runJest.test.js|2✔️|||261ms|
|
||||||
|packages/jest-core/src/__tests__/SearchSource.test.ts|27✔️|||2.596s|
|
|packages/jest-core/src/__tests__/SearchSource.test.ts|27✔️|||3s|
|
||||||
|packages/jest-core/src/__tests__/SnapshotInteractiveMode.test.js|13✔️|||89ms|
|
|packages/jest-core/src/__tests__/SnapshotInteractiveMode.test.js|13✔️|||89ms|
|
||||||
|packages/jest-core/src/__tests__/TestScheduler.test.js|8✔️|||520ms|
|
|packages/jest-core/src/__tests__/TestScheduler.test.js|8✔️|||520ms|
|
||||||
|packages/jest-core/src/__tests__/testSchedulerHelper.test.js|12✔️|||48ms|
|
|packages/jest-core/src/__tests__/testSchedulerHelper.test.js|12✔️|||48ms|
|
||||||
|packages/jest-core/src/__tests__/watch.test.js|80✔️|||6.755s|
|
|packages/jest-core/src/__tests__/watch.test.js|80✔️|||7s|
|
||||||
|packages/jest-core/src/__tests__/watchFileChanges.test.ts|1✔️|||1.514s|
|
|packages/jest-core/src/__tests__/watchFileChanges.test.ts|1✔️|||2s|
|
||||||
|packages/jest-core/src/__tests__/watchFilenamePatternMode.test.js|2✔️|||165ms|
|
|packages/jest-core/src/__tests__/watchFilenamePatternMode.test.js|2✔️|||165ms|
|
||||||
|packages/jest-core/src/__tests__/watchTestNamePatternMode.test.js|1✔️|||246ms|
|
|packages/jest-core/src/__tests__/watchTestNamePatternMode.test.js|1✔️|||246ms|
|
||||||
|packages/jest-core/src/lib/__tests__/isValidPath.test.ts|3✔️|||166ms|
|
|packages/jest-core/src/lib/__tests__/isValidPath.test.ts|3✔️|||166ms|
|
||||||
@@ -289,7 +289,7 @@
|
|||||||
|packages/jest-globals/src/__tests__/index.ts|1✔️|||533ms|
|
|packages/jest-globals/src/__tests__/index.ts|1✔️|||533ms|
|
||||||
|packages/jest-haste-map/src/__tests__/get_mock_name.test.js|1✔️|||22ms|
|
|packages/jest-haste-map/src/__tests__/get_mock_name.test.js|1✔️|||22ms|
|
||||||
|packages/jest-haste-map/src/__tests__/includes_dotfiles.test.ts|1✔️|||337ms|
|
|packages/jest-haste-map/src/__tests__/includes_dotfiles.test.ts|1✔️|||337ms|
|
||||||
|packages/jest-haste-map/src/__tests__/index.test.js|44✔️|||1.145s|
|
|packages/jest-haste-map/src/__tests__/index.test.js|44✔️|||1s|
|
||||||
|packages/jest-haste-map/src/__tests__/worker.test.js|7✔️|||100ms|
|
|packages/jest-haste-map/src/__tests__/worker.test.js|7✔️|||100ms|
|
||||||
|packages/jest-haste-map/src/crawlers/__tests__/node.test.js|10✔️|||170ms|
|
|packages/jest-haste-map/src/crawlers/__tests__/node.test.js|10✔️|||170ms|
|
||||||
|packages/jest-haste-map/src/crawlers/__tests__/watchman.test.js|8✔️|||153ms|
|
|packages/jest-haste-map/src/crawlers/__tests__/watchman.test.js|8✔️|||153ms|
|
||||||
@@ -318,12 +318,12 @@
|
|||||||
|packages/jest-message-util/src/__tests__/messages.test.ts|11✔️|||205ms|
|
|packages/jest-message-util/src/__tests__/messages.test.ts|11✔️|||205ms|
|
||||||
|packages/jest-mock/src/__tests__/index.test.ts|84✔️|||509ms|
|
|packages/jest-mock/src/__tests__/index.test.ts|84✔️|||509ms|
|
||||||
|packages/jest-regex-util/src/__tests__/index.test.ts|8✔️|||56ms|
|
|packages/jest-regex-util/src/__tests__/index.test.ts|8✔️|||56ms|
|
||||||
|packages/jest-repl/src/__tests__/jest_repl.test.js|1✔️|||1.172s|
|
|packages/jest-repl/src/__tests__/jest_repl.test.js|1✔️|||1s|
|
||||||
|packages/jest-repl/src/__tests__/runtime_cli.test.js|4✔️|||4.094s|
|
|packages/jest-repl/src/__tests__/runtime_cli.test.js|4✔️|||4s|
|
||||||
|packages/jest-reporters/src/__tests__/CoverageReporter.test.js|12✔️|||397ms|
|
|packages/jest-reporters/src/__tests__/CoverageReporter.test.js|12✔️|||397ms|
|
||||||
|packages/jest-reporters/src/__tests__/CoverageWorker.test.js|2✔️|||199ms|
|
|packages/jest-reporters/src/__tests__/CoverageWorker.test.js|2✔️|||199ms|
|
||||||
|packages/jest-reporters/src/__tests__/DefaultReporter.test.js|2✔️|||148ms|
|
|packages/jest-reporters/src/__tests__/DefaultReporter.test.js|2✔️|||148ms|
|
||||||
|packages/jest-reporters/src/__tests__/generateEmptyCoverage.test.js|3✔️|||1.129s|
|
|packages/jest-reporters/src/__tests__/generateEmptyCoverage.test.js|3✔️|||1s|
|
||||||
|packages/jest-reporters/src/__tests__/getResultHeader.test.js|4✔️|||30ms|
|
|packages/jest-reporters/src/__tests__/getResultHeader.test.js|4✔️|||30ms|
|
||||||
|packages/jest-reporters/src/__tests__/getSnapshotStatus.test.js|3✔️|||28ms|
|
|packages/jest-reporters/src/__tests__/getSnapshotStatus.test.js|3✔️|||28ms|
|
||||||
|packages/jest-reporters/src/__tests__/getSnapshotSummary.test.js|4✔️|||49ms|
|
|packages/jest-reporters/src/__tests__/getSnapshotSummary.test.js|4✔️|||49ms|
|
||||||
@@ -334,7 +334,7 @@
|
|||||||
|packages/jest-reporters/src/__tests__/VerboseReporter.test.js|11✔️|||425ms|
|
|packages/jest-reporters/src/__tests__/VerboseReporter.test.js|11✔️|||425ms|
|
||||||
|packages/jest-resolve-dependencies/src/__tests__/dependency_resolver.test.ts|11✔️|||666ms|
|
|packages/jest-resolve-dependencies/src/__tests__/dependency_resolver.test.ts|11✔️|||666ms|
|
||||||
|packages/jest-resolve/src/__tests__/isBuiltinModule.test.ts|4✔️|||36ms|
|
|packages/jest-resolve/src/__tests__/isBuiltinModule.test.ts|4✔️|||36ms|
|
||||||
|packages/jest-resolve/src/__tests__/resolve.test.ts|16✔️|||1.308s|
|
|packages/jest-resolve/src/__tests__/resolve.test.ts|16✔️|||1s|
|
||||||
|packages/jest-runner/src/__tests__/testRunner.test.ts|2✔️|||905ms|
|
|packages/jest-runner/src/__tests__/testRunner.test.ts|2✔️|||905ms|
|
||||||
|packages/jest-runtime/src/__tests__/instrumentation.test.ts|1✔️|||275ms|
|
|packages/jest-runtime/src/__tests__/instrumentation.test.ts|1✔️|||275ms|
|
||||||
|packages/jest-runtime/src/__tests__/runtime_create_mock_from_module.test.js|3✔️|||606ms|
|
|packages/jest-runtime/src/__tests__/runtime_create_mock_from_module.test.js|3✔️|||606ms|
|
||||||
@@ -344,31 +344,31 @@
|
|||||||
|packages/jest-runtime/src/__tests__/runtime_jest_spy_on.test.js|2✔️|||521ms|
|
|packages/jest-runtime/src/__tests__/runtime_jest_spy_on.test.js|2✔️|||521ms|
|
||||||
|packages/jest-runtime/src/__tests__/runtime_mock.test.js|4✔️|||743ms|
|
|packages/jest-runtime/src/__tests__/runtime_mock.test.js|4✔️|||743ms|
|
||||||
|packages/jest-runtime/src/__tests__/runtime_module_directories.test.js|4✔️|||525ms|
|
|packages/jest-runtime/src/__tests__/runtime_module_directories.test.js|4✔️|||525ms|
|
||||||
|packages/jest-runtime/src/__tests__/runtime_node_path.test.js|4✔️|||1.088s|
|
|packages/jest-runtime/src/__tests__/runtime_node_path.test.js|4✔️|||1s|
|
||||||
|packages/jest-runtime/src/__tests__/runtime_require_actual.test.js|2✔️|||478ms|
|
|packages/jest-runtime/src/__tests__/runtime_require_actual.test.js|2✔️|||478ms|
|
||||||
|packages/jest-runtime/src/__tests__/runtime_require_cache.test.js|2✔️|||454ms|
|
|packages/jest-runtime/src/__tests__/runtime_require_cache.test.js|2✔️|||454ms|
|
||||||
|packages/jest-runtime/src/__tests__/runtime_require_mock.test.js|13✔️|||962ms|
|
|packages/jest-runtime/src/__tests__/runtime_require_mock.test.js|13✔️|||962ms|
|
||||||
|packages/jest-runtime/src/__tests__/runtime_require_module_no_ext.test.js|1✔️|||261ms|
|
|packages/jest-runtime/src/__tests__/runtime_require_module_no_ext.test.js|1✔️|||261ms|
|
||||||
|packages/jest-runtime/src/__tests__/runtime_require_module_or_mock_transitive_deps.test.js|6✔️|||2.366s|
|
|packages/jest-runtime/src/__tests__/runtime_require_module_or_mock_transitive_deps.test.js|6✔️|||2s|
|
||||||
|packages/jest-runtime/src/__tests__/runtime_require_module_or_mock.test.js|17✔️|||1.223s|
|
|packages/jest-runtime/src/__tests__/runtime_require_module_or_mock.test.js|17✔️|||1s|
|
||||||
|packages/jest-runtime/src/__tests__/runtime_require_module.test.js|27✔️|||2.439s|
|
|packages/jest-runtime/src/__tests__/runtime_require_module.test.js|27✔️|||2s|
|
||||||
|packages/jest-runtime/src/__tests__/runtime_require_resolve.test.ts|5✔️|||707ms|
|
|packages/jest-runtime/src/__tests__/runtime_require_resolve.test.ts|5✔️|||707ms|
|
||||||
|packages/jest-runtime/src/__tests__/runtime_wrap.js|2✔️|||263ms|
|
|packages/jest-runtime/src/__tests__/runtime_wrap.js|2✔️|||263ms|
|
||||||
|packages/jest-runtime/src/__tests__/Runtime-sourceMaps.test.js|1✔️|||584ms|
|
|packages/jest-runtime/src/__tests__/Runtime-sourceMaps.test.js|1✔️|||584ms|
|
||||||
|packages/jest-runtime/src/__tests__/Runtime-statics.test.js|2✔️|||162ms|
|
|packages/jest-runtime/src/__tests__/Runtime-statics.test.js|2✔️|||162ms|
|
||||||
|packages/jest-serializer/src/__tests__/index.test.ts|17✔️|||158ms|
|
|packages/jest-serializer/src/__tests__/index.test.ts|17✔️|||158ms|
|
||||||
|packages/jest-snapshot/src/__tests__/dedentLines.test.ts|17✔️|||94ms|
|
|packages/jest-snapshot/src/__tests__/dedentLines.test.ts|17✔️|||94ms|
|
||||||
|packages/jest-snapshot/src/__tests__/InlineSnapshots.test.ts|22✔️|||1.149s|
|
|packages/jest-snapshot/src/__tests__/InlineSnapshots.test.ts|22✔️|||1s|
|
||||||
|packages/jest-snapshot/src/__tests__/matcher.test.ts|1✔️|||131ms|
|
|packages/jest-snapshot/src/__tests__/matcher.test.ts|1✔️|||131ms|
|
||||||
|packages/jest-snapshot/src/__tests__/mockSerializer.test.ts|10✔️|||45ms|
|
|packages/jest-snapshot/src/__tests__/mockSerializer.test.ts|10✔️|||45ms|
|
||||||
|packages/jest-snapshot/src/__tests__/printSnapshot.test.ts|71✔️|||1.188s|
|
|packages/jest-snapshot/src/__tests__/printSnapshot.test.ts|71✔️|||1s|
|
||||||
|packages/jest-snapshot/src/__tests__/SnapshotResolver.test.ts|10✔️|||98ms|
|
|packages/jest-snapshot/src/__tests__/SnapshotResolver.test.ts|10✔️|||98ms|
|
||||||
|packages/jest-snapshot/src/__tests__/throwMatcher.test.ts|3✔️|||481ms|
|
|packages/jest-snapshot/src/__tests__/throwMatcher.test.ts|3✔️|||481ms|
|
||||||
|packages/jest-snapshot/src/__tests__/utils.test.ts|26✔️|||214ms|
|
|packages/jest-snapshot/src/__tests__/utils.test.ts|26✔️|||214ms|
|
||||||
|packages/jest-source-map/src/__tests__/getCallsite.test.ts|3✔️|||86ms|
|
|packages/jest-source-map/src/__tests__/getCallsite.test.ts|3✔️|||86ms|
|
||||||
|packages/jest-test-result/src/__tests__/formatTestResults.test.ts|1✔️|||53ms|
|
|packages/jest-test-result/src/__tests__/formatTestResults.test.ts|1✔️|||53ms|
|
||||||
|packages/jest-test-sequencer/src/__tests__/test_sequencer.test.js|8✔️|||251ms|
|
|packages/jest-test-sequencer/src/__tests__/test_sequencer.test.js|8✔️|||251ms|
|
||||||
|packages/jest-transform/src/__tests__/ScriptTransformer.test.ts|22✔️|||1.660s|
|
|packages/jest-transform/src/__tests__/ScriptTransformer.test.ts|22✔️|||2s|
|
||||||
|packages/jest-transform/src/__tests__/shouldInstrument.test.ts|25✔️|||155ms|
|
|packages/jest-transform/src/__tests__/shouldInstrument.test.ts|25✔️|||155ms|
|
||||||
|packages/jest-util/src/__tests__/createProcessObject.test.ts|4✔️|||81ms|
|
|packages/jest-util/src/__tests__/createProcessObject.test.ts|4✔️|||81ms|
|
||||||
|packages/jest-util/src/__tests__/deepCyclicCopy.test.ts|12✔️|||86ms|
|
|packages/jest-util/src/__tests__/deepCyclicCopy.test.ts|12✔️|||86ms|
|
||||||
@@ -403,32 +403,30 @@
|
|||||||
|packages/pretty-format/src/__tests__/prettyFormat.test.ts|86✔️|||219ms|
|
|packages/pretty-format/src/__tests__/prettyFormat.test.ts|86✔️|||219ms|
|
||||||
|packages/pretty-format/src/__tests__/react.test.tsx|55✔️|||325ms|
|
|packages/pretty-format/src/__tests__/react.test.tsx|55✔️|||325ms|
|
||||||
|packages/pretty-format/src/__tests__/ReactElement.test.ts|3✔️|||64ms|
|
|packages/pretty-format/src/__tests__/ReactElement.test.ts|3✔️|||64ms|
|
||||||
### <a id="user-content-r0s75" href="#r0s75">e2e/__tests__/jestChangedFiles.test.ts</a> ❌
|
### ❌ <a id="user-content-r0s75" href="#r0s75">e2e/__tests__/jestChangedFiles.test.ts</a>
|
||||||
**10** tests were completed in **9.045s** with **9** passed, **1** failed and **0** skipped.
|
```
|
||||||
|
✔️ gets hg SCM roots and dedupes them
|
||||||
|Result|Test|Time|
|
✔️ gets git SCM roots and dedupes them
|
||||||
|:---:|:---|---:|
|
✔️ gets mixed git and hg SCM roots and dedupes them
|
||||||
|✔️|gets hg SCM roots and dedupes them|559ms|
|
✔️ gets changed files for git
|
||||||
|✔️|gets git SCM roots and dedupes them|416ms|
|
✔️ monitors only root paths for git
|
||||||
|✔️|gets mixed git and hg SCM roots and dedupes them|467ms|
|
✔️ does not find changes in files with no diff, for git
|
||||||
|✔️|gets changed files for git|2.298s|
|
✔️ handles a bad revision for "changedSince", for git
|
||||||
|✔️|monitors only root paths for git|151ms|
|
❌ gets changed files for hg
|
||||||
|✔️|does not find changes in files with no diff, for git|628ms|
|
Error: abort: empty revision range
|
||||||
|✔️|handles a bad revision for "changedSince", for git|878ms|
|
✔️ monitors only root paths for hg
|
||||||
|❌|gets changed files for hg|2.219s|
|
✔️ handles a bad revision for "changedSince", for hg
|
||||||
|✔️|monitors only root paths for hg|281ms|
|
```
|
||||||
|✔️|handles a bad revision for "changedSince", for hg|949ms|
|
### ❌ <a id="user-content-r0s98" href="#r0s98">e2e/__tests__/onlyChanged.test.ts</a>
|
||||||
### <a id="user-content-r0s98" href="#r0s98">e2e/__tests__/onlyChanged.test.ts</a> ❌
|
```
|
||||||
**9** tests were completed in **22.281s** with **8** passed, **1** failed and **0** skipped.
|
✔️ run for "onlyChanged" and "changedSince"
|
||||||
|
✔️ run only changed files
|
||||||
|Result|Test|Time|
|
✔️ report test coverage for only changed files
|
||||||
|:---:|:---|---:|
|
✔️ report test coverage of source on test file change under only changed files
|
||||||
|✔️|run for "onlyChanged" and "changedSince"|1.464s|
|
✔️ do not pickup non-tested files when reporting coverage on only changed files
|
||||||
|✔️|run only changed files|5.196s|
|
✔️ collect test coverage when using onlyChanged
|
||||||
|✔️|report test coverage for only changed files|1.889s|
|
✔️ onlyChanged in config is overwritten by --all or testPathPattern
|
||||||
|✔️|report test coverage of source on test file change under only changed files|822ms|
|
❌ gets changed files for hg
|
||||||
|✔️|do not pickup non-tested files when reporting coverage on only changed files|861ms|
|
Error: expect(received).toMatch(expected)
|
||||||
|✔️|collect test coverage when using onlyChanged|1.058s|
|
✔️ path on Windows is case-insensitive
|
||||||
|✔️|onlyChanged in config is overwritten by --all or testPathPattern|7.023s|
|
```
|
||||||
|❌|gets changed files for hg|3.765s|
|
|
||||||
|✔️|path on Windows is case-insensitive|0ms|
|
|
||||||
29
__tests__/__outputs__/mocha-json.md
Normal file
29
__tests__/__outputs__/mocha-json.md
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|

|
||||||
|
## ❌ <a id="user-content-r0" href="#r0">fixtures/mocha-json.json</a>
|
||||||
|
**6** tests were completed in **12ms** with **1** passed, **4** failed and **1** skipped.
|
||||||
|
|Test suite|Passed|Failed|Skipped|Time|
|
||||||
|
|:---|---:|---:|---:|---:|
|
||||||
|
|[test/main.test.js](#r0s0)|1✔️|3❌||1ms|
|
||||||
|
|[test/second.test.js](#r0s1)||1❌|1✖️|8ms|
|
||||||
|
### ❌ <a id="user-content-r0s0" href="#r0s0">test/main.test.js</a>
|
||||||
|
```
|
||||||
|
Test 1
|
||||||
|
✔️ Passing test
|
||||||
|
Test 1 Test 1.1
|
||||||
|
❌ Exception in target unit
|
||||||
|
Some error
|
||||||
|
❌ Failing test
|
||||||
|
Expected values to be strictly equal:
|
||||||
|
|
||||||
|
false !== true
|
||||||
|
|
||||||
|
Test 2
|
||||||
|
❌ Exception in test
|
||||||
|
Some error
|
||||||
|
```
|
||||||
|
### ❌ <a id="user-content-r0s1" href="#r0s1">test/second.test.js</a>
|
||||||
|
```
|
||||||
|
✖️ Skipped test
|
||||||
|
❌ Timeout test
|
||||||
|
Timeout of 1ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves. (C:\Users\Michal\Workspace\dorny\test-reporter\reports\mocha\test\second.test.js)
|
||||||
|
```
|
||||||
41
__tests__/__outputs__/mocha-test-results.md
Normal file
41
__tests__/__outputs__/mocha-test-results.md
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|

|
||||||
|
## ✔️ <a id="user-content-r0" href="#r0">fixtures/external/mocha/mocha-test-results.json</a>
|
||||||
|
**839** tests were completed in **6s** with **833** passed, **0** failed and **6** skipped.
|
||||||
|
|Test suite|Passed|Failed|Skipped|Time|
|
||||||
|
|:---|---:|---:|---:|---:|
|
||||||
|
|test/node-unit/buffered-worker-pool.spec.js|14✔️|||8ms|
|
||||||
|
|test/node-unit/cli/config.spec.js|10✔️|||8ms|
|
||||||
|
|test/node-unit/cli/node-flags.spec.js|105✔️|||9ms|
|
||||||
|
|test/node-unit/cli/options.spec.js|36✔️|||250ms|
|
||||||
|
|test/node-unit/cli/run-helpers.spec.js|9✔️|||8ms|
|
||||||
|
|test/node-unit/cli/run.spec.js|40✔️|||4ms|
|
||||||
|
|test/node-unit/mocha.spec.js|24✔️|||33ms|
|
||||||
|
|test/node-unit/parallel-buffered-runner.spec.js|19✔️|||23ms|
|
||||||
|
|test/node-unit/reporters/parallel-buffered.spec.js|6✔️|||16ms|
|
||||||
|
|test/node-unit/serializer.spec.js|40✔️|||31ms|
|
||||||
|
|test/node-unit/stack-trace-filter.spec.js|2✔️||4✖️|1ms|
|
||||||
|
|test/node-unit/utils.spec.js|5✔️|||1ms|
|
||||||
|
|test/node-unit/worker.spec.js|15✔️|||92ms|
|
||||||
|
|test/unit/context.spec.js|8✔️|||5ms|
|
||||||
|
|test/unit/duration.spec.js|3✔️|||166ms|
|
||||||
|
|test/unit/errors.spec.js|13✔️|||5ms|
|
||||||
|
|test/unit/globals.spec.js|4✔️|||0ms|
|
||||||
|
|test/unit/grep.spec.js|8✔️|||2ms|
|
||||||
|
|test/unit/hook-async.spec.js|3✔️|||1ms|
|
||||||
|
|test/unit/hook-sync-nested.spec.js|4✔️|||1ms|
|
||||||
|
|test/unit/hook-sync.spec.js|3✔️|||0ms|
|
||||||
|
|test/unit/hook-timeout.spec.js|1✔️|||0ms|
|
||||||
|
|test/unit/hook.spec.js|4✔️|||0ms|
|
||||||
|
|test/unit/mocha.spec.js|115✔️||1✖️|128ms|
|
||||||
|
|test/unit/overspecified-async.spec.js|1✔️|||3ms|
|
||||||
|
|test/unit/parse-query.spec.js|2✔️|||1ms|
|
||||||
|
|test/unit/plugin-loader.spec.js|41✔️||1✖️|16ms|
|
||||||
|
|test/unit/required-tokens.spec.js|1✔️|||0ms|
|
||||||
|
|test/unit/root.spec.js|1✔️|||0ms|
|
||||||
|
|test/unit/runnable.spec.js|55✔️|||122ms|
|
||||||
|
|test/unit/runner.spec.js|77✔️|||43ms|
|
||||||
|
|test/unit/suite.spec.js|57✔️|||14ms|
|
||||||
|
|test/unit/test.spec.js|15✔️|||0ms|
|
||||||
|
|test/unit/throw.spec.js|9✔️|||9ms|
|
||||||
|
|test/unit/timeout.spec.js|8✔️|||109ms|
|
||||||
|
|test/unit/utils.spec.js|75✔️|||24ms|
|
||||||
@@ -1,5 +1,5 @@
|
|||||||

|

|
||||||
## <a id="user-content-r0" href="#r0">fixtures/external/flutter/provider-test-results.json</a> ❌
|
## ❌ <a id="user-content-r0" href="#r0">fixtures/external/flutter/provider-test-results.json</a>
|
||||||
**269** tests were completed in **0ms** with **268** passed, **1** failed and **0** skipped.
|
**269** tests were completed in **0ms** with **268** passed, **1** failed and **0** skipped.
|
||||||
|Test suite|Passed|Failed|Skipped|Time|
|
|Test suite|Passed|Failed|Skipped|Time|
|
||||||
|:---|---:|---:|---:|---:|
|
|:---|---:|---:|---:|---:|
|
||||||
@@ -8,7 +8,7 @@
|
|||||||
|[test/consumer_test.dart](#r0s2)|18✔️|||340ms|
|
|[test/consumer_test.dart](#r0s2)|18✔️|||340ms|
|
||||||
|[test/context_test.dart](#r0s3)|31✔️|||698ms|
|
|[test/context_test.dart](#r0s3)|31✔️|||698ms|
|
||||||
|[test/future_provider_test.dart](#r0s4)|10✔️|||305ms|
|
|[test/future_provider_test.dart](#r0s4)|10✔️|||305ms|
|
||||||
|[test/inherited_provider_test.dart](#r0s5)|81✔️|||1.117s|
|
|[test/inherited_provider_test.dart](#r0s5)|81✔️|||1s|
|
||||||
|[test/listenable_provider_test.dart](#r0s6)|16✔️|||353ms|
|
|[test/listenable_provider_test.dart](#r0s6)|16✔️|||353ms|
|
||||||
|[test/listenable_proxy_provider_test.dart](#r0s7)|12✔️|||373ms|
|
|[test/listenable_proxy_provider_test.dart](#r0s7)|12✔️|||373ms|
|
||||||
|[test/multi_provider_test.dart](#r0s8)|3✔️|||198ms|
|
|[test/multi_provider_test.dart](#r0s8)|3✔️|||198ms|
|
||||||
@@ -19,455 +19,356 @@
|
|||||||
|[test/stateful_provider_test.dart](#r0s13)|4✔️|||254ms|
|
|[test/stateful_provider_test.dart](#r0s13)|4✔️|||254ms|
|
||||||
|[test/stream_provider_test.dart](#r0s14)|8✔️|||282ms|
|
|[test/stream_provider_test.dart](#r0s14)|8✔️|||282ms|
|
||||||
|[test/value_listenable_provider_test.dart](#r0s15)|4✔️|1❌||327ms|
|
|[test/value_listenable_provider_test.dart](#r0s15)|4✔️|1❌||327ms|
|
||||||
### <a id="user-content-r0s0" href="#r0s0">test/builder_test.dart</a> ✔️
|
### ✔️ <a id="user-content-r0s0" href="#r0s0">test/builder_test.dart</a>
|
||||||
**24** tests were completed in **402ms** with **24** passed, **0** failed and **0** skipped.
|
```
|
||||||
|
ChangeNotifierProvider
|
||||||
|
✔️ default
|
||||||
|
✔️ .value
|
||||||
|
ListenableProvider
|
||||||
|
✔️ default
|
||||||
|
✔️ .value
|
||||||
|
Provider
|
||||||
|
✔️ default
|
||||||
|
✔️ .value
|
||||||
|
ProxyProvider
|
||||||
|
✔️ 0
|
||||||
|
✔️ 1
|
||||||
|
✔️ 2
|
||||||
|
✔️ 3
|
||||||
|
✔️ 4
|
||||||
|
✔️ 5
|
||||||
|
✔️ 6
|
||||||
|
MultiProvider
|
||||||
|
✔️ with 1 ChangeNotifierProvider default
|
||||||
|
✔️ with 2 ChangeNotifierProvider default
|
||||||
|
✔️ with ListenableProvider default
|
||||||
|
✔️ with Provider default
|
||||||
|
✔️ with ProxyProvider0
|
||||||
|
✔️ with ProxyProvider1
|
||||||
|
✔️ with ProxyProvider2
|
||||||
|
✔️ with ProxyProvider3
|
||||||
|
✔️ with ProxyProvider4
|
||||||
|
✔️ with ProxyProvider5
|
||||||
|
✔️ with ProxyProvider6
|
||||||
|
```
|
||||||
|
### ✔️ <a id="user-content-r0s1" href="#r0s1">test/change_notifier_provider_test.dart</a>
|
||||||
|
```
|
||||||
|
✔️ Use builder property, not child
|
||||||
|
ChangeNotifierProvider
|
||||||
|
✔️ value
|
||||||
|
✔️ builder
|
||||||
|
✔️ builder1
|
||||||
|
✔️ builder2
|
||||||
|
✔️ builder3
|
||||||
|
✔️ builder4
|
||||||
|
✔️ builder5
|
||||||
|
✔️ builder6
|
||||||
|
✔️ builder0
|
||||||
|
```
|
||||||
|
### ✔️ <a id="user-content-r0s2" href="#r0s2">test/consumer_test.dart</a>
|
||||||
|
```
|
||||||
|
consumer
|
||||||
|
✔️ obtains value from Provider<T>
|
||||||
|
✔️ crashed with no builder
|
||||||
|
✔️ can be used inside MultiProvider
|
||||||
|
consumer2
|
||||||
|
✔️ obtains value from Provider<T>
|
||||||
|
✔️ crashed with no builder
|
||||||
|
✔️ can be used inside MultiProvider
|
||||||
|
consumer3
|
||||||
|
✔️ obtains value from Provider<T>
|
||||||
|
✔️ crashed with no builder
|
||||||
|
✔️ can be used inside MultiProvider
|
||||||
|
consumer4
|
||||||
|
✔️ obtains value from Provider<T>
|
||||||
|
✔️ crashed with no builder
|
||||||
|
✔️ can be used inside MultiProvider
|
||||||
|
consumer5
|
||||||
|
✔️ obtains value from Provider<T>
|
||||||
|
✔️ crashed with no builder
|
||||||
|
✔️ can be used inside MultiProvider
|
||||||
|
consumer6
|
||||||
|
✔️ obtains value from Provider<T>
|
||||||
|
✔️ crashed with no builder
|
||||||
|
✔️ can be used inside MultiProvider
|
||||||
|
```
|
||||||
|
### ✔️ <a id="user-content-r0s3" href="#r0s3">test/context_test.dart</a>
|
||||||
|
```
|
||||||
|
✔️ watch in layoutbuilder
|
||||||
|
✔️ select in layoutbuilder
|
||||||
|
✔️ cannot select in listView
|
||||||
|
✔️ watch in listView
|
||||||
|
✔️ watch in gridView
|
||||||
|
✔️ clears select dependencies for all dependents
|
||||||
|
BuildContext
|
||||||
|
✔️ internal selected value is updated
|
||||||
|
✔️ create can use read without being lazy
|
||||||
|
✔️ watch can be used inside InheritedProvider.update
|
||||||
|
✔️ select doesn't fail if it loads a provider that depends on other providers
|
||||||
|
✔️ don't call old selectors if the child rebuilds individually
|
||||||
|
✔️ selects throws inside click handlers
|
||||||
|
✔️ select throws if try to read dynamic
|
||||||
|
✔️ select throws ProviderNotFoundException
|
||||||
|
✔️ select throws if watch called inside the callback from build
|
||||||
|
✔️ select throws if read called inside the callback from build
|
||||||
|
✔️ select throws if select called inside the callback from build
|
||||||
|
✔️ select throws if read called inside the callback on dependency change
|
||||||
|
✔️ select throws if watch called inside the callback on dependency change
|
||||||
|
✔️ select throws if select called inside the callback on dependency change
|
||||||
|
✔️ can call read inside didChangeDependencies
|
||||||
|
✔️ select cannot be called inside didChangeDependencies
|
||||||
|
✔️ select in initState throws
|
||||||
|
✔️ watch in initState throws
|
||||||
|
✔️ read in initState works
|
||||||
|
✔️ consumer can be removed and selector stops to be called
|
||||||
|
✔️ context.select deeply compares maps
|
||||||
|
✔️ context.select deeply compares lists
|
||||||
|
✔️ context.select deeply compares iterables
|
||||||
|
✔️ context.select deeply compares sets
|
||||||
|
✔️ context.watch listens to value changes
|
||||||
|
```
|
||||||
|
### ✔️ <a id="user-content-r0s4" href="#r0s4">test/future_provider_test.dart</a>
|
||||||
|
```
|
||||||
|
✔️ works with MultiProvider
|
||||||
|
✔️ (catchError) previous future completes after transition is no-op
|
||||||
|
✔️ previous future completes after transition is no-op
|
||||||
|
✔️ transition from future to future preserve state
|
||||||
|
✔️ throws if future has error and catchError is missing
|
||||||
|
✔️ calls catchError if present and future has error
|
||||||
|
✔️ works with null
|
||||||
|
✔️ create and dispose future with builder
|
||||||
|
✔️ FutureProvider() crashes if builder is null
|
||||||
|
FutureProvider()
|
||||||
|
✔️ crashes if builder is null
|
||||||
|
```
|
||||||
|
### ✔️ <a id="user-content-r0s5" href="#r0s5">test/inherited_provider_test.dart</a>
|
||||||
|
```
|
||||||
|
✔️ regression test #377
|
||||||
|
✔️ rebuild on dependency flags update
|
||||||
|
✔️ properly update debug flags if a create triggers another deferred create
|
||||||
|
✔️ properly update debug flags if a create triggers another deferred create
|
||||||
|
✔️ properly update debug flags if an update triggers another create/update
|
||||||
|
✔️ properly update debug flags if a create triggers another create/update
|
||||||
|
✔️ Provider.of(listen: false) outside of build works when it loads a provider
|
||||||
|
✔️ new value is available in didChangeDependencies
|
||||||
|
✔️ builder receives the current value and updates independently from `update`
|
||||||
|
✔️ builder can _not_ rebuild when provider updates
|
||||||
|
✔️ builder rebuilds if provider is recreated
|
||||||
|
✔️ provider.of throws if listen:true outside of the widget tree
|
||||||
|
✔️ InheritedProvider throws if no child is provided with default constructor
|
||||||
|
✔️ InheritedProvider throws if no child is provided with value constructor
|
||||||
|
✔️ DeferredInheritedProvider throws if no child is provided with default constructor
|
||||||
|
✔️ DeferredInheritedProvider throws if no child is provided with value constructor
|
||||||
|
✔️ startListening markNeedsNotifyDependents
|
||||||
|
✔️ InheritedProvider can be subclassed
|
||||||
|
✔️ DeferredInheritedProvider can be subclassed
|
||||||
|
✔️ can be used with MultiProvider
|
||||||
|
✔️ throw if the widget ctor changes
|
||||||
|
✔️ InheritedProvider lazy loading can be disabled
|
||||||
|
✔️ InheritedProvider.value lazy loading can be disabled
|
||||||
|
✔️ InheritedProvider subclass don't have to specify default lazy value
|
||||||
|
✔️ DeferredInheritedProvider lazy loading can be disabled
|
||||||
|
✔️ DeferredInheritedProvider.value lazy loading can be disabled
|
||||||
|
✔️ selector
|
||||||
|
✔️ can select multiple types from same provider
|
||||||
|
✔️ can select same type on two different providers
|
||||||
|
✔️ can select same type twice on same provider
|
||||||
|
✔️ Provider.of has a proper error message if context is null
|
||||||
|
diagnostics
|
||||||
|
✔️ InheritedProvider.value
|
||||||
|
✔️ InheritedProvider doesn't break lazy loading
|
||||||
|
✔️ InheritedProvider show if listening
|
||||||
|
✔️ DeferredInheritedProvider.value
|
||||||
|
✔️ DeferredInheritedProvider
|
||||||
|
InheritedProvider.value()
|
||||||
|
✔️ markNeedsNotifyDependents during startListening is noop
|
||||||
|
✔️ startListening called again when create returns new value
|
||||||
|
✔️ startListening
|
||||||
|
✔️ stopListening not called twice if rebuild doesn't have listeners
|
||||||
|
✔️ removeListener cannot be null
|
||||||
|
✔️ pass down current value
|
||||||
|
✔️ default updateShouldNotify
|
||||||
|
✔️ custom updateShouldNotify
|
||||||
|
InheritedProvider()
|
||||||
|
✔️ hasValue
|
||||||
|
✔️ provider calls update if rebuilding only due to didChangeDependencies
|
||||||
|
✔️ provider notifying dependents doesn't call update
|
||||||
|
✔️ update can call Provider.of with listen:true
|
||||||
|
✔️ update lazy loaded can call Provider.of with listen:true
|
||||||
|
✔️ markNeedsNotifyDependents during startListening is noop
|
||||||
|
✔️ update can obtain parent of the same type than self
|
||||||
|
✔️ _debugCheckInvalidValueType
|
||||||
|
✔️ startListening
|
||||||
|
✔️ startListening called again when create returns new value
|
||||||
|
✔️ stopListening not called twice if rebuild doesn't have listeners
|
||||||
|
✔️ removeListener cannot be null
|
||||||
|
✔️ fails if initialValueBuilder calls inheritFromElement/inheritFromWiggetOfExactType
|
||||||
|
✔️ builder is called on every rebuild and after a dependency change
|
||||||
|
✔️ builder with no updateShouldNotify use ==
|
||||||
|
✔️ builder calls updateShouldNotify callback
|
||||||
|
✔️ initialValue is transmitted to valueBuilder
|
||||||
|
✔️ calls builder again if dependencies change
|
||||||
|
✔️ exposes initialValue if valueBuilder is null
|
||||||
|
✔️ call dispose on unmount
|
||||||
|
✔️ builder unmount, dispose not called if value never read
|
||||||
|
✔️ call dispose after new value
|
||||||
|
✔️ valueBuilder works without initialBuilder
|
||||||
|
✔️ calls initialValueBuilder lazily once
|
||||||
|
✔️ throws if both builder and initialBuilder are missing
|
||||||
|
DeferredInheritedProvider.value()
|
||||||
|
✔️ hasValue
|
||||||
|
✔️ startListening
|
||||||
|
✔️ stopListening cannot be null
|
||||||
|
✔️ startListening doesn't need setState if already initialized
|
||||||
|
✔️ setState without updateShouldNotify
|
||||||
|
✔️ setState with updateShouldNotify
|
||||||
|
✔️ startListening never leave the widget uninitialized
|
||||||
|
✔️ startListening called again on controller change
|
||||||
|
DeferredInheritedProvider()
|
||||||
|
✔️ create can't call inherited widgets
|
||||||
|
✔️ creates the value lazily
|
||||||
|
✔️ dispose
|
||||||
|
✔️ dispose no-op if never built
|
||||||
|
```
|
||||||
|
### ✔️ <a id="user-content-r0s6" href="#r0s6">test/listenable_provider_test.dart</a>
|
||||||
|
```
|
||||||
|
ListenableProvider
|
||||||
|
✔️ works with MultiProvider
|
||||||
|
✔️ asserts that the created notifier can have listeners
|
||||||
|
✔️ don't listen again if listenable instance doesn't change
|
||||||
|
✔️ works with null (default)
|
||||||
|
✔️ works with null (create)
|
||||||
|
✔️ stateful create called once
|
||||||
|
✔️ dispose called on unmount
|
||||||
|
✔️ dispose can be null
|
||||||
|
✔️ changing listenable rebuilds descendants
|
||||||
|
✔️ rebuilding with the same provider don't rebuilds descendants
|
||||||
|
✔️ notifylistener rebuilds descendants
|
||||||
|
ListenableProvider value constructor
|
||||||
|
✔️ pass down key
|
||||||
|
✔️ changing the Listenable instance rebuilds dependents
|
||||||
|
ListenableProvider stateful constructor
|
||||||
|
✔️ called with context
|
||||||
|
✔️ pass down key
|
||||||
|
✔️ throws if create is null
|
||||||
|
```
|
||||||
|
### ✔️ <a id="user-content-r0s7" href="#r0s7">test/listenable_proxy_provider_test.dart</a>
|
||||||
|
```
|
||||||
|
ListenableProxyProvider
|
||||||
|
✔️ throws if update is missing
|
||||||
|
✔️ asserts that the created notifier has no listener
|
||||||
|
✔️ asserts that the created notifier has no listener after rebuild
|
||||||
|
✔️ rebuilds dependendents when listeners are called
|
||||||
|
✔️ update returning a new Listenable disposes the previously created value and update dependents
|
||||||
|
✔️ disposes of created value
|
||||||
|
ListenableProxyProvider variants
|
||||||
|
✔️ ListenableProxyProvider
|
||||||
|
✔️ ListenableProxyProvider2
|
||||||
|
✔️ ListenableProxyProvider3
|
||||||
|
✔️ ListenableProxyProvider4
|
||||||
|
✔️ ListenableProxyProvider5
|
||||||
|
✔️ ListenableProxyProvider6
|
||||||
|
```
|
||||||
|
### ✔️ <a id="user-content-r0s8" href="#r0s8">test/multi_provider_test.dart</a>
|
||||||
|
```
|
||||||
|
MultiProvider
|
||||||
|
✔️ throw if providers is null
|
||||||
|
✔️ MultiProvider children can only access parent providers
|
||||||
|
✔️ MultiProvider.providers with ignored child
|
||||||
|
```
|
||||||
|
### ✔️ <a id="user-content-r0s9" href="#r0s9">test/provider_test.dart</a>
|
||||||
|
```
|
||||||
|
✔️ works with MultiProvider
|
||||||
|
Provider.of
|
||||||
|
✔️ throws if T is dynamic
|
||||||
|
✔️ listen defaults to true when building widgets
|
||||||
|
✔️ listen defaults to false outside of the widget tree
|
||||||
|
✔️ listen:false doesn't trigger rebuild
|
||||||
|
✔️ listen:true outside of the widget tree throws
|
||||||
|
Provider
|
||||||
|
✔️ throws if the provided value is a Listenable/Stream
|
||||||
|
✔️ debugCheckInvalidValueType can be disabled
|
||||||
|
✔️ simple usage
|
||||||
|
✔️ throws an error if no provider found
|
||||||
|
✔️ update should notify
|
||||||
|
```
|
||||||
|
### ✔️ <a id="user-content-r0s10" href="#r0s10">test/proxy_provider_test.dart</a>
|
||||||
|
```
|
||||||
|
ProxyProvider
|
||||||
|
✔️ throws if the provided value is a Listenable/Stream
|
||||||
|
✔️ debugCheckInvalidValueType can be disabled
|
||||||
|
✔️ create creates initial value
|
||||||
|
✔️ consume another providers
|
||||||
|
✔️ rebuild descendants if value change
|
||||||
|
✔️ call dispose when unmounted with the latest result
|
||||||
|
✔️ don't rebuild descendants if value doesn't change
|
||||||
|
✔️ pass down updateShouldNotify
|
||||||
|
✔️ works with MultiProvider
|
||||||
|
✔️ update callback can trigger descendants setState synchronously
|
||||||
|
✔️ throws if update is null
|
||||||
|
ProxyProvider variants
|
||||||
|
✔️ ProxyProvider2
|
||||||
|
✔️ ProxyProvider3
|
||||||
|
✔️ ProxyProvider4
|
||||||
|
✔️ ProxyProvider5
|
||||||
|
✔️ ProxyProvider6
|
||||||
|
```
|
||||||
|
### ✔️ <a id="user-content-r0s11" href="#r0s11">test/reassemble_test.dart</a>
|
||||||
|
```
|
||||||
|
✔️ ReassembleHandler
|
||||||
|
✔️ unevaluated create
|
||||||
|
✔️ unevaluated create
|
||||||
|
```
|
||||||
|
### ✔️ <a id="user-content-r0s12" href="#r0s12">test/selector_test.dart</a>
|
||||||
|
```
|
||||||
|
✔️ asserts that builder/selector are not null
|
||||||
|
✔️ Deep compare maps by default
|
||||||
|
✔️ Deep compare iterables by default
|
||||||
|
✔️ Deep compare sets by default
|
||||||
|
✔️ Deep compare lists by default
|
||||||
|
✔️ custom shouldRebuid
|
||||||
|
✔️ passes `child` and `key`
|
||||||
|
✔️ calls builder if the callback changes
|
||||||
|
✔️ works with MultiProvider
|
||||||
|
✔️ don't call builder again if it rebuilds but selector returns the same thing
|
||||||
|
✔️ call builder again if it rebuilds abd selector returns the a different variable
|
||||||
|
✔️ Selector
|
||||||
|
✔️ Selector2
|
||||||
|
✔️ Selector3
|
||||||
|
✔️ Selector4
|
||||||
|
✔️ Selector5
|
||||||
|
✔️ Selector6
|
||||||
|
```
|
||||||
|
### ✔️ <a id="user-content-r0s13" href="#r0s13">test/stateful_provider_test.dart</a>
|
||||||
|
```
|
||||||
|
✔️ asserts
|
||||||
|
✔️ works with MultiProvider
|
||||||
|
✔️ calls create only once
|
||||||
|
✔️ dispose
|
||||||
|
```
|
||||||
|
### ✔️ <a id="user-content-r0s14" href="#r0s14">test/stream_provider_test.dart</a>
|
||||||
|
```
|
||||||
|
✔️ works with MultiProvider
|
||||||
|
✔️ transition from stream to stream preserve state
|
||||||
|
✔️ throws if stream has error and catchError is missing
|
||||||
|
✔️ calls catchError if present and stream has error
|
||||||
|
✔️ works with null
|
||||||
|
✔️ StreamProvider() crashes if builder is null
|
||||||
|
StreamProvider()
|
||||||
|
✔️ create and dispose stream with builder
|
||||||
|
✔️ crashes if builder is null
|
||||||
|
```
|
||||||
|
### ❌ <a id="user-content-r0s15" href="#r0s15">test/value_listenable_provider_test.dart</a>
|
||||||
|
```
|
||||||
|
valueListenableProvider
|
||||||
|
✔️ rebuilds when value change
|
||||||
|
✔️ don't rebuild dependents by default
|
||||||
|
✔️ pass keys
|
||||||
|
✔️ don't listen again if stream instance doesn't change
|
||||||
|
❌ pass updateShouldNotify
|
||||||
|
The following TestFailure object was thrown running a test:
|
||||||
|
Expected: <2>
|
||||||
|
Actual: <1>
|
||||||
|
Unexpected number of calls
|
||||||
|
|
||||||
**ChangeNotifierProvider**
|
```
|
||||||
|Result|Test|Time|
|
|
||||||
|:---:|:---|---:|
|
|
||||||
|✔️|ChangeNotifierProvider default|189ms|
|
|
||||||
|✔️|ChangeNotifierProvider .value|10ms|
|
|
||||||
|
|
||||||
**ListenableProvider**
|
|
||||||
|Result|Test|Time|
|
|
||||||
|:---:|:---|---:|
|
|
||||||
|✔️|ListenableProvider default|9ms|
|
|
||||||
|✔️|ListenableProvider .value|16ms|
|
|
||||||
|
|
||||||
**Provider**
|
|
||||||
|Result|Test|Time|
|
|
||||||
|:---:|:---|---:|
|
|
||||||
|✔️|Provider default|11ms|
|
|
||||||
|✔️|Provider .value|8ms|
|
|
||||||
|
|
||||||
**ProxyProvider**
|
|
||||||
|Result|Test|Time|
|
|
||||||
|:---:|:---|---:|
|
|
||||||
|✔️|ProxyProvider 0|11ms|
|
|
||||||
|✔️|ProxyProvider 1|10ms|
|
|
||||||
|✔️|ProxyProvider 2|8ms|
|
|
||||||
|✔️|ProxyProvider 3|10ms|
|
|
||||||
|✔️|ProxyProvider 4|9ms|
|
|
||||||
|✔️|ProxyProvider 5|9ms|
|
|
||||||
|✔️|ProxyProvider 6|9ms|
|
|
||||||
|
|
||||||
**MultiProvider**
|
|
||||||
|Result|Test|Time|
|
|
||||||
|:---:|:---|---:|
|
|
||||||
|✔️|MultiProvider with 1 ChangeNotifierProvider default|9ms|
|
|
||||||
|✔️|MultiProvider with 2 ChangeNotifierProvider default|9ms|
|
|
||||||
|✔️|MultiProvider with ListenableProvider default|12ms|
|
|
||||||
|✔️|MultiProvider with Provider default|8ms|
|
|
||||||
|✔️|MultiProvider with ProxyProvider0|7ms|
|
|
||||||
|✔️|MultiProvider with ProxyProvider1|9ms|
|
|
||||||
|✔️|MultiProvider with ProxyProvider2|7ms|
|
|
||||||
|✔️|MultiProvider with ProxyProvider3|9ms|
|
|
||||||
|✔️|MultiProvider with ProxyProvider4|9ms|
|
|
||||||
|✔️|MultiProvider with ProxyProvider5|7ms|
|
|
||||||
|✔️|MultiProvider with ProxyProvider6|7ms|
|
|
||||||
### <a id="user-content-r0s1" href="#r0s1">test/change_notifier_provider_test.dart</a> ✔️
|
|
||||||
**10** tests were completed in **306ms** with **10** passed, **0** failed and **0** skipped.
|
|
||||||
|
|
||||||
|Result|Test|Time|
|
|
||||||
|:---:|:---|---:|
|
|
||||||
|✔️|Use builder property, not child|10ms|
|
|
||||||
|
|
||||||
**ChangeNotifierProvider**
|
|
||||||
|Result|Test|Time|
|
|
||||||
|:---:|:---|---:|
|
|
||||||
|✔️|ChangeNotifierProvider value|185ms|
|
|
||||||
|✔️|ChangeNotifierProvider builder|18ms|
|
|
||||||
|✔️|ChangeNotifierProvider builder1|12ms|
|
|
||||||
|✔️|ChangeNotifierProvider builder2|12ms|
|
|
||||||
|✔️|ChangeNotifierProvider builder3|19ms|
|
|
||||||
|✔️|ChangeNotifierProvider builder4|14ms|
|
|
||||||
|✔️|ChangeNotifierProvider builder5|15ms|
|
|
||||||
|✔️|ChangeNotifierProvider builder6|11ms|
|
|
||||||
|✔️|ChangeNotifierProvider builder0|10ms|
|
|
||||||
### <a id="user-content-r0s2" href="#r0s2">test/consumer_test.dart</a> ✔️
|
|
||||||
**18** tests were completed in **340ms** with **18** passed, **0** failed and **0** skipped.
|
|
||||||
|
|
||||||
**consumer**
|
|
||||||
|Result|Test|Time|
|
|
||||||
|:---:|:---|---:|
|
|
||||||
|✔️|consumer obtains value from Provider<T>|181ms|
|
|
||||||
|✔️|consumer crashed with no builder|11ms|
|
|
||||||
|✔️|consumer can be used inside MultiProvider|16ms|
|
|
||||||
|
|
||||||
**consumer2**
|
|
||||||
|Result|Test|Time|
|
|
||||||
|:---:|:---|---:|
|
|
||||||
|✔️|consumer2 obtains value from Provider<T>|22ms|
|
|
||||||
|✔️|consumer2 crashed with no builder|8ms|
|
|
||||||
|✔️|consumer2 can be used inside MultiProvider|9ms|
|
|
||||||
|
|
||||||
**consumer3**
|
|
||||||
|Result|Test|Time|
|
|
||||||
|:---:|:---|---:|
|
|
||||||
|✔️|consumer3 obtains value from Provider<T>|9ms|
|
|
||||||
|✔️|consumer3 crashed with no builder|7ms|
|
|
||||||
|✔️|consumer3 can be used inside MultiProvider|8ms|
|
|
||||||
|
|
||||||
**consumer4**
|
|
||||||
|Result|Test|Time|
|
|
||||||
|:---:|:---|---:|
|
|
||||||
|✔️|consumer4 obtains value from Provider<T>|8ms|
|
|
||||||
|✔️|consumer4 crashed with no builder|6ms|
|
|
||||||
|✔️|consumer4 can be used inside MultiProvider|8ms|
|
|
||||||
|
|
||||||
**consumer5**
|
|
||||||
|Result|Test|Time|
|
|
||||||
|:---:|:---|---:|
|
|
||||||
|✔️|consumer5 obtains value from Provider<T>|8ms|
|
|
||||||
|✔️|consumer5 crashed with no builder|6ms|
|
|
||||||
|✔️|consumer5 can be used inside MultiProvider|9ms|
|
|
||||||
|
|
||||||
**consumer6**
|
|
||||||
|Result|Test|Time|
|
|
||||||
|:---:|:---|---:|
|
|
||||||
|✔️|consumer6 obtains value from Provider<T>|8ms|
|
|
||||||
|✔️|consumer6 crashed with no builder|8ms|
|
|
||||||
|✔️|consumer6 can be used inside MultiProvider|8ms|
|
|
||||||
### <a id="user-content-r0s3" href="#r0s3">test/context_test.dart</a> ✔️
|
|
||||||
**31** tests were completed in **698ms** with **31** passed, **0** failed and **0** skipped.
|
|
||||||
|
|
||||||
|Result|Test|Time|
|
|
||||||
|:---:|:---|---:|
|
|
||||||
|✔️|watch in layoutbuilder|179ms|
|
|
||||||
|✔️|select in layoutbuilder|12ms|
|
|
||||||
|✔️|cannot select in listView|138ms|
|
|
||||||
|✔️|watch in listView|33ms|
|
|
||||||
|✔️|watch in gridView|21ms|
|
|
||||||
|✔️|clears select dependencies for all dependents|19ms|
|
|
||||||
|
|
||||||
**BuildContext**
|
|
||||||
|Result|Test|Time|
|
|
||||||
|:---:|:---|---:|
|
|
||||||
|✔️|BuildContext internal selected value is updated|32ms|
|
|
||||||
|✔️|BuildContext create can use read without being lazy|11ms|
|
|
||||||
|✔️|BuildContext watch can be used inside InheritedProvider.update|10ms|
|
|
||||||
|✔️|BuildContext select doesn't fail if it loads a provider that depends on other providers|9ms|
|
|
||||||
|✔️|BuildContext don't call old selectors if the child rebuilds individually|21ms|
|
|
||||||
|✔️|BuildContext selects throws inside click handlers|40ms|
|
|
||||||
|✔️|BuildContext select throws if try to read dynamic|9ms|
|
|
||||||
|✔️|BuildContext select throws ProviderNotFoundException|9ms|
|
|
||||||
|✔️|BuildContext select throws if watch called inside the callback from build|6ms|
|
|
||||||
|✔️|BuildContext select throws if read called inside the callback from build|9ms|
|
|
||||||
|✔️|BuildContext select throws if select called inside the callback from build|8ms|
|
|
||||||
|✔️|BuildContext select throws if read called inside the callback on dependency change|10ms|
|
|
||||||
|✔️|BuildContext select throws if watch called inside the callback on dependency change|17ms|
|
|
||||||
|✔️|BuildContext select throws if select called inside the callback on dependency change|9ms|
|
|
||||||
|✔️|BuildContext can call read inside didChangeDependencies|9ms|
|
|
||||||
|✔️|BuildContext select cannot be called inside didChangeDependencies|6ms|
|
|
||||||
|✔️|BuildContext select in initState throws|6ms|
|
|
||||||
|✔️|BuildContext watch in initState throws|10ms|
|
|
||||||
|✔️|BuildContext read in initState works|6ms|
|
|
||||||
|✔️|BuildContext consumer can be removed and selector stops to be called|7ms|
|
|
||||||
|✔️|BuildContext context.select deeply compares maps|15ms|
|
|
||||||
|✔️|BuildContext context.select deeply compares lists|8ms|
|
|
||||||
|✔️|BuildContext context.select deeply compares iterables|8ms|
|
|
||||||
|✔️|BuildContext context.select deeply compares sets|11ms|
|
|
||||||
|✔️|BuildContext context.watch listens to value changes|10ms|
|
|
||||||
### <a id="user-content-r0s4" href="#r0s4">test/future_provider_test.dart</a> ✔️
|
|
||||||
**10** tests were completed in **305ms** with **10** passed, **0** failed and **0** skipped.
|
|
||||||
|
|
||||||
|Result|Test|Time|
|
|
||||||
|:---:|:---|---:|
|
|
||||||
|✔️|works with MultiProvider|184ms|
|
|
||||||
|✔️|(catchError) previous future completes after transition is no-op|16ms|
|
|
||||||
|✔️|previous future completes after transition is no-op|15ms|
|
|
||||||
|✔️|transition from future to future preserve state|12ms|
|
|
||||||
|✔️|throws if future has error and catchError is missing|24ms|
|
|
||||||
|✔️|calls catchError if present and future has error|21ms|
|
|
||||||
|✔️|works with null|14ms|
|
|
||||||
|✔️|create and dispose future with builder|12ms|
|
|
||||||
|✔️|FutureProvider() crashes if builder is null|4ms|
|
|
||||||
|
|
||||||
**FutureProvider()**
|
|
||||||
|Result|Test|Time|
|
|
||||||
|:---:|:---|---:|
|
|
||||||
|✔️|FutureProvider() crashes if builder is null|3ms|
|
|
||||||
### <a id="user-content-r0s5" href="#r0s5">test/inherited_provider_test.dart</a> ✔️
|
|
||||||
**81** tests were completed in **1.117s** with **81** passed, **0** failed and **0** skipped.
|
|
||||||
|
|
||||||
|Result|Test|Time|
|
|
||||||
|:---:|:---|---:|
|
|
||||||
|✔️|regression test #377|167ms|
|
|
||||||
|✔️|rebuild on dependency flags update|15ms|
|
|
||||||
|✔️|properly update debug flags if a create triggers another deferred create|9ms|
|
|
||||||
|✔️|properly update debug flags if a create triggers another deferred create|8ms|
|
|
||||||
|✔️|properly update debug flags if an update triggers another create/update|7ms|
|
|
||||||
|✔️|properly update debug flags if a create triggers another create/update|8ms|
|
|
||||||
|✔️|Provider.of(listen: false) outside of build works when it loads a provider|22ms|
|
|
||||||
|✔️|new value is available in didChangeDependencies|26ms|
|
|
||||||
|✔️|builder receives the current value and updates independently from `update`|16ms|
|
|
||||||
|✔️|builder can _not_ rebuild when provider updates|8ms|
|
|
||||||
|✔️|builder rebuilds if provider is recreated|9ms|
|
|
||||||
|✔️|provider.of throws if listen:true outside of the widget tree|23ms|
|
|
||||||
|✔️|InheritedProvider throws if no child is provided with default constructor|14ms|
|
|
||||||
|✔️|InheritedProvider throws if no child is provided with value constructor|8ms|
|
|
||||||
|✔️|DeferredInheritedProvider throws if no child is provided with default constructor|15ms|
|
|
||||||
|✔️|DeferredInheritedProvider throws if no child is provided with value constructor|7ms|
|
|
||||||
|✔️|startListening markNeedsNotifyDependents|7ms|
|
|
||||||
|✔️|InheritedProvider can be subclassed|8ms|
|
|
||||||
|✔️|DeferredInheritedProvider can be subclassed|7ms|
|
|
||||||
|✔️|can be used with MultiProvider|8ms|
|
|
||||||
|✔️|throw if the widget ctor changes|8ms|
|
|
||||||
|✔️|InheritedProvider lazy loading can be disabled|6ms|
|
|
||||||
|✔️|InheritedProvider.value lazy loading can be disabled|9ms|
|
|
||||||
|✔️|InheritedProvider subclass don't have to specify default lazy value|7ms|
|
|
||||||
|✔️|DeferredInheritedProvider lazy loading can be disabled|7ms|
|
|
||||||
|✔️|DeferredInheritedProvider.value lazy loading can be disabled|7ms|
|
|
||||||
|✔️|selector|14ms|
|
|
||||||
|✔️|can select multiple types from same provider|9ms|
|
|
||||||
|✔️|can select same type on two different providers|8ms|
|
|
||||||
|✔️|can select same type twice on same provider|10ms|
|
|
||||||
|✔️|Provider.of has a proper error message if context is null|6ms|
|
|
||||||
|
|
||||||
**diagnostics**
|
|
||||||
|Result|Test|Time|
|
|
||||||
|:---:|:---|---:|
|
|
||||||
|✔️|diagnostics InheritedProvider.value|11ms|
|
|
||||||
|✔️|diagnostics InheritedProvider doesn't break lazy loading|7ms|
|
|
||||||
|✔️|diagnostics InheritedProvider show if listening|7ms|
|
|
||||||
|✔️|diagnostics DeferredInheritedProvider.value|6ms|
|
|
||||||
|✔️|diagnostics DeferredInheritedProvider|16ms|
|
|
||||||
|
|
||||||
**InheritedProvider.value()**
|
|
||||||
|Result|Test|Time|
|
|
||||||
|:---:|:---|---:|
|
|
||||||
|✔️|InheritedProvider.value() markNeedsNotifyDependents during startListening is noop|8ms|
|
|
||||||
|✔️|InheritedProvider.value() startListening called again when create returns new value|27ms|
|
|
||||||
|✔️|InheritedProvider.value() startListening|19ms|
|
|
||||||
|✔️|InheritedProvider.value() stopListening not called twice if rebuild doesn't have listeners|16ms|
|
|
||||||
|✔️|InheritedProvider.value() removeListener cannot be null|22ms|
|
|
||||||
|✔️|InheritedProvider.value() pass down current value|17ms|
|
|
||||||
|✔️|InheritedProvider.value() default updateShouldNotify|8ms|
|
|
||||||
|✔️|InheritedProvider.value() custom updateShouldNotify|32ms|
|
|
||||||
|
|
||||||
**InheritedProvider()**
|
|
||||||
|Result|Test|Time|
|
|
||||||
|:---:|:---|---:|
|
|
||||||
|✔️|InheritedProvider() hasValue|16ms|
|
|
||||||
|✔️|InheritedProvider() provider calls update if rebuilding only due to didChangeDependencies|9ms|
|
|
||||||
|✔️|InheritedProvider() provider notifying dependents doesn't call update|11ms|
|
|
||||||
|✔️|InheritedProvider() update can call Provider.of with listen:true|7ms|
|
|
||||||
|✔️|InheritedProvider() update lazy loaded can call Provider.of with listen:true|10ms|
|
|
||||||
|✔️|InheritedProvider() markNeedsNotifyDependents during startListening is noop|22ms|
|
|
||||||
|✔️|InheritedProvider() update can obtain parent of the same type than self|15ms|
|
|
||||||
|✔️|InheritedProvider() _debugCheckInvalidValueType|22ms|
|
|
||||||
|✔️|InheritedProvider() startListening|18ms|
|
|
||||||
|✔️|InheritedProvider() startListening called again when create returns new value|20ms|
|
|
||||||
|✔️|InheritedProvider() stopListening not called twice if rebuild doesn't have listeners|18ms|
|
|
||||||
|✔️|InheritedProvider() removeListener cannot be null|16ms|
|
|
||||||
|✔️|InheritedProvider() fails if initialValueBuilder calls inheritFromElement/inheritFromWiggetOfExactType|17ms|
|
|
||||||
|✔️|InheritedProvider() builder is called on every rebuild and after a dependency change|11ms|
|
|
||||||
|✔️|InheritedProvider() builder with no updateShouldNotify use ==|8ms|
|
|
||||||
|✔️|InheritedProvider() builder calls updateShouldNotify callback|8ms|
|
|
||||||
|✔️|InheritedProvider() initialValue is transmitted to valueBuilder|8ms|
|
|
||||||
|✔️|InheritedProvider() calls builder again if dependencies change|22ms|
|
|
||||||
|✔️|InheritedProvider() exposes initialValue if valueBuilder is null|20ms|
|
|
||||||
|✔️|InheritedProvider() call dispose on unmount|22ms|
|
|
||||||
|✔️|InheritedProvider() builder unmount, dispose not called if value never read|11ms|
|
|
||||||
|✔️|InheritedProvider() call dispose after new value|9ms|
|
|
||||||
|✔️|InheritedProvider() valueBuilder works without initialBuilder|11ms|
|
|
||||||
|✔️|InheritedProvider() calls initialValueBuilder lazily once|7ms|
|
|
||||||
|✔️|InheritedProvider() throws if both builder and initialBuilder are missing|5ms|
|
|
||||||
|
|
||||||
**DeferredInheritedProvider.value()**
|
|
||||||
|Result|Test|Time|
|
|
||||||
|:---:|:---|---:|
|
|
||||||
|✔️|DeferredInheritedProvider.value() hasValue|6ms|
|
|
||||||
|✔️|DeferredInheritedProvider.value() startListening|9ms|
|
|
||||||
|✔️|DeferredInheritedProvider.value() stopListening cannot be null|9ms|
|
|
||||||
|✔️|DeferredInheritedProvider.value() startListening doesn't need setState if already initialized|8ms|
|
|
||||||
|✔️|DeferredInheritedProvider.value() setState without updateShouldNotify|8ms|
|
|
||||||
|✔️|DeferredInheritedProvider.value() setState with updateShouldNotify|9ms|
|
|
||||||
|✔️|DeferredInheritedProvider.value() startListening never leave the widget uninitialized|8ms|
|
|
||||||
|✔️|DeferredInheritedProvider.value() startListening called again on controller change|10ms|
|
|
||||||
|
|
||||||
**DeferredInheritedProvider()**
|
|
||||||
|Result|Test|Time|
|
|
||||||
|:---:|:---|---:|
|
|
||||||
|✔️|DeferredInheritedProvider() create can't call inherited widgets|7ms|
|
|
||||||
|✔️|DeferredInheritedProvider() creates the value lazily|7ms|
|
|
||||||
|✔️|DeferredInheritedProvider() dispose|7ms|
|
|
||||||
|✔️|DeferredInheritedProvider() dispose no-op if never built|7ms|
|
|
||||||
### <a id="user-content-r0s6" href="#r0s6">test/listenable_provider_test.dart</a> ✔️
|
|
||||||
**16** tests were completed in **353ms** with **16** passed, **0** failed and **0** skipped.
|
|
||||||
|
|
||||||
**ListenableProvider**
|
|
||||||
|Result|Test|Time|
|
|
||||||
|:---:|:---|---:|
|
|
||||||
|✔️|ListenableProvider works with MultiProvider|173ms|
|
|
||||||
|✔️|ListenableProvider asserts that the created notifier can have listeners|12ms|
|
|
||||||
|✔️|ListenableProvider don't listen again if listenable instance doesn't change|12ms|
|
|
||||||
|✔️|ListenableProvider works with null (default)|7ms|
|
|
||||||
|✔️|ListenableProvider works with null (create)|7ms|
|
|
||||||
|✔️|ListenableProvider stateful create called once|11ms|
|
|
||||||
|✔️|ListenableProvider dispose called on unmount|13ms|
|
|
||||||
|✔️|ListenableProvider dispose can be null|8ms|
|
|
||||||
|✔️|ListenableProvider changing listenable rebuilds descendants|12ms|
|
|
||||||
|✔️|ListenableProvider rebuilding with the same provider don't rebuilds descendants|11ms|
|
|
||||||
|✔️|ListenableProvider notifylistener rebuilds descendants|9ms|
|
|
||||||
|
|
||||||
**ListenableProvider value constructor**
|
|
||||||
|Result|Test|Time|
|
|
||||||
|:---:|:---|---:|
|
|
||||||
|✔️|ListenableProvider value constructor pass down key|17ms|
|
|
||||||
|✔️|ListenableProvider value constructor changing the Listenable instance rebuilds dependents|29ms|
|
|
||||||
|
|
||||||
**ListenableProvider stateful constructor**
|
|
||||||
|Result|Test|Time|
|
|
||||||
|:---:|:---|---:|
|
|
||||||
|✔️|ListenableProvider stateful constructor called with context|8ms|
|
|
||||||
|✔️|ListenableProvider stateful constructor pass down key|20ms|
|
|
||||||
|✔️|ListenableProvider stateful constructor throws if create is null|4ms|
|
|
||||||
### <a id="user-content-r0s7" href="#r0s7">test/listenable_proxy_provider_test.dart</a> ✔️
|
|
||||||
**12** tests were completed in **373ms** with **12** passed, **0** failed and **0** skipped.
|
|
||||||
|
|
||||||
**ListenableProxyProvider**
|
|
||||||
|Result|Test|Time|
|
|
||||||
|:---:|:---|---:|
|
|
||||||
|✔️|ListenableProxyProvider throws if update is missing|43ms|
|
|
||||||
|✔️|ListenableProxyProvider asserts that the created notifier has no listener|177ms|
|
|
||||||
|✔️|ListenableProxyProvider asserts that the created notifier has no listener after rebuild|18ms|
|
|
||||||
|✔️|ListenableProxyProvider rebuilds dependendents when listeners are called|20ms|
|
|
||||||
|✔️|ListenableProxyProvider update returning a new Listenable disposes the previously created value and update dependents|25ms|
|
|
||||||
|✔️|ListenableProxyProvider disposes of created value|13ms|
|
|
||||||
|
|
||||||
**ListenableProxyProvider variants**
|
|
||||||
|Result|Test|Time|
|
|
||||||
|:---:|:---|---:|
|
|
||||||
|✔️|ListenableProxyProvider variants ListenableProxyProvider|13ms|
|
|
||||||
|✔️|ListenableProxyProvider variants ListenableProxyProvider2|9ms|
|
|
||||||
|✔️|ListenableProxyProvider variants ListenableProxyProvider3|9ms|
|
|
||||||
|✔️|ListenableProxyProvider variants ListenableProxyProvider4|17ms|
|
|
||||||
|✔️|ListenableProxyProvider variants ListenableProxyProvider5|12ms|
|
|
||||||
|✔️|ListenableProxyProvider variants ListenableProxyProvider6|17ms|
|
|
||||||
### <a id="user-content-r0s8" href="#r0s8">test/multi_provider_test.dart</a> ✔️
|
|
||||||
**3** tests were completed in **198ms** with **3** passed, **0** failed and **0** skipped.
|
|
||||||
|
|
||||||
**MultiProvider**
|
|
||||||
|Result|Test|Time|
|
|
||||||
|:---:|:---|---:|
|
|
||||||
|✔️|MultiProvider throw if providers is null|30ms|
|
|
||||||
|✔️|MultiProvider MultiProvider children can only access parent providers|160ms|
|
|
||||||
|✔️|MultiProvider MultiProvider.providers with ignored child|8ms|
|
|
||||||
### <a id="user-content-r0s9" href="#r0s9">test/provider_test.dart</a> ✔️
|
|
||||||
**11** tests were completed in **306ms** with **11** passed, **0** failed and **0** skipped.
|
|
||||||
|
|
||||||
|Result|Test|Time|
|
|
||||||
|:---:|:---|---:|
|
|
||||||
|✔️|works with MultiProvider|172ms|
|
|
||||||
|
|
||||||
**Provider.of**
|
|
||||||
|Result|Test|Time|
|
|
||||||
|:---:|:---|---:|
|
|
||||||
|✔️|Provider.of throws if T is dynamic|26ms|
|
|
||||||
|✔️|Provider.of listen defaults to true when building widgets|13ms|
|
|
||||||
|✔️|Provider.of listen defaults to false outside of the widget tree|9ms|
|
|
||||||
|✔️|Provider.of listen:false doesn't trigger rebuild|10ms|
|
|
||||||
|✔️|Provider.of listen:true outside of the widget tree throws|11ms|
|
|
||||||
|
|
||||||
**Provider**
|
|
||||||
|Result|Test|Time|
|
|
||||||
|:---:|:---|---:|
|
|
||||||
|✔️|Provider throws if the provided value is a Listenable/Stream|28ms|
|
|
||||||
|✔️|Provider debugCheckInvalidValueType can be disabled|9ms|
|
|
||||||
|✔️|Provider simple usage|9ms|
|
|
||||||
|✔️|Provider throws an error if no provider found|11ms|
|
|
||||||
|✔️|Provider update should notify|8ms|
|
|
||||||
### <a id="user-content-r0s10" href="#r0s10">test/proxy_provider_test.dart</a> ✔️
|
|
||||||
**16** tests were completed in **438ms** with **16** passed, **0** failed and **0** skipped.
|
|
||||||
|
|
||||||
**ProxyProvider**
|
|
||||||
|Result|Test|Time|
|
|
||||||
|:---:|:---|---:|
|
|
||||||
|✔️|ProxyProvider throws if the provided value is a Listenable/Stream|209ms|
|
|
||||||
|✔️|ProxyProvider debugCheckInvalidValueType can be disabled|13ms|
|
|
||||||
|✔️|ProxyProvider create creates initial value|23ms|
|
|
||||||
|✔️|ProxyProvider consume another providers|18ms|
|
|
||||||
|✔️|ProxyProvider rebuild descendants if value change|13ms|
|
|
||||||
|✔️|ProxyProvider call dispose when unmounted with the latest result|11ms|
|
|
||||||
|✔️|ProxyProvider don't rebuild descendants if value doesn't change|12ms|
|
|
||||||
|✔️|ProxyProvider pass down updateShouldNotify|19ms|
|
|
||||||
|✔️|ProxyProvider works with MultiProvider|16ms|
|
|
||||||
|✔️|ProxyProvider update callback can trigger descendants setState synchronously|24ms|
|
|
||||||
|✔️|ProxyProvider throws if update is null|7ms|
|
|
||||||
|
|
||||||
**ProxyProvider variants**
|
|
||||||
|Result|Test|Time|
|
|
||||||
|:---:|:---|---:|
|
|
||||||
|✔️|ProxyProvider variants ProxyProvider2|18ms|
|
|
||||||
|✔️|ProxyProvider variants ProxyProvider3|16ms|
|
|
||||||
|✔️|ProxyProvider variants ProxyProvider4|9ms|
|
|
||||||
|✔️|ProxyProvider variants ProxyProvider5|20ms|
|
|
||||||
|✔️|ProxyProvider variants ProxyProvider6|10ms|
|
|
||||||
### <a id="user-content-r0s11" href="#r0s11">test/reassemble_test.dart</a> ✔️
|
|
||||||
**3** tests were completed in **221ms** with **3** passed, **0** failed and **0** skipped.
|
|
||||||
|
|
||||||
|Result|Test|Time|
|
|
||||||
|:---:|:---|---:|
|
|
||||||
|✔️|ReassembleHandler|194ms|
|
|
||||||
|✔️|unevaluated create|11ms|
|
|
||||||
|✔️|unevaluated create|16ms|
|
|
||||||
### <a id="user-content-r0s12" href="#r0s12">test/selector_test.dart</a> ✔️
|
|
||||||
**17** tests were completed in **364ms** with **17** passed, **0** failed and **0** skipped.
|
|
||||||
|
|
||||||
|Result|Test|Time|
|
|
||||||
|:---:|:---|---:|
|
|
||||||
|✔️|asserts that builder/selector are not null|32ms|
|
|
||||||
|✔️|Deep compare maps by default|158ms|
|
|
||||||
|✔️|Deep compare iterables by default|9ms|
|
|
||||||
|✔️|Deep compare sets by default|12ms|
|
|
||||||
|✔️|Deep compare lists by default|14ms|
|
|
||||||
|✔️|custom shouldRebuid|11ms|
|
|
||||||
|✔️|passes `child` and `key`|13ms|
|
|
||||||
|✔️|calls builder if the callback changes|14ms|
|
|
||||||
|✔️|works with MultiProvider|12ms|
|
|
||||||
|✔️|don't call builder again if it rebuilds but selector returns the same thing|9ms|
|
|
||||||
|✔️|call builder again if it rebuilds abd selector returns the a different variable|9ms|
|
|
||||||
|✔️|Selector|15ms|
|
|
||||||
|✔️|Selector2|9ms|
|
|
||||||
|✔️|Selector3|8ms|
|
|
||||||
|✔️|Selector4|9ms|
|
|
||||||
|✔️|Selector5|19ms|
|
|
||||||
|✔️|Selector6|11ms|
|
|
||||||
### <a id="user-content-r0s13" href="#r0s13">test/stateful_provider_test.dart</a> ✔️
|
|
||||||
**4** tests were completed in **254ms** with **4** passed, **0** failed and **0** skipped.
|
|
||||||
|
|
||||||
|Result|Test|Time|
|
|
||||||
|:---:|:---|---:|
|
|
||||||
|✔️|asserts|6ms|
|
|
||||||
|✔️|works with MultiProvider|203ms|
|
|
||||||
|✔️|calls create only once|27ms|
|
|
||||||
|✔️|dispose|18ms|
|
|
||||||
### <a id="user-content-r0s14" href="#r0s14">test/stream_provider_test.dart</a> ✔️
|
|
||||||
**8** tests were completed in **282ms** with **8** passed, **0** failed and **0** skipped.
|
|
||||||
|
|
||||||
|Result|Test|Time|
|
|
||||||
|:---:|:---|---:|
|
|
||||||
|✔️|works with MultiProvider|191ms|
|
|
||||||
|✔️|transition from stream to stream preserve state|16ms|
|
|
||||||
|✔️|throws if stream has error and catchError is missing|22ms|
|
|
||||||
|✔️|calls catchError if present and stream has error|20ms|
|
|
||||||
|✔️|works with null|13ms|
|
|
||||||
|✔️|StreamProvider() crashes if builder is null|5ms|
|
|
||||||
|
|
||||||
**StreamProvider()**
|
|
||||||
|Result|Test|Time|
|
|
||||||
|:---:|:---|---:|
|
|
||||||
|✔️|StreamProvider() create and dispose stream with builder|11ms|
|
|
||||||
|✔️|StreamProvider() crashes if builder is null|4ms|
|
|
||||||
### <a id="user-content-r0s15" href="#r0s15">test/value_listenable_provider_test.dart</a> ❌
|
|
||||||
**5** tests were completed in **327ms** with **4** passed, **1** failed and **0** skipped.
|
|
||||||
|
|
||||||
**valueListenableProvider**
|
|
||||||
|Result|Test|Time|
|
|
||||||
|:---:|:---|---:|
|
|
||||||
|✔️|valueListenableProvider rebuilds when value change|200ms|
|
|
||||||
|✔️|valueListenableProvider don't rebuild dependents by default|26ms|
|
|
||||||
|✔️|valueListenableProvider pass keys|10ms|
|
|
||||||
|✔️|valueListenableProvider don't listen again if stream instance doesn't change|22ms|
|
|
||||||
|❌|valueListenableProvider pass updateShouldNotify|69ms|
|
|
||||||
12
__tests__/__outputs__/pulsar-test-results-no-merge.md
Normal file
12
__tests__/__outputs__/pulsar-test-results-no-merge.md
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|

|
||||||
|
## ❌ <a id="user-content-r0" href="#r0">fixtures/external/java/TEST-org.apache.pulsar.AddMissingPatchVersionTest.xml</a>
|
||||||
|
**2** tests were completed in **116ms** with **0** passed, **1** failed and **1** skipped.
|
||||||
|
|Test suite|Passed|Failed|Skipped|Time|
|
||||||
|
|:---|---:|---:|---:|---:|
|
||||||
|
|[org.apache.pulsar.AddMissingPatchVersionTest](#r0s0)||1❌|1✖️|116ms|
|
||||||
|
### ❌ <a id="user-content-r0s0" href="#r0s0">org.apache.pulsar.AddMissingPatchVersionTest</a>
|
||||||
|
```
|
||||||
|
✖️ testVersionStrings
|
||||||
|
❌ testVersionStrings
|
||||||
|
java.lang.AssertionError: expected [1.2.1] but found [1.2.0]
|
||||||
|
```
|
||||||
1518
__tests__/__outputs__/pulsar-test-results.md
Normal file
1518
__tests__/__outputs__/pulsar-test-results.md
Normal file
File diff suppressed because it is too large
Load Diff
136
__tests__/__outputs__/silent-notes-test-results.md
Normal file
136
__tests__/__outputs__/silent-notes-test-results.md
Normal file
@@ -0,0 +1,136 @@
|
|||||||
|

|
||||||
|
## ✔️ <a id="user-content-r0" href="#r0">fixtures/external/SilentNotes.trx</a>
|
||||||
|
**79** tests were completed in **1s** with **67** passed, **0** failed and **12** skipped.
|
||||||
|
|Test suite|Passed|Failed|Skipped|Time|
|
||||||
|
|:---|---:|---:|---:|---:|
|
||||||
|
|[VanillaCloudStorageClientTest.CloudStorageCredentialsTest](#r0s0)|6✔️|||30ms|
|
||||||
|
|[VanillaCloudStorageClientTest.CloudStorageProviders.DropboxCloudStorageClientTest](#r0s1)|2✔️||3✖️|101ms|
|
||||||
|
|[VanillaCloudStorageClientTest.CloudStorageProviders.FtpCloudStorageClientTest](#r0s2)|4✔️||3✖️|166ms|
|
||||||
|
|[VanillaCloudStorageClientTest.CloudStorageProviders.GmxCloudStorageClientTest](#r0s3)|2✔️|||7ms|
|
||||||
|
|[VanillaCloudStorageClientTest.CloudStorageProviders.GoogleCloudStorageClientTest](#r0s4)|1✔️||3✖️|40ms|
|
||||||
|
|[VanillaCloudStorageClientTest.CloudStorageProviders.OnedriveCloudStorageClientTest](#r0s5)|1✔️||3✖️|15ms|
|
||||||
|
|[VanillaCloudStorageClientTest.CloudStorageProviders.WebdavCloudStorageClientTest](#r0s6)|5✔️|||16ms|
|
||||||
|
|[VanillaCloudStorageClientTest.CloudStorageTokenTest](#r0s7)|9✔️|||0ms|
|
||||||
|
|[VanillaCloudStorageClientTest.OAuth2.AuthorizationResponseErrorTest](#r0s8)|3✔️|||3ms|
|
||||||
|
|[VanillaCloudStorageClientTest.OAuth2.OAuth2UtilsTest](#r0s9)|9✔️|||12ms|
|
||||||
|
|[VanillaCloudStorageClientTest.OAuth2CloudStorageClientTest](#r0s10)|5✔️|||13ms|
|
||||||
|
|[VanillaCloudStorageClientTest.SecureStringExtensionsTest](#r0s11)|7✔️|||0ms|
|
||||||
|
|[VanillaCloudStorageClientTest.SerializeableCloudStorageCredentialsTest](#r0s12)|13✔️|||43ms|
|
||||||
|
### ✔️ <a id="user-content-r0s0" href="#r0s0">VanillaCloudStorageClientTest.CloudStorageCredentialsTest</a>
|
||||||
|
```
|
||||||
|
✔️ AreEqualWorksWithDifferentPassword
|
||||||
|
✔️ AreEqualWorksWithSameContent
|
||||||
|
✔️ CorrectlyConvertsSecureStringToString
|
||||||
|
✔️ CorrectlyConvertsStringToSecureString
|
||||||
|
✔️ ValidateAcceptsValidCredentials
|
||||||
|
✔️ ValidateRejectsInvalidCredentials
|
||||||
|
```
|
||||||
|
### ✔️ <a id="user-content-r0s1" href="#r0s1">VanillaCloudStorageClientTest.CloudStorageProviders.DropboxCloudStorageClientTest</a>
|
||||||
|
```
|
||||||
|
✔️ FileLifecycleWorks
|
||||||
|
✖️ ReallyDoFetchToken
|
||||||
|
✖️ ReallyDoOpenAuthorizationPageInBrowser
|
||||||
|
✖️ ReallyDoRefreshToken
|
||||||
|
✔️ ThrowsAccessDeniedExceptionWithInvalidToken
|
||||||
|
```
|
||||||
|
### ✔️ <a id="user-content-r0s2" href="#r0s2">VanillaCloudStorageClientTest.CloudStorageProviders.FtpCloudStorageClientTest</a>
|
||||||
|
```
|
||||||
|
✔️ FileLifecycleWorks
|
||||||
|
✔️ SanitizeCredentials_ChangesInvalidPrefix
|
||||||
|
✔️ SecureSslConnectionWorks
|
||||||
|
✔️ ThrowsWithHttpInsteadOfFtp
|
||||||
|
✖️ ThrowsWithInvalidPassword
|
||||||
|
✖️ ThrowsWithInvalidUrl
|
||||||
|
✖️ ThrowsWithInvalidUsername
|
||||||
|
```
|
||||||
|
### ✔️ <a id="user-content-r0s3" href="#r0s3">VanillaCloudStorageClientTest.CloudStorageProviders.GmxCloudStorageClientTest</a>
|
||||||
|
```
|
||||||
|
✔️ ChoosesCorrectUrlForGmxComEmail
|
||||||
|
✔️ ChoosesCorrectUrlForGmxNetEmail
|
||||||
|
```
|
||||||
|
### ✔️ <a id="user-content-r0s4" href="#r0s4">VanillaCloudStorageClientTest.CloudStorageProviders.GoogleCloudStorageClientTest</a>
|
||||||
|
```
|
||||||
|
✔️ FileLifecycleWorks
|
||||||
|
✖️ ReallyDoFetchToken
|
||||||
|
✖️ ReallyDoOpenAuthorizationPageInBrowser
|
||||||
|
✖️ ReallyDoRefreshToken
|
||||||
|
```
|
||||||
|
### ✔️ <a id="user-content-r0s5" href="#r0s5">VanillaCloudStorageClientTest.CloudStorageProviders.OnedriveCloudStorageClientTest</a>
|
||||||
|
```
|
||||||
|
✔️ FileLifecycleWorks
|
||||||
|
✖️ ReallyDoFetchToken
|
||||||
|
✖️ ReallyDoOpenAuthorizationPageInBrowser
|
||||||
|
✖️ ReallyDoRefreshToken
|
||||||
|
```
|
||||||
|
### ✔️ <a id="user-content-r0s6" href="#r0s6">VanillaCloudStorageClientTest.CloudStorageProviders.WebdavCloudStorageClientTest</a>
|
||||||
|
```
|
||||||
|
✔️ FileLifecycleWorks
|
||||||
|
✔️ ParseGmxWebdavResponseCorrectly
|
||||||
|
✔️ ParseStratoWebdavResponseCorrectly
|
||||||
|
✔️ ThrowsWithInvalidPath
|
||||||
|
✔️ ThrowsWithInvalidUsername
|
||||||
|
```
|
||||||
|
### ✔️ <a id="user-content-r0s7" href="#r0s7">VanillaCloudStorageClientTest.CloudStorageTokenTest</a>
|
||||||
|
```
|
||||||
|
✔️ AreEqualWorksWithNullDate
|
||||||
|
✔️ AreEqualWorksWithSameContent
|
||||||
|
✔️ NeedsRefreshReturnsFalseForTokenFlow
|
||||||
|
✔️ NeedsRefreshReturnsFalseIfNotExpired
|
||||||
|
✔️ NeedsRefreshReturnsTrueIfExpired
|
||||||
|
✔️ NeedsRefreshReturnsTrueIfNoExpirationDate
|
||||||
|
✔️ SetExpiryDateBySecondsWorks
|
||||||
|
✔️ SetExpiryDateBySecondsWorksWithNull
|
||||||
|
✔️ SetExpiryDateBySecondsWorksWithVeryShortPeriod
|
||||||
|
```
|
||||||
|
### ✔️ <a id="user-content-r0s8" href="#r0s8">VanillaCloudStorageClientTest.OAuth2.AuthorizationResponseErrorTest</a>
|
||||||
|
```
|
||||||
|
✔️ ParsesAllErrorCodesCorrectly
|
||||||
|
✔️ ParsesNullErrorCodeCorrectly
|
||||||
|
✔️ ParsesUnknownErrorCodeCorrectly
|
||||||
|
```
|
||||||
|
### ✔️ <a id="user-content-r0s9" href="#r0s9">VanillaCloudStorageClientTest.OAuth2.OAuth2UtilsTest</a>
|
||||||
|
```
|
||||||
|
✔️ BuildAuthorizationRequestUrlEscapesParameters
|
||||||
|
✔️ BuildAuthorizationRequestUrlLeavesOutOptionalParameters
|
||||||
|
✔️ BuildAuthorizationRequestUrlThrowsWithMissingRedirectUrlForTokenFlow
|
||||||
|
✔️ BuildAuthorizationRequestUrlUsesAllParameters
|
||||||
|
✔️ BuildAuthorizationRequestUrlUsesCodeVerifier
|
||||||
|
✔️ ParseRealWorldDropboxRejectResponse
|
||||||
|
✔️ ParseRealWorldDropboxSuccessResponse
|
||||||
|
✔️ ParseRealWorldGoogleRejectResponse
|
||||||
|
✔️ ParseRealWorldGoogleSuccessResponse
|
||||||
|
```
|
||||||
|
### ✔️ <a id="user-content-r0s10" href="#r0s10">VanillaCloudStorageClientTest.OAuth2CloudStorageClientTest</a>
|
||||||
|
```
|
||||||
|
✔️ BuildOAuth2AuthorizationRequestUrlWorks
|
||||||
|
✔️ FetchTokenCanInterpretGoogleResponse
|
||||||
|
✔️ FetchTokenReturnsNullForDeniedAccess
|
||||||
|
✔️ FetchTokenThrowsWithWrongState
|
||||||
|
✔️ RefreshTokenCanInterpretGoogleResponse
|
||||||
|
```
|
||||||
|
### ✔️ <a id="user-content-r0s11" href="#r0s11">VanillaCloudStorageClientTest.SecureStringExtensionsTest</a>
|
||||||
|
```
|
||||||
|
✔️ AreEqualsWorksCorrectly
|
||||||
|
✔️ CorrectlyConvertsSecureStringToString
|
||||||
|
✔️ CorrectlyConvertsSecureStringToUnicodeBytes
|
||||||
|
✔️ CorrectlyConvertsSecureStringToUtf8Bytes
|
||||||
|
✔️ CorrectlyConvertsStringToSecureString
|
||||||
|
✔️ CorrectlyConvertsUnicodeBytesToSecureString
|
||||||
|
✔️ CorrectlyConvertsUtf8BytesToSecureString
|
||||||
|
```
|
||||||
|
### ✔️ <a id="user-content-r0s12" href="#r0s12">VanillaCloudStorageClientTest.SerializeableCloudStorageCredentialsTest</a>
|
||||||
|
```
|
||||||
|
✔️ DecryptAfterDesrializationCanReadAllPropertiesBack
|
||||||
|
✔️ DecryptAfterDesrializationRespectsNullProperties
|
||||||
|
✔️ EncryptBeforeSerializationProtectsAllNecessaryProperties
|
||||||
|
✔️ EncryptBeforeSerializationRespectsNullProperties
|
||||||
|
✔️ SerializedDatacontractCanBeReadBack
|
||||||
|
✔️ SerializedDatacontractDoesNotContainNullProperties
|
||||||
|
✔️ SerializedDatacontractDoesNotContainPlaintextData
|
||||||
|
✔️ SerializedJsonCanBeReadBack
|
||||||
|
✔️ SerializedJsonDoesNotContainNullProperties
|
||||||
|
✔️ SerializedJsonDoesNotContainPlaintextData
|
||||||
|
✔️ SerializedXmlCanBeReadBack
|
||||||
|
✔️ SerializedXmlDoesNotContainNullProperties
|
||||||
|
✔️ SerializedXmlDoesNotContainPlaintextData
|
||||||
|
```
|
||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
6880
__tests__/__snapshots__/java-junit.test.ts.snap
Normal file
6880
__tests__/__snapshots__/java-junit.test.ts.snap
Normal file
File diff suppressed because it is too large
Load Diff
7587
__tests__/__snapshots__/mocha-json.test.ts.snap
Normal file
7587
__tests__/__snapshots__/mocha-json.test.ts.snap
Normal file
File diff suppressed because it is too large
Load Diff
@@ -7,6 +7,22 @@ import {getReport} from '../src/report/get-report'
|
|||||||
import {normalizeFilePath} from '../src/utils/path-utils'
|
import {normalizeFilePath} from '../src/utils/path-utils'
|
||||||
|
|
||||||
describe('dart-json tests', () => {
|
describe('dart-json tests', () => {
|
||||||
|
it('produces empty test run result when there are no test cases', async () => {
|
||||||
|
const fixturePath = path.join(__dirname, 'fixtures', 'empty', 'dart-json.json')
|
||||||
|
const filePath = normalizeFilePath(path.relative(__dirname, fixturePath))
|
||||||
|
const fileContent = fs.readFileSync(fixturePath, {encoding: 'utf8'})
|
||||||
|
|
||||||
|
const opts: ParseOptions = {
|
||||||
|
parseErrors: true,
|
||||||
|
trackedFiles: []
|
||||||
|
}
|
||||||
|
|
||||||
|
const parser = new DartJsonParser(opts, 'dart')
|
||||||
|
const result = await parser.parse(filePath, fileContent)
|
||||||
|
expect(result.tests).toBe(0)
|
||||||
|
expect(result.result).toBe('success')
|
||||||
|
})
|
||||||
|
|
||||||
it('matches report snapshot', async () => {
|
it('matches report snapshot', async () => {
|
||||||
const opts: ParseOptions = {
|
const opts: ParseOptions = {
|
||||||
parseErrors: true,
|
parseErrors: true,
|
||||||
|
|||||||
@@ -7,6 +7,22 @@ import {getReport} from '../src/report/get-report'
|
|||||||
import {normalizeFilePath} from '../src/utils/path-utils'
|
import {normalizeFilePath} from '../src/utils/path-utils'
|
||||||
|
|
||||||
describe('dotnet-trx tests', () => {
|
describe('dotnet-trx tests', () => {
|
||||||
|
it('produces empty test run result when there are no test cases', async () => {
|
||||||
|
const fixturePath = path.join(__dirname, 'fixtures', 'empty', 'dotnet-trx.trx')
|
||||||
|
const filePath = normalizeFilePath(path.relative(__dirname, fixturePath))
|
||||||
|
const fileContent = fs.readFileSync(fixturePath, {encoding: 'utf8'})
|
||||||
|
|
||||||
|
const opts: ParseOptions = {
|
||||||
|
parseErrors: true,
|
||||||
|
trackedFiles: []
|
||||||
|
}
|
||||||
|
|
||||||
|
const parser = new DotnetTrxParser(opts)
|
||||||
|
const result = await parser.parse(filePath, fileContent)
|
||||||
|
expect(result.tests).toBe(0)
|
||||||
|
expect(result.result).toBe('success')
|
||||||
|
})
|
||||||
|
|
||||||
it('matches report snapshot', async () => {
|
it('matches report snapshot', async () => {
|
||||||
const fixturePath = path.join(__dirname, 'fixtures', 'dotnet-trx.trx')
|
const fixturePath = path.join(__dirname, 'fixtures', 'dotnet-trx.trx')
|
||||||
const outputPath = path.join(__dirname, '__outputs__', 'dotnet-trx.md')
|
const outputPath = path.join(__dirname, '__outputs__', 'dotnet-trx.md')
|
||||||
@@ -47,4 +63,24 @@ describe('dotnet-trx tests', () => {
|
|||||||
fs.mkdirSync(path.dirname(outputPath), {recursive: true})
|
fs.mkdirSync(path.dirname(outputPath), {recursive: true})
|
||||||
fs.writeFileSync(outputPath, report)
|
fs.writeFileSync(outputPath, report)
|
||||||
})
|
})
|
||||||
|
|
||||||
|
it('report from SilentNotes test results matches snapshot', async () => {
|
||||||
|
const fixturePath = path.join(__dirname, 'fixtures', 'external', 'SilentNotes.trx')
|
||||||
|
const outputPath = path.join(__dirname, '__outputs__', 'silent-notes-test-results.md')
|
||||||
|
const filePath = normalizeFilePath(path.relative(__dirname, fixturePath))
|
||||||
|
const fileContent = fs.readFileSync(fixturePath, {encoding: 'utf8'})
|
||||||
|
|
||||||
|
const opts: ParseOptions = {
|
||||||
|
trackedFiles: [],
|
||||||
|
parseErrors: true
|
||||||
|
}
|
||||||
|
|
||||||
|
const parser = new DotnetTrxParser(opts)
|
||||||
|
const result = await parser.parse(filePath, fileContent)
|
||||||
|
expect(result).toMatchSnapshot()
|
||||||
|
|
||||||
|
const report = getReport([result])
|
||||||
|
fs.mkdirSync(path.dirname(outputPath), {recursive: true})
|
||||||
|
fs.writeFileSync(outputPath, report)
|
||||||
|
})
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -4,6 +4,7 @@
|
|||||||
{"suite":{"id":2,"platform":"vm","path":"test\\second_test.dart"},"type":"suite","time":11}
|
{"suite":{"id":2,"platform":"vm","path":"test\\second_test.dart"},"type":"suite","time":11}
|
||||||
{"test":{"id":3,"name":"loading test\\second_test.dart","suiteID":2,"groupIDs":[],"metadata":{"skip":false,"skipReason":null},"line":null,"column":null,"url":null},"type":"testStart","time":11}
|
{"test":{"id":3,"name":"loading test\\second_test.dart","suiteID":2,"groupIDs":[],"metadata":{"skip":false,"skipReason":null},"line":null,"column":null,"url":null},"type":"testStart","time":11}
|
||||||
{"count":2,"type":"allSuites","time":11}
|
{"count":2,"type":"allSuites","time":11}
|
||||||
|
{"testID":1,"messageType":"print","message":"Hello from the test","type":"print","time":3828}
|
||||||
{"testID":3,"result":"success","skipped":false,"hidden":true,"type":"testDone","time":3649}
|
{"testID":3,"result":"success","skipped":false,"hidden":true,"type":"testDone","time":3649}
|
||||||
{"group":{"id":4,"suiteID":2,"parentID":null,"name":null,"metadata":{"skip":false,"skipReason":null},"testCount":2,"line":null,"column":null,"url":null},"type":"group","time":3654}
|
{"group":{"id":4,"suiteID":2,"parentID":null,"name":null,"metadata":{"skip":false,"skipReason":null},"testCount":2,"line":null,"column":null,"url":null},"type":"group","time":3654}
|
||||||
{"test":{"id":5,"name":"Timeout test","suiteID":2,"groupIDs":[4],"metadata":{"skip":false,"skipReason":null},"line":5,"column":3,"url":"file:///C:/Users/Michal/Workspace/dorny/test-check/reports/dart/test/second_test.dart"},"type":"testStart","time":3655}
|
{"test":{"id":5,"name":"Timeout test","suiteID":2,"groupIDs":[4],"metadata":{"skip":false,"skipReason":null},"line":5,"column":3,"url":"file:///C:/Users/Michal/Workspace/dorny/test-check/reports/dart/test/second_test.dart"},"type":"testStart","time":3655}
|
||||||
|
|||||||
112
__tests__/fixtures/dotnet-nunit.xml
Normal file
112
__tests__/fixtures/dotnet-nunit.xml
Normal file
@@ -0,0 +1,112 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8" standalone="no"?>
|
||||||
|
<test-run id="0" runstate="Runnable" testcasecount="9" result="Failed" total="9" passed="3" failed="5" inconclusive="0" skipped="1" asserts="5" engine-version="3.12.0.0" clr-version="3.1.16" start-time="2021-06-28 20:23:41Z" end-time="2021-06-28 20:23:41Z" duration="0.230308">
|
||||||
|
<command-line><![CDATA[C:\Users\Michal\.dotnet\tools\.store\nunit.consolerunner.netcore\3.12.0-beta2\nunit.consolerunner.netcore\3.12.0-beta2\tools\netcoreapp3.1\any\nunit3-console.dll reports/dotnet/DotnetTests.NUnitV3Tests/bin/Debug/netcoreapp3.1/DotnetTests.NUnitV3Tests.dll --result=__tests__/fixtures/dotnet-nunit.xml]]></command-line>
|
||||||
|
<test-suite type="Assembly" id="1-1011" name="DotnetTests.NUnitV3Tests.dll" fullname="C:/Users/Michal/Workspace/dorny/test-reporter/reports/dotnet/DotnetTests.NUnitV3Tests/bin/Debug/netcoreapp3.1/DotnetTests.NUnitV3Tests.dll" runstate="Runnable" testcasecount="9" result="Failed" site="Child" start-time="2021-06-28T20:23:41.4594179Z" end-time="2021-06-28T20:23:41.5420313Z" duration="0.082553" total="9" passed="3" failed="5" warnings="0" inconclusive="0" skipped="1" asserts="5">
|
||||||
|
<environment framework-version="3.13.2.0" clr-version="3.1.16" os-version="Microsoft Windows 10.0.19041" platform="Win32NT" cwd="C:\Users\Michal\Workspace\dorny\test-reporter" machine-name="DORNY-PC" user="Michal" user-domain="DORNY-PC" culture="sk-SK" uiculture="en-US" os-architecture="x64" />
|
||||||
|
<settings>
|
||||||
|
<setting name="DisposeRunners" value="True" />
|
||||||
|
<setting name="WorkDirectory" value="C:\Users\Michal\Workspace\dorny\test-reporter" />
|
||||||
|
<setting name="NumberOfTestWorkers" value="4" />
|
||||||
|
</settings>
|
||||||
|
<properties>
|
||||||
|
<property name="_PID" value="30996" />
|
||||||
|
<property name="_APPDOMAIN" value="nunit3-console" />
|
||||||
|
</properties>
|
||||||
|
<failure>
|
||||||
|
<message><![CDATA[One or more child tests had errors]]></message>
|
||||||
|
</failure>
|
||||||
|
<test-suite type="TestSuite" id="1-1012" name="DotnetTests" fullname="DotnetTests" runstate="Runnable" testcasecount="9" result="Failed" site="Child" start-time="2021-06-28T20:23:41.4647482Z" end-time="2021-06-28T20:23:41.5420271Z" duration="0.077277" total="9" passed="3" failed="5" warnings="0" inconclusive="0" skipped="1" asserts="5">
|
||||||
|
<failure>
|
||||||
|
<message><![CDATA[One or more child tests had errors]]></message>
|
||||||
|
</failure>
|
||||||
|
<test-suite type="TestSuite" id="1-1013" name="XUnitTests" fullname="DotnetTests.XUnitTests" runstate="Runnable" testcasecount="9" result="Failed" site="Child" start-time="2021-06-28T20:23:41.4649710Z" end-time="2021-06-28T20:23:41.5420231Z" duration="0.077053" total="9" passed="3" failed="5" warnings="0" inconclusive="0" skipped="1" asserts="5">
|
||||||
|
<failure>
|
||||||
|
<message><![CDATA[One or more child tests had errors]]></message>
|
||||||
|
</failure>
|
||||||
|
<test-suite type="TestFixture" id="1-1000" name="CalculatorTests" fullname="DotnetTests.XUnitTests.CalculatorTests" classname="DotnetTests.XUnitTests.CalculatorTests" runstate="Runnable" testcasecount="9" result="Failed" site="Child" start-time="2021-06-28T20:23:41.4661195Z" end-time="2021-06-28T20:23:41.5420143Z" duration="0.075896" total="9" passed="3" failed="5" warnings="0" inconclusive="0" skipped="1" asserts="5">
|
||||||
|
<failure>
|
||||||
|
<message><![CDATA[One or more child tests had errors]]></message>
|
||||||
|
</failure>
|
||||||
|
<test-case id="1-1004" name="Exception_In_TargetTest" fullname="DotnetTests.XUnitTests.CalculatorTests.Exception_In_TargetTest" methodname="Exception_In_TargetTest" classname="DotnetTests.XUnitTests.CalculatorTests" runstate="Runnable" seed="2033520428" result="Failed" label="Error" start-time="2021-06-28T20:23:41.4684284Z" end-time="2021-06-28T20:23:41.4911288Z" duration="0.022805" asserts="0">
|
||||||
|
<failure>
|
||||||
|
<message><![CDATA[System.DivideByZeroException : Attempted to divide by zero.]]></message>
|
||||||
|
<stack-trace><![CDATA[ at DotnetTests.Unit.Calculator.Div(Int32 a, Int32 b) in C:\Users\Michal\Workspace\dorny\test-reporter\reports\dotnet\DotnetTests.Unit\Calculator.cs:line 9
|
||||||
|
at DotnetTests.XUnitTests.CalculatorTests.Exception_In_TargetTest() in C:\Users\Michal\Workspace\dorny\test-reporter\reports\dotnet\DotnetTests.NUnitV3Tests\CalculatorTests.cs:line 33]]></stack-trace>
|
||||||
|
</failure>
|
||||||
|
</test-case>
|
||||||
|
<test-case id="1-1005" name="Exception_In_Test" fullname="DotnetTests.XUnitTests.CalculatorTests.Exception_In_Test" methodname="Exception_In_Test" classname="DotnetTests.XUnitTests.CalculatorTests" runstate="Runnable" seed="145176317" result="Failed" label="Error" start-time="2021-06-28T20:23:41.4930398Z" end-time="2021-06-28T20:23:41.4935666Z" duration="0.000528" asserts="0">
|
||||||
|
<failure>
|
||||||
|
<message><![CDATA[System.Exception : Test]]></message>
|
||||||
|
<stack-trace><![CDATA[ at DotnetTests.XUnitTests.CalculatorTests.Exception_In_Test() in C:\Users\Michal\Workspace\dorny\test-reporter\reports\dotnet\DotnetTests.NUnitV3Tests\CalculatorTests.cs:line 39]]></stack-trace>
|
||||||
|
</failure>
|
||||||
|
</test-case>
|
||||||
|
<test-case id="1-1003" name="Failing_Test" fullname="DotnetTests.XUnitTests.CalculatorTests.Failing_Test" methodname="Failing_Test" classname="DotnetTests.XUnitTests.CalculatorTests" runstate="Runnable" seed="189717168" result="Failed" start-time="2021-06-28T20:23:41.4935910Z" end-time="2021-06-28T20:23:41.5217516Z" duration="0.028162" asserts="1">
|
||||||
|
<failure>
|
||||||
|
<message><![CDATA[ Expected: 3
|
||||||
|
But was: 2
|
||||||
|
]]></message>
|
||||||
|
<stack-trace><![CDATA[ at DotnetTests.XUnitTests.CalculatorTests.Failing_Test() in C:\Users\Michal\Workspace\dorny\test-reporter\reports\dotnet\DotnetTests.NUnitV3Tests\CalculatorTests.cs:line 27
|
||||||
|
]]></stack-trace>
|
||||||
|
</failure>
|
||||||
|
<assertions>
|
||||||
|
<assertion result="Failed">
|
||||||
|
<message><![CDATA[ Expected: 3
|
||||||
|
But was: 2
|
||||||
|
]]></message>
|
||||||
|
<stack-trace><![CDATA[ at DotnetTests.XUnitTests.CalculatorTests.Failing_Test() in C:\Users\Michal\Workspace\dorny\test-reporter\reports\dotnet\DotnetTests.NUnitV3Tests\CalculatorTests.cs:line 27
|
||||||
|
]]></stack-trace>
|
||||||
|
</assertion>
|
||||||
|
</assertions>
|
||||||
|
</test-case>
|
||||||
|
<test-suite type="Theory" id="1-1010" name="Is_Even_Number" fullname="DotnetTests.XUnitTests.CalculatorTests.Is_Even_Number" classname="DotnetTests.XUnitTests.CalculatorTests" runstate="Runnable" testcasecount="2" result="Failed" site="Child" start-time="2021-06-28T20:23:41.5217837Z" end-time="2021-06-28T20:23:41.5251025Z" duration="0.003318" total="2" passed="1" failed="1" warnings="0" inconclusive="0" skipped="0" asserts="2">
|
||||||
|
<properties>
|
||||||
|
<property name="_JOINTYPE" value="Combinatorial" />
|
||||||
|
</properties>
|
||||||
|
<failure>
|
||||||
|
<message><![CDATA[One or more child tests had errors]]></message>
|
||||||
|
</failure>
|
||||||
|
<test-case id="1-1008" name="Is_Even_Number(2)" fullname="DotnetTests.XUnitTests.CalculatorTests.Is_Even_Number(2)" methodname="Is_Even_Number" classname="DotnetTests.XUnitTests.CalculatorTests" runstate="Runnable" seed="2002556739" result="Passed" start-time="2021-06-28T20:23:41.5222381Z" end-time="2021-06-28T20:23:41.5228607Z" duration="0.000622" asserts="1" />
|
||||||
|
<test-case id="1-1009" name="Is_Even_Number(3)" fullname="DotnetTests.XUnitTests.CalculatorTests.Is_Even_Number(3)" methodname="Is_Even_Number" classname="DotnetTests.XUnitTests.CalculatorTests" runstate="Runnable" seed="1722214143" result="Failed" start-time="2021-06-28T20:23:41.5228803Z" end-time="2021-06-28T20:23:41.5239781Z" duration="0.001098" asserts="1">
|
||||||
|
<failure>
|
||||||
|
<message><![CDATA[ Expected: True
|
||||||
|
But was: False
|
||||||
|
]]></message>
|
||||||
|
<stack-trace><![CDATA[ at DotnetTests.XUnitTests.CalculatorTests.Is_Even_Number(Int32 i) in C:\Users\Michal\Workspace\dorny\test-reporter\reports\dotnet\DotnetTests.NUnitV3Tests\CalculatorTests.cs:line 61
|
||||||
|
]]></stack-trace>
|
||||||
|
</failure>
|
||||||
|
<assertions>
|
||||||
|
<assertion result="Failed">
|
||||||
|
<message><![CDATA[ Expected: True
|
||||||
|
But was: False
|
||||||
|
]]></message>
|
||||||
|
<stack-trace><![CDATA[ at DotnetTests.XUnitTests.CalculatorTests.Is_Even_Number(Int32 i) in C:\Users\Michal\Workspace\dorny\test-reporter\reports\dotnet\DotnetTests.NUnitV3Tests\CalculatorTests.cs:line 61
|
||||||
|
]]></stack-trace>
|
||||||
|
</assertion>
|
||||||
|
</assertions>
|
||||||
|
</test-case>
|
||||||
|
</test-suite>
|
||||||
|
<test-case id="1-1001" name="Passing_Test" fullname="DotnetTests.XUnitTests.CalculatorTests.Passing_Test" methodname="Passing_Test" classname="DotnetTests.XUnitTests.CalculatorTests" runstate="Runnable" seed="550330290" result="Passed" start-time="2021-06-28T20:23:41.5260365Z" end-time="2021-06-28T20:23:41.5262756Z" duration="0.000238" asserts="1" />
|
||||||
|
<test-case id="1-1002" name="Passing_Test_With_Description" fullname="DotnetTests.XUnitTests.CalculatorTests.Passing_Test_With_Description" methodname="Passing_Test_With_Description" classname="DotnetTests.XUnitTests.CalculatorTests" runstate="Runnable" seed="1693317298" result="Passed" start-time="2021-06-28T20:23:41.5263998Z" end-time="2021-06-28T20:23:41.5265354Z" duration="0.000135" asserts="1">
|
||||||
|
<properties>
|
||||||
|
<property name="Description" value="Some description" />
|
||||||
|
</properties>
|
||||||
|
</test-case>
|
||||||
|
<test-case id="1-1007" name="Skipped_Test" fullname="DotnetTests.XUnitTests.CalculatorTests.Skipped_Test" methodname="Skipped_Test" classname="DotnetTests.XUnitTests.CalculatorTests" runstate="Ignored" seed="1512653931" result="Skipped" label="Ignored" start-time="2021-06-28T20:23:41.5265550Z" end-time="2021-06-28T20:23:41.5269525Z" duration="0.000398" asserts="0">
|
||||||
|
<properties>
|
||||||
|
<property name="_SKIPREASON" value="Skipped" />
|
||||||
|
</properties>
|
||||||
|
<reason>
|
||||||
|
<message><![CDATA[Skipped]]></message>
|
||||||
|
</reason>
|
||||||
|
</test-case>
|
||||||
|
<test-case id="1-1006" name="Timeout_Test" fullname="DotnetTests.XUnitTests.CalculatorTests.Timeout_Test" methodname="Timeout_Test" classname="DotnetTests.XUnitTests.CalculatorTests" runstate="Runnable" seed="258810529" result="Failed" label="Test exceeded Timeout value 1ms." start-time="2021-06-28T20:23:41.5269651Z" end-time="2021-06-28T20:23:41.5419118Z" duration="0.014949" asserts="0">
|
||||||
|
<properties>
|
||||||
|
<property name="Timeout" value="1" />
|
||||||
|
</properties>
|
||||||
|
<failure />
|
||||||
|
</test-case>
|
||||||
|
</test-suite>
|
||||||
|
</test-suite>
|
||||||
|
</test-suite>
|
||||||
|
</test-suite>
|
||||||
|
</test-run>
|
||||||
@@ -1,125 +1,183 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<TestRun id="b31581d7-9fcd-44c8-94e7-e0dee07cb5f1" name="Michal@DORNY-PC 2020-10-17 21:39:04" runUser="DORNY-PC\Michal" xmlns="http://microsoft.com/schemas/VisualStudio/TeamTest/2010">
|
<TestRun id="29afb69d-9a66-49f7-bc93-a537a0db9862" name="Michal@DORNY-PC 2021-04-20 08:31:33" runUser="DORNY-PC\Michal" xmlns="http://microsoft.com/schemas/VisualStudio/TeamTest/2010">
|
||||||
<Times creation="2020-10-17T21:39:04.3522129+02:00" queuing="2020-10-17T21:39:04.3522142+02:00" start="2020-10-17T21:39:03.3285079+02:00" finish="2020-10-17T21:39:04.3892722+02:00" />
|
<Times creation="2021-04-20T08:31:33.0390097+02:00" queuing="2021-04-20T08:31:33.0390107+02:00" start="2021-04-20T08:31:31.9866971+02:00" finish="2021-04-20T08:31:33.1023832+02:00" />
|
||||||
<TestSettings name="default" id="4796a3f4-6ab2-4919-aed2-7bd0f59e0405">
|
<TestSettings name="default" id="c6a4ef62-df4b-4845-9252-69f55bf26836">
|
||||||
<Deployment runDeploymentRoot="Michal_DORNY-PC_2020-10-17_21_39_04" />
|
<Deployment runDeploymentRoot="Michal_DORNY-PC_2021-04-20_08_31_33" />
|
||||||
</TestSettings>
|
</TestSettings>
|
||||||
<Results>
|
<Results>
|
||||||
<UnitTestResult executionId="b112f30a-5b23-4fee-bc4e-15212fad3d40" testId="55ef2114-eb39-77d8-4031-3da68d0dc505" testName="DotnetTests.XUnitTests.CalculatorTests.Skipped_Test" computerName="DORNY-PC" duration="00:00:00.0010000" startTime="2020-10-17T21:39:04.2366767+02:00" endTime="2020-10-17T21:39:04.2366838+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="NotExecuted" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="b112f30a-5b23-4fee-bc4e-15212fad3d40">
|
<UnitTestResult executionId="3181d0c8-88ef-42c2-8375-0be2ff86197d" testId="41c1dee7-2d17-4cf3-ae64-fae6fd9f9105" testName="DotnetTests.XUnitTests.CalculatorTests.Timeout_Test" computerName="DORNY-PC" duration="00:00:00.1084258" startTime="2021-04-20T08:31:32.9669698+02:00" endTime="2021-04-20T08:31:32.9669721+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="3181d0c8-88ef-42c2-8375-0be2ff86197d" />
|
||||||
|
<UnitTestResult executionId="b7b68f4a-8e66-408f-965b-23f0073b6ee7" testId="3e8432a2-ff59-c925-c08b-bb7f9ee02dd1" testName="DotnetTests.XUnitTests.CalculatorTests.Passing_Test" computerName="DORNY-PC" duration="00:00:00.0001365" startTime="2021-04-20T08:31:33.0065641+02:00" endTime="2021-04-20T08:31:33.0065647+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="b7b68f4a-8e66-408f-965b-23f0073b6ee7" />
|
||||||
|
<UnitTestResult executionId="79a318be-8f8d-42e4-8d54-58a3a054ef09" testId="c38e1acf-6419-5634-5ac6-0099b3891fe8" testName="Should be even number(i: 3)" computerName="DORNY-PC" duration="00:00:00.0006537" startTime="2021-04-20T08:31:32.9750302+02:00" endTime="2021-04-20T08:31:32.9750321+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Failed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="79a318be-8f8d-42e4-8d54-58a3a054ef09">
|
||||||
|
<Output>
|
||||||
|
<ErrorInfo>
|
||||||
|
<Message>Assert.True() Failure
|
||||||
|
Expected: True
|
||||||
|
Actual: False</Message>
|
||||||
|
<StackTrace> at DotnetTests.XUnitTests.CalculatorTests.Theory_With_Custom_Name(Int32 i) in C:\Users\Michal\Workspace\dorny\test-reporter\reports\dotnet\DotnetTests.XUnitTests\CalculatorTests.cs:line 67</StackTrace>
|
||||||
|
</ErrorInfo>
|
||||||
|
</Output>
|
||||||
|
</UnitTestResult>
|
||||||
|
<UnitTestResult executionId="9a6bc7d8-3abd-4369-aa02-418530a1bf59" testId="55ef2114-eb39-77d8-4031-3da68d0dc505" testName="DotnetTests.XUnitTests.CalculatorTests.Skipped_Test" computerName="DORNY-PC" duration="00:00:00.0010000" startTime="2021-04-20T08:31:33.0075607+02:00" endTime="2021-04-20T08:31:33.0075624+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="NotExecuted" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="9a6bc7d8-3abd-4369-aa02-418530a1bf59">
|
||||||
<Output>
|
<Output>
|
||||||
<StdOut>Skipped test</StdOut>
|
<StdOut>Skipped test</StdOut>
|
||||||
</Output>
|
</Output>
|
||||||
</UnitTestResult>
|
</UnitTestResult>
|
||||||
<UnitTestResult executionId="0fef32cb-e95a-453c-a925-6edbcc7244b4" testId="3bd3c92f-b8b2-2f41-9211-951100aa2540" testName="DotnetTests.XUnitTests.CalculatorTests.Failing_Test" computerName="DORNY-PC" duration="00:00:00.0032953" startTime="2020-10-17T21:39:04.2341773+02:00" endTime="2020-10-17T21:39:04.2341789+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Failed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="0fef32cb-e95a-453c-a925-6edbcc7244b4">
|
<UnitTestResult executionId="30c568c6-c120-48b0-8ebf-6d852b034bd9" testId="a171b9bb-97df-a0d8-c112-02ea0ea98607" testName="Custom Name" computerName="DORNY-PC" duration="00:00:00.0001371" startTime="2021-04-20T08:31:32.9751544+02:00" endTime="2021-04-20T08:31:32.9751546+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="30c568c6-c120-48b0-8ebf-6d852b034bd9" />
|
||||||
|
<UnitTestResult executionId="623c7fd2-5b76-4a14-b0c8-300678630c3b" testId="d3708bd6-b784-b890-48b3-965f4ac35bc9" testName="Should be even number(i: 2)" computerName="DORNY-PC" duration="00:00:00.0000097" startTime="2021-04-20T08:31:32.9751012+02:00" endTime="2021-04-20T08:31:32.9751014+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="623c7fd2-5b76-4a14-b0c8-300678630c3b" />
|
||||||
|
<UnitTestResult executionId="4cbddbf1-3df5-4098-a6e8-715249d865df" testId="e4d3ab06-acb8-d3f7-0518-e81c04c0108a" testName="DotnetTests.XUnitTests.CalculatorTests.Exception_In_TargetTest" computerName="DORNY-PC" duration="00:00:00.0008377" startTime="2021-04-20T08:31:32.9767893+02:00" endTime="2021-04-20T08:31:32.9767912+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Failed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="4cbddbf1-3df5-4098-a6e8-715249d865df">
|
||||||
|
<Output>
|
||||||
|
<ErrorInfo>
|
||||||
|
<Message>System.DivideByZeroException : Attempted to divide by zero.</Message>
|
||||||
|
<StackTrace> at DotnetTests.Unit.Calculator.Div(Int32 a, Int32 b) in C:\Users\Michal\Workspace\dorny\test-reporter\reports\dotnet\DotnetTests.Unit\Calculator.cs:line 9
|
||||||
|
at DotnetTests.XUnitTests.CalculatorTests.Exception_In_TargetTest() in C:\Users\Michal\Workspace\dorny\test-reporter\reports\dotnet\DotnetTests.XUnitTests\CalculatorTests.cs:line 33</StackTrace>
|
||||||
|
</ErrorInfo>
|
||||||
|
</Output>
|
||||||
|
</UnitTestResult>
|
||||||
|
<UnitTestResult executionId="ef238df8-c951-4e0f-b32b-4bc9162bc031" testId="eda9288a-92d4-85a5-dd8e-96ed8a58af10" testName="DotnetTests.XUnitTests.CalculatorTests.Exception_In_Test" computerName="DORNY-PC" duration="00:00:00.0025175" startTime="2021-04-20T08:31:32.8646547+02:00" endTime="2021-04-20T08:31:32.8647418+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Failed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="ef238df8-c951-4e0f-b32b-4bc9162bc031">
|
||||||
|
<Output>
|
||||||
|
<ErrorInfo>
|
||||||
|
<Message>System.Exception : Test</Message>
|
||||||
|
<StackTrace> at DotnetTests.XUnitTests.CalculatorTests.Exception_In_Test() in C:\Users\Michal\Workspace\dorny\test-reporter\reports\dotnet\DotnetTests.XUnitTests\CalculatorTests.cs:line 39</StackTrace>
|
||||||
|
</ErrorInfo>
|
||||||
|
</Output>
|
||||||
|
</UnitTestResult>
|
||||||
|
<UnitTestResult executionId="705f6132-7d4c-48c4-afdc-cadb427a4255" testId="3bd3c92f-b8b2-2f41-9211-951100aa2540" testName="DotnetTests.XUnitTests.CalculatorTests.Failing_Test" computerName="DORNY-PC" duration="00:00:00.0038697" startTime="2021-04-20T08:31:32.9742636+02:00" endTime="2021-04-20T08:31:32.9742658+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Failed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="705f6132-7d4c-48c4-afdc-cadb427a4255">
|
||||||
<Output>
|
<Output>
|
||||||
<ErrorInfo>
|
<ErrorInfo>
|
||||||
<Message>Assert.Equal() Failure
|
<Message>Assert.Equal() Failure
|
||||||
Expected: 3
|
Expected: 3
|
||||||
Actual: 2</Message>
|
Actual: 2</Message>
|
||||||
<StackTrace> at DotnetTests.XUnitTests.CalculatorTests.Failing_Test() in C:\Users\Michal\Workspace\dorny\test-check\reports\dotnet\DotnetTests.XUnitTests\CalculatorTests.cs:line 27</StackTrace>
|
<StackTrace> at DotnetTests.XUnitTests.CalculatorTests.Failing_Test() in C:\Users\Michal\Workspace\dorny\test-reporter\reports\dotnet\DotnetTests.XUnitTests\CalculatorTests.cs:line 27</StackTrace>
|
||||||
</ErrorInfo>
|
</ErrorInfo>
|
||||||
</Output>
|
</Output>
|
||||||
</UnitTestResult>
|
</UnitTestResult>
|
||||||
<UnitTestResult executionId="005348f3-5302-483e-821d-ee3469d212ea" testId="41c1dee7-2d17-4cf3-ae64-fae6fd9f9105" testName="DotnetTests.XUnitTests.CalculatorTests.Timeout_Test" computerName="DORNY-PC" duration="00:00:00.1022821" startTime="2020-10-17T21:39:04.2285304+02:00" endTime="2020-10-17T21:39:04.2285320+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="005348f3-5302-483e-821d-ee3469d212ea" />
|
<UnitTestResult executionId="cf210795-6f94-400f-afc6-a49baadfd249" testId="0980711c-d788-32eb-19b3-1d302a0e8df5" testName="DotnetTests.XUnitTests.CalculatorTests.Is_Even_Number(i: 2)" computerName="DORNY-PC" duration="00:00:00.0000078" startTime="2021-04-20T08:31:32.9775134+02:00" endTime="2021-04-20T08:31:32.9775138+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="cf210795-6f94-400f-afc6-a49baadfd249" />
|
||||||
<UnitTestResult executionId="4cb3c100-d0bb-4d88-b017-b0b4da2fc2a3" testId="a171b9bb-97df-a0d8-c112-02ea0ea98607" testName="Custom Name" computerName="DORNY-PC" duration="00:00:00.0001030" startTime="2020-10-17T21:39:04.2342433+02:00" endTime="2020-10-17T21:39:04.2342435+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="4cb3c100-d0bb-4d88-b017-b0b4da2fc2a3" />
|
<UnitTestResult executionId="e3d9bb4a-36b1-467f-a851-85bd210301e3" testId="787d63a6-11d7-2fda-3fad-9d980fa5e70d" testName="DotnetTests.XUnitTests.CalculatorTests.Is_Even_Number(i: 3)" computerName="DORNY-PC" duration="00:00:00.0004141" startTime="2021-04-20T08:31:32.9773980+02:00" endTime="2021-04-20T08:31:32.9773999+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Failed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="e3d9bb4a-36b1-467f-a851-85bd210301e3">
|
||||||
<UnitTestResult executionId="baa7bd90-c1ed-4b62-bc41-ae23457aafb5" testId="eda9288a-92d4-85a5-dd8e-96ed8a58af10" testName="DotnetTests.XUnitTests.CalculatorTests.Exception_In_Test" computerName="DORNY-PC" duration="00:00:00.0022728" startTime="2020-10-17T21:39:04.1309244+02:00" endTime="2020-10-17T21:39:04.1309960+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Failed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="baa7bd90-c1ed-4b62-bc41-ae23457aafb5">
|
|
||||||
<Output>
|
<Output>
|
||||||
<ErrorInfo>
|
<ErrorInfo>
|
||||||
<Message>System.Exception : Test</Message>
|
<Message>Assert.True() Failure
|
||||||
<StackTrace> at DotnetTests.XUnitTests.CalculatorTests.Exception_In_Test() in C:\Users\Michal\Workspace\dorny\test-check\reports\dotnet\DotnetTests.XUnitTests\CalculatorTests.cs:line 39</StackTrace>
|
Expected: True
|
||||||
|
Actual: False</Message>
|
||||||
|
<StackTrace> at DotnetTests.XUnitTests.CalculatorTests.Is_Even_Number(Int32 i) in C:\Users\Michal\Workspace\dorny\test-reporter\reports\dotnet\DotnetTests.XUnitTests\CalculatorTests.cs:line 59</StackTrace>
|
||||||
</ErrorInfo>
|
</ErrorInfo>
|
||||||
</Output>
|
</Output>
|
||||||
</UnitTestResult>
|
</UnitTestResult>
|
||||||
<UnitTestResult executionId="12a3ab6a-64d8-4001-94ff-cc563228d7ba" testId="e4d3ab06-acb8-d3f7-0518-e81c04c0108a" testName="DotnetTests.XUnitTests.CalculatorTests.Exception_In_TargetTest" computerName="DORNY-PC" duration="00:00:00.0004975" startTime="2020-10-17T21:39:04.2354587+02:00" endTime="2020-10-17T21:39:04.2354600+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Failed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="12a3ab6a-64d8-4001-94ff-cc563228d7ba">
|
|
||||||
<Output>
|
|
||||||
<ErrorInfo>
|
|
||||||
<Message>System.DivideByZeroException : Attempted to divide by zero.</Message>
|
|
||||||
<StackTrace> at DotnetTests.Unit.Calculator.Div(Int32 a, Int32 b) in C:\Users\Michal\Workspace\dorny\test-check\reports\dotnet\DotnetTests.Unit\Calculator.cs:line 9
|
|
||||||
at DotnetTests.XUnitTests.CalculatorTests.Exception_In_TargetTest() in C:\Users\Michal\Workspace\dorny\test-check\reports\dotnet\DotnetTests.XUnitTests\CalculatorTests.cs:line 33</StackTrace>
|
|
||||||
</ErrorInfo>
|
|
||||||
</Output>
|
|
||||||
</UnitTestResult>
|
|
||||||
<UnitTestResult executionId="e29e1ba0-ebb3-45cd-aa1a-f60f23a6d509" testId="3e8432a2-ff59-c925-c08b-bb7f9ee02dd1" testName="DotnetTests.XUnitTests.CalculatorTests.Passing_Test" computerName="DORNY-PC" duration="00:00:00.0001254" startTime="2020-10-17T21:39:04.2355437+02:00" endTime="2020-10-17T21:39:04.2355439+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="e29e1ba0-ebb3-45cd-aa1a-f60f23a6d509" />
|
|
||||||
</Results>
|
</Results>
|
||||||
<TestDefinitions>
|
<TestDefinitions>
|
||||||
<UnitTest name="DotnetTests.XUnitTests.CalculatorTests.Failing_Test" storage="c:\users\michal\workspace\dorny\test-check\reports\dotnet\dotnettests.xunittests\bin\debug\netcoreapp3.1\dotnettests.xunittests.dll" id="3bd3c92f-b8b2-2f41-9211-951100aa2540">
|
<UnitTest name="DotnetTests.XUnitTests.CalculatorTests.Exception_In_TargetTest" storage="c:\users\michal\workspace\dorny\test-reporter\reports\dotnet\dotnettests.xunittests\bin\debug\netcoreapp3.1\dotnettests.xunittests.dll" id="e4d3ab06-acb8-d3f7-0518-e81c04c0108a">
|
||||||
<Execution id="0fef32cb-e95a-453c-a925-6edbcc7244b4" />
|
<Execution id="4cbddbf1-3df5-4098-a6e8-715249d865df" />
|
||||||
<TestMethod codeBase="C:\Users\Michal\Workspace\dorny\test-check\reports\dotnet\DotnetTests.XUnitTests\bin\Debug\netcoreapp3.1\DotnetTests.XUnitTests.dll" adapterTypeName="executor://xunit/VsTestRunner2/netcoreapp" className="DotnetTests.XUnitTests.CalculatorTests" name="Failing_Test" />
|
<TestMethod codeBase="C:\Users\Michal\Workspace\dorny\test-reporter\reports\dotnet\DotnetTests.XUnitTests\bin\Debug\netcoreapp3.1\DotnetTests.XUnitTests.dll" adapterTypeName="executor://xunit/VsTestRunner2/netcoreapp" className="DotnetTests.XUnitTests.CalculatorTests" name="Exception_In_TargetTest" />
|
||||||
</UnitTest>
|
</UnitTest>
|
||||||
<UnitTest name="DotnetTests.XUnitTests.CalculatorTests.Exception_In_Test" storage="c:\users\michal\workspace\dorny\test-check\reports\dotnet\dotnettests.xunittests\bin\debug\netcoreapp3.1\dotnettests.xunittests.dll" id="eda9288a-92d4-85a5-dd8e-96ed8a58af10">
|
<UnitTest name="Should be even number(i: 3)" storage="c:\users\michal\workspace\dorny\test-reporter\reports\dotnet\dotnettests.xunittests\bin\debug\netcoreapp3.1\dotnettests.xunittests.dll" id="c38e1acf-6419-5634-5ac6-0099b3891fe8">
|
||||||
<Execution id="baa7bd90-c1ed-4b62-bc41-ae23457aafb5" />
|
<Execution id="79a318be-8f8d-42e4-8d54-58a3a054ef09" />
|
||||||
<TestMethod codeBase="C:\Users\Michal\Workspace\dorny\test-check\reports\dotnet\DotnetTests.XUnitTests\bin\Debug\netcoreapp3.1\DotnetTests.XUnitTests.dll" adapterTypeName="executor://xunit/VsTestRunner2/netcoreapp" className="DotnetTests.XUnitTests.CalculatorTests" name="Exception_In_Test" />
|
<TestMethod codeBase="C:\Users\Michal\Workspace\dorny\test-reporter\reports\dotnet\DotnetTests.XUnitTests\bin\Debug\netcoreapp3.1\DotnetTests.XUnitTests.dll" adapterTypeName="executor://xunit/VsTestRunner2/netcoreapp" className="DotnetTests.XUnitTests.CalculatorTests" name="Theory_With_Custom_Name" />
|
||||||
</UnitTest>
|
</UnitTest>
|
||||||
<UnitTest name="DotnetTests.XUnitTests.CalculatorTests.Skipped_Test" storage="c:\users\michal\workspace\dorny\test-check\reports\dotnet\dotnettests.xunittests\bin\debug\netcoreapp3.1\dotnettests.xunittests.dll" id="55ef2114-eb39-77d8-4031-3da68d0dc505">
|
<UnitTest name="DotnetTests.XUnitTests.CalculatorTests.Failing_Test" storage="c:\users\michal\workspace\dorny\test-reporter\reports\dotnet\dotnettests.xunittests\bin\debug\netcoreapp3.1\dotnettests.xunittests.dll" id="3bd3c92f-b8b2-2f41-9211-951100aa2540">
|
||||||
<Execution id="b112f30a-5b23-4fee-bc4e-15212fad3d40" />
|
<Execution id="705f6132-7d4c-48c4-afdc-cadb427a4255" />
|
||||||
<TestMethod codeBase="C:\Users\Michal\Workspace\dorny\test-check\reports\dotnet\DotnetTests.XUnitTests\bin\Debug\netcoreapp3.1\DotnetTests.XUnitTests.dll" adapterTypeName="executor://xunit/VsTestRunner2/netcoreapp" className="DotnetTests.XUnitTests.CalculatorTests" name="Skipped_Test" />
|
<TestMethod codeBase="C:\Users\Michal\Workspace\dorny\test-reporter\reports\dotnet\DotnetTests.XUnitTests\bin\Debug\netcoreapp3.1\DotnetTests.XUnitTests.dll" adapterTypeName="executor://xunit/VsTestRunner2/netcoreapp" className="DotnetTests.XUnitTests.CalculatorTests" name="Failing_Test" />
|
||||||
</UnitTest>
|
</UnitTest>
|
||||||
<UnitTest name="Custom Name" storage="c:\users\michal\workspace\dorny\test-check\reports\dotnet\dotnettests.xunittests\bin\debug\netcoreapp3.1\dotnettests.xunittests.dll" id="a171b9bb-97df-a0d8-c112-02ea0ea98607">
|
<UnitTest name="DotnetTests.XUnitTests.CalculatorTests.Exception_In_Test" storage="c:\users\michal\workspace\dorny\test-reporter\reports\dotnet\dotnettests.xunittests\bin\debug\netcoreapp3.1\dotnettests.xunittests.dll" id="eda9288a-92d4-85a5-dd8e-96ed8a58af10">
|
||||||
<Execution id="4cb3c100-d0bb-4d88-b017-b0b4da2fc2a3" />
|
<Execution id="ef238df8-c951-4e0f-b32b-4bc9162bc031" />
|
||||||
<TestMethod codeBase="C:\Users\Michal\Workspace\dorny\test-check\reports\dotnet\DotnetTests.XUnitTests\bin\Debug\netcoreapp3.1\DotnetTests.XUnitTests.dll" adapterTypeName="executor://xunit/VsTestRunner2/netcoreapp" className="DotnetTests.XUnitTests.CalculatorTests" name="Passing_Test_With_Name" />
|
<TestMethod codeBase="C:\Users\Michal\Workspace\dorny\test-reporter\reports\dotnet\DotnetTests.XUnitTests\bin\Debug\netcoreapp3.1\DotnetTests.XUnitTests.dll" adapterTypeName="executor://xunit/VsTestRunner2/netcoreapp" className="DotnetTests.XUnitTests.CalculatorTests" name="Exception_In_Test" />
|
||||||
</UnitTest>
|
</UnitTest>
|
||||||
<UnitTest name="DotnetTests.XUnitTests.CalculatorTests.Passing_Test" storage="c:\users\michal\workspace\dorny\test-check\reports\dotnet\dotnettests.xunittests\bin\debug\netcoreapp3.1\dotnettests.xunittests.dll" id="3e8432a2-ff59-c925-c08b-bb7f9ee02dd1">
|
<UnitTest name="DotnetTests.XUnitTests.CalculatorTests.Skipped_Test" storage="c:\users\michal\workspace\dorny\test-reporter\reports\dotnet\dotnettests.xunittests\bin\debug\netcoreapp3.1\dotnettests.xunittests.dll" id="55ef2114-eb39-77d8-4031-3da68d0dc505">
|
||||||
<Execution id="e29e1ba0-ebb3-45cd-aa1a-f60f23a6d509" />
|
<Execution id="9a6bc7d8-3abd-4369-aa02-418530a1bf59" />
|
||||||
<TestMethod codeBase="C:\Users\Michal\Workspace\dorny\test-check\reports\dotnet\DotnetTests.XUnitTests\bin\Debug\netcoreapp3.1\DotnetTests.XUnitTests.dll" adapterTypeName="executor://xunit/VsTestRunner2/netcoreapp" className="DotnetTests.XUnitTests.CalculatorTests" name="Passing_Test" />
|
<TestMethod codeBase="C:\Users\Michal\Workspace\dorny\test-reporter\reports\dotnet\DotnetTests.XUnitTests\bin\Debug\netcoreapp3.1\DotnetTests.XUnitTests.dll" adapterTypeName="executor://xunit/VsTestRunner2/netcoreapp" className="DotnetTests.XUnitTests.CalculatorTests" name="Skipped_Test" />
|
||||||
</UnitTest>
|
</UnitTest>
|
||||||
<UnitTest name="DotnetTests.XUnitTests.CalculatorTests.Timeout_Test" storage="c:\users\michal\workspace\dorny\test-check\reports\dotnet\dotnettests.xunittests\bin\debug\netcoreapp3.1\dotnettests.xunittests.dll" id="41c1dee7-2d17-4cf3-ae64-fae6fd9f9105">
|
<UnitTest name="DotnetTests.XUnitTests.CalculatorTests.Passing_Test" storage="c:\users\michal\workspace\dorny\test-reporter\reports\dotnet\dotnettests.xunittests\bin\debug\netcoreapp3.1\dotnettests.xunittests.dll" id="3e8432a2-ff59-c925-c08b-bb7f9ee02dd1">
|
||||||
<Execution id="005348f3-5302-483e-821d-ee3469d212ea" />
|
<Execution id="b7b68f4a-8e66-408f-965b-23f0073b6ee7" />
|
||||||
<TestMethod codeBase="C:\Users\Michal\Workspace\dorny\test-check\reports\dotnet\DotnetTests.XUnitTests\bin\Debug\netcoreapp3.1\DotnetTests.XUnitTests.dll" adapterTypeName="executor://xunit/VsTestRunner2/netcoreapp" className="DotnetTests.XUnitTests.CalculatorTests" name="Timeout_Test" />
|
<TestMethod codeBase="C:\Users\Michal\Workspace\dorny\test-reporter\reports\dotnet\DotnetTests.XUnitTests\bin\Debug\netcoreapp3.1\DotnetTests.XUnitTests.dll" adapterTypeName="executor://xunit/VsTestRunner2/netcoreapp" className="DotnetTests.XUnitTests.CalculatorTests" name="Passing_Test" />
|
||||||
</UnitTest>
|
</UnitTest>
|
||||||
<UnitTest name="DotnetTests.XUnitTests.CalculatorTests.Exception_In_TargetTest" storage="c:\users\michal\workspace\dorny\test-check\reports\dotnet\dotnettests.xunittests\bin\debug\netcoreapp3.1\dotnettests.xunittests.dll" id="e4d3ab06-acb8-d3f7-0518-e81c04c0108a">
|
<UnitTest name="DotnetTests.XUnitTests.CalculatorTests.Is_Even_Number(i: 2)" storage="c:\users\michal\workspace\dorny\test-reporter\reports\dotnet\dotnettests.xunittests\bin\debug\netcoreapp3.1\dotnettests.xunittests.dll" id="0980711c-d788-32eb-19b3-1d302a0e8df5">
|
||||||
<Execution id="12a3ab6a-64d8-4001-94ff-cc563228d7ba" />
|
<Execution id="cf210795-6f94-400f-afc6-a49baadfd249" />
|
||||||
<TestMethod codeBase="C:\Users\Michal\Workspace\dorny\test-check\reports\dotnet\DotnetTests.XUnitTests\bin\Debug\netcoreapp3.1\DotnetTests.XUnitTests.dll" adapterTypeName="executor://xunit/VsTestRunner2/netcoreapp" className="DotnetTests.XUnitTests.CalculatorTests" name="Exception_In_TargetTest" />
|
<TestMethod codeBase="C:\Users\Michal\Workspace\dorny\test-reporter\reports\dotnet\DotnetTests.XUnitTests\bin\Debug\netcoreapp3.1\DotnetTests.XUnitTests.dll" adapterTypeName="executor://xunit/VsTestRunner2/netcoreapp" className="DotnetTests.XUnitTests.CalculatorTests" name="Is_Even_Number" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="Custom Name" storage="c:\users\michal\workspace\dorny\test-reporter\reports\dotnet\dotnettests.xunittests\bin\debug\netcoreapp3.1\dotnettests.xunittests.dll" id="a171b9bb-97df-a0d8-c112-02ea0ea98607">
|
||||||
|
<Execution id="30c568c6-c120-48b0-8ebf-6d852b034bd9" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\dorny\test-reporter\reports\dotnet\DotnetTests.XUnitTests\bin\Debug\netcoreapp3.1\DotnetTests.XUnitTests.dll" adapterTypeName="executor://xunit/VsTestRunner2/netcoreapp" className="DotnetTests.XUnitTests.CalculatorTests" name="Passing_Test_With_Name" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="Should be even number(i: 2)" storage="c:\users\michal\workspace\dorny\test-reporter\reports\dotnet\dotnettests.xunittests\bin\debug\netcoreapp3.1\dotnettests.xunittests.dll" id="d3708bd6-b784-b890-48b3-965f4ac35bc9">
|
||||||
|
<Execution id="623c7fd2-5b76-4a14-b0c8-300678630c3b" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\dorny\test-reporter\reports\dotnet\DotnetTests.XUnitTests\bin\Debug\netcoreapp3.1\DotnetTests.XUnitTests.dll" adapterTypeName="executor://xunit/VsTestRunner2/netcoreapp" className="DotnetTests.XUnitTests.CalculatorTests" name="Theory_With_Custom_Name" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="DotnetTests.XUnitTests.CalculatorTests.Timeout_Test" storage="c:\users\michal\workspace\dorny\test-reporter\reports\dotnet\dotnettests.xunittests\bin\debug\netcoreapp3.1\dotnettests.xunittests.dll" id="41c1dee7-2d17-4cf3-ae64-fae6fd9f9105">
|
||||||
|
<Execution id="3181d0c8-88ef-42c2-8375-0be2ff86197d" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\dorny\test-reporter\reports\dotnet\DotnetTests.XUnitTests\bin\Debug\netcoreapp3.1\DotnetTests.XUnitTests.dll" adapterTypeName="executor://xunit/VsTestRunner2/netcoreapp" className="DotnetTests.XUnitTests.CalculatorTests" name="Timeout_Test" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="DotnetTests.XUnitTests.CalculatorTests.Is_Even_Number(i: 3)" storage="c:\users\michal\workspace\dorny\test-reporter\reports\dotnet\dotnettests.xunittests\bin\debug\netcoreapp3.1\dotnettests.xunittests.dll" id="787d63a6-11d7-2fda-3fad-9d980fa5e70d">
|
||||||
|
<Execution id="e3d9bb4a-36b1-467f-a851-85bd210301e3" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\dorny\test-reporter\reports\dotnet\DotnetTests.XUnitTests\bin\Debug\netcoreapp3.1\DotnetTests.XUnitTests.dll" adapterTypeName="executor://xunit/VsTestRunner2/netcoreapp" className="DotnetTests.XUnitTests.CalculatorTests" name="Is_Even_Number" />
|
||||||
</UnitTest>
|
</UnitTest>
|
||||||
</TestDefinitions>
|
</TestDefinitions>
|
||||||
<TestEntries>
|
<TestEntries>
|
||||||
<TestEntry testId="55ef2114-eb39-77d8-4031-3da68d0dc505" executionId="b112f30a-5b23-4fee-bc4e-15212fad3d40" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
<TestEntry testId="41c1dee7-2d17-4cf3-ae64-fae6fd9f9105" executionId="3181d0c8-88ef-42c2-8375-0be2ff86197d" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
<TestEntry testId="3bd3c92f-b8b2-2f41-9211-951100aa2540" executionId="0fef32cb-e95a-453c-a925-6edbcc7244b4" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
<TestEntry testId="3e8432a2-ff59-c925-c08b-bb7f9ee02dd1" executionId="b7b68f4a-8e66-408f-965b-23f0073b6ee7" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
<TestEntry testId="41c1dee7-2d17-4cf3-ae64-fae6fd9f9105" executionId="005348f3-5302-483e-821d-ee3469d212ea" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
<TestEntry testId="c38e1acf-6419-5634-5ac6-0099b3891fe8" executionId="79a318be-8f8d-42e4-8d54-58a3a054ef09" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
<TestEntry testId="a171b9bb-97df-a0d8-c112-02ea0ea98607" executionId="4cb3c100-d0bb-4d88-b017-b0b4da2fc2a3" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
<TestEntry testId="55ef2114-eb39-77d8-4031-3da68d0dc505" executionId="9a6bc7d8-3abd-4369-aa02-418530a1bf59" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
<TestEntry testId="eda9288a-92d4-85a5-dd8e-96ed8a58af10" executionId="baa7bd90-c1ed-4b62-bc41-ae23457aafb5" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
<TestEntry testId="a171b9bb-97df-a0d8-c112-02ea0ea98607" executionId="30c568c6-c120-48b0-8ebf-6d852b034bd9" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
<TestEntry testId="e4d3ab06-acb8-d3f7-0518-e81c04c0108a" executionId="12a3ab6a-64d8-4001-94ff-cc563228d7ba" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
<TestEntry testId="d3708bd6-b784-b890-48b3-965f4ac35bc9" executionId="623c7fd2-5b76-4a14-b0c8-300678630c3b" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
<TestEntry testId="3e8432a2-ff59-c925-c08b-bb7f9ee02dd1" executionId="e29e1ba0-ebb3-45cd-aa1a-f60f23a6d509" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
<TestEntry testId="e4d3ab06-acb8-d3f7-0518-e81c04c0108a" executionId="4cbddbf1-3df5-4098-a6e8-715249d865df" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="eda9288a-92d4-85a5-dd8e-96ed8a58af10" executionId="ef238df8-c951-4e0f-b32b-4bc9162bc031" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="3bd3c92f-b8b2-2f41-9211-951100aa2540" executionId="705f6132-7d4c-48c4-afdc-cadb427a4255" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="0980711c-d788-32eb-19b3-1d302a0e8df5" executionId="cf210795-6f94-400f-afc6-a49baadfd249" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="787d63a6-11d7-2fda-3fad-9d980fa5e70d" executionId="e3d9bb4a-36b1-467f-a851-85bd210301e3" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
</TestEntries>
|
</TestEntries>
|
||||||
<TestLists>
|
<TestLists>
|
||||||
<TestList name="Results Not in a List" id="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
<TestList name="Results Not in a List" id="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
<TestList name="All Loaded Results" id="19431567-8539-422a-85d7-44ee4e166bda" />
|
<TestList name="All Loaded Results" id="19431567-8539-422a-85d7-44ee4e166bda" />
|
||||||
</TestLists>
|
</TestLists>
|
||||||
<ResultSummary outcome="Failed">
|
<ResultSummary outcome="Failed">
|
||||||
<Counters total="7" executed="6" passed="3" failed="3" error="0" timeout="0" aborted="0" inconclusive="0" passedButRunAborted="0" notRunnable="0" notExecuted="0" disconnected="0" warning="0" completed="0" inProgress="0" pending="0" />
|
<Counters total="11" executed="10" passed="5" failed="5" error="0" timeout="0" aborted="0" inconclusive="0" passedButRunAborted="0" notRunnable="0" notExecuted="0" disconnected="0" warning="0" completed="0" inProgress="0" pending="0" />
|
||||||
<Output>
|
<Output>
|
||||||
<StdOut>[xUnit.net 00:00:00.00] xUnit.net VSTest Adapter v2.4.0 (64-bit .NET Core 3.1.9)
|
<StdOut>[xUnit.net 00:00:00.00] xUnit.net VSTest Adapter v2.4.0 (64-bit .NET Core 3.1.14)
|
||||||
[xUnit.net 00:00:00.27] Discovering: DotnetTests.XUnitTests
|
[xUnit.net 00:00:00.27] Discovering: DotnetTests.XUnitTests
|
||||||
[xUnit.net 00:00:00.30] Discovered: DotnetTests.XUnitTests
|
[xUnit.net 00:00:00.32] Discovered: DotnetTests.XUnitTests
|
||||||
[xUnit.net 00:00:00.30] Starting: DotnetTests.XUnitTests
|
[xUnit.net 00:00:00.32] Starting: DotnetTests.XUnitTests
|
||||||
[xUnit.net 00:00:00.37] System.Exception : Test
|
[xUnit.net 00:00:00.39] System.Exception : Test
|
||||||
[xUnit.net 00:00:00.37] Stack Trace:
|
[xUnit.net 00:00:00.39] Stack Trace:
|
||||||
[xUnit.net 00:00:00.37] C:\Users\Michal\Workspace\dorny\test-check\reports\dotnet\DotnetTests.XUnitTests\CalculatorTests.cs(39,0): at DotnetTests.XUnitTests.CalculatorTests.Exception_In_Test()
|
[xUnit.net 00:00:00.39] C:\Users\Michal\Workspace\dorny\test-reporter\reports\dotnet\DotnetTests.XUnitTests\CalculatorTests.cs(39,0): at DotnetTests.XUnitTests.CalculatorTests.Exception_In_Test()
|
||||||
[xUnit.net 00:00:00.48] Assert.Equal() Failure
|
[xUnit.net 00:00:00.51] Assert.Equal() Failure
|
||||||
[xUnit.net 00:00:00.48] Expected: 3
|
[xUnit.net 00:00:00.51] Expected: 3
|
||||||
[xUnit.net 00:00:00.48] Actual: 2
|
[xUnit.net 00:00:00.51] Actual: 2
|
||||||
[xUnit.net 00:00:00.48] Stack Trace:
|
[xUnit.net 00:00:00.51] Stack Trace:
|
||||||
[xUnit.net 00:00:00.48] C:\Users\Michal\Workspace\dorny\test-check\reports\dotnet\DotnetTests.XUnitTests\CalculatorTests.cs(27,0): at DotnetTests.XUnitTests.CalculatorTests.Failing_Test()
|
[xUnit.net 00:00:00.51] C:\Users\Michal\Workspace\dorny\test-reporter\reports\dotnet\DotnetTests.XUnitTests\CalculatorTests.cs(27,0): at DotnetTests.XUnitTests.CalculatorTests.Failing_Test()
|
||||||
[xUnit.net 00:00:00.48] System.DivideByZeroException : Attempted to divide by zero.
|
[xUnit.net 00:00:00.51] Assert.True() Failure
|
||||||
[xUnit.net 00:00:00.48] Stack Trace:
|
[xUnit.net 00:00:00.51] Expected: True
|
||||||
[xUnit.net 00:00:00.48] C:\Users\Michal\Workspace\dorny\test-check\reports\dotnet\DotnetTests.Unit\Calculator.cs(9,0): at DotnetTests.Unit.Calculator.Div(Int32 a, Int32 b)
|
[xUnit.net 00:00:00.51] Actual: False
|
||||||
[xUnit.net 00:00:00.48] C:\Users\Michal\Workspace\dorny\test-check\reports\dotnet\DotnetTests.XUnitTests\CalculatorTests.cs(33,0): at DotnetTests.XUnitTests.CalculatorTests.Exception_In_TargetTest()
|
[xUnit.net 00:00:00.51] Stack Trace:
|
||||||
[xUnit.net 00:00:00.48] Skipped test
|
[xUnit.net 00:00:00.51] C:\Users\Michal\Workspace\dorny\test-reporter\reports\dotnet\DotnetTests.XUnitTests\CalculatorTests.cs(67,0): at DotnetTests.XUnitTests.CalculatorTests.Theory_With_Custom_Name(Int32 i)
|
||||||
[xUnit.net 00:00:00.49] Finished: DotnetTests.XUnitTests
|
[xUnit.net 00:00:00.51] System.DivideByZeroException : Attempted to divide by zero.
|
||||||
|
[xUnit.net 00:00:00.51] Stack Trace:
|
||||||
|
[xUnit.net 00:00:00.51] C:\Users\Michal\Workspace\dorny\test-reporter\reports\dotnet\DotnetTests.Unit\Calculator.cs(9,0): at DotnetTests.Unit.Calculator.Div(Int32 a, Int32 b)
|
||||||
|
[xUnit.net 00:00:00.51] C:\Users\Michal\Workspace\dorny\test-reporter\reports\dotnet\DotnetTests.XUnitTests\CalculatorTests.cs(33,0): at DotnetTests.XUnitTests.CalculatorTests.Exception_In_TargetTest()
|
||||||
|
[xUnit.net 00:00:00.51] Assert.True() Failure
|
||||||
|
[xUnit.net 00:00:00.51] Expected: True
|
||||||
|
[xUnit.net 00:00:00.51] Actual: False
|
||||||
|
[xUnit.net 00:00:00.51] Stack Trace:
|
||||||
|
[xUnit.net 00:00:00.51] C:\Users\Michal\Workspace\dorny\test-reporter\reports\dotnet\DotnetTests.XUnitTests\CalculatorTests.cs(59,0): at DotnetTests.XUnitTests.CalculatorTests.Is_Even_Number(Int32 i)
|
||||||
|
[xUnit.net 00:00:00.54] Skipped test
|
||||||
|
[xUnit.net 00:00:00.54] Finished: DotnetTests.XUnitTests
|
||||||
Test 'DotnetTests.XUnitTests.CalculatorTests.Skipped_Test' was skipped in the test run.
|
Test 'DotnetTests.XUnitTests.CalculatorTests.Skipped_Test' was skipped in the test run.
|
||||||
</StdOut>
|
</StdOut>
|
||||||
</Output>
|
</Output>
|
||||||
<RunInfos>
|
<RunInfos>
|
||||||
<RunInfo computerName="DORNY-PC" outcome="Error" timestamp="2020-10-17T21:39:04.1284415+02:00">
|
<RunInfo computerName="DORNY-PC" outcome="Error" timestamp="2021-04-20T08:31:32.8608994+02:00">
|
||||||
<Text>[xUnit.net 00:00:00.37] DotnetTests.XUnitTests.CalculatorTests.Exception_In_Test [FAIL]</Text>
|
<Text>[xUnit.net 00:00:00.39] DotnetTests.XUnitTests.CalculatorTests.Exception_In_Test [FAIL]</Text>
|
||||||
</RunInfo>
|
</RunInfo>
|
||||||
<RunInfo computerName="DORNY-PC" outcome="Error" timestamp="2020-10-17T21:39:04.2341547+02:00">
|
<RunInfo computerName="DORNY-PC" outcome="Error" timestamp="2021-04-20T08:31:32.9743695+02:00">
|
||||||
<Text>[xUnit.net 00:00:00.48] DotnetTests.XUnitTests.CalculatorTests.Failing_Test [FAIL]</Text>
|
<Text>[xUnit.net 00:00:00.51] DotnetTests.XUnitTests.CalculatorTests.Failing_Test [FAIL]</Text>
|
||||||
</RunInfo>
|
</RunInfo>
|
||||||
<RunInfo computerName="DORNY-PC" outcome="Error" timestamp="2020-10-17T21:39:04.2354218+02:00">
|
<RunInfo computerName="DORNY-PC" outcome="Error" timestamp="2021-04-20T08:31:32.9753175+02:00">
|
||||||
<Text>[xUnit.net 00:00:00.48] DotnetTests.XUnitTests.CalculatorTests.Exception_In_TargetTest [FAIL]</Text>
|
<Text>[xUnit.net 00:00:00.51] Should be even number(i: 3) [FAIL]</Text>
|
||||||
</RunInfo>
|
</RunInfo>
|
||||||
<RunInfo computerName="DORNY-PC" outcome="Warning" timestamp="2020-10-17T21:39:04.2388123+02:00">
|
<RunInfo computerName="DORNY-PC" outcome="Error" timestamp="2021-04-20T08:31:32.9767605+02:00">
|
||||||
<Text>[xUnit.net 00:00:00.48] DotnetTests.XUnitTests.CalculatorTests.Skipped_Test [SKIP]</Text>
|
<Text>[xUnit.net 00:00:00.51] DotnetTests.XUnitTests.CalculatorTests.Exception_In_TargetTest [FAIL]</Text>
|
||||||
|
</RunInfo>
|
||||||
|
<RunInfo computerName="DORNY-PC" outcome="Error" timestamp="2021-04-20T08:31:32.9843677+02:00">
|
||||||
|
<Text>[xUnit.net 00:00:00.51] DotnetTests.XUnitTests.CalculatorTests.Is_Even_Number(i: 3) [FAIL]</Text>
|
||||||
|
</RunInfo>
|
||||||
|
<RunInfo computerName="DORNY-PC" outcome="Warning" timestamp="2021-04-20T08:31:33.1004401+02:00">
|
||||||
|
<Text>[xUnit.net 00:00:00.54] DotnetTests.XUnitTests.CalculatorTests.Skipped_Test [SKIP]</Text>
|
||||||
</RunInfo>
|
</RunInfo>
|
||||||
</RunInfos>
|
</RunInfos>
|
||||||
</ResultSummary>
|
</ResultSummary>
|
||||||
|
|||||||
9
__tests__/fixtures/empty/dart-json.json
Normal file
9
__tests__/fixtures/empty/dart-json.json
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
{"protocolVersion":"0.1.1","runnerVersion":"1.15.4","pid":21320,"type":"start","time":0}
|
||||||
|
{"suite":{"id":0,"platform":"vm","path":"test\\main_test.dart"},"type":"suite","time":0}
|
||||||
|
{"test":{"id":1,"name":"loading test\\main_test.dart","suiteID":0,"groupIDs":[],"metadata":{"skip":false,"skipReason":null},"line":null,"column":null,"url":null},"type":"testStart","time":1}
|
||||||
|
{"suite":{"id":2,"platform":"vm","path":"test\\second_test.dart"},"type":"suite","time":11}
|
||||||
|
{"test":{"id":3,"name":"loading test\\second_test.dart","suiteID":2,"groupIDs":[],"metadata":{"skip":false,"skipReason":null},"line":null,"column":null,"url":null},"type":"testStart","time":11}
|
||||||
|
{"count":2,"type":"allSuites","time":11}
|
||||||
|
{"testID":1,"result":"success","skipped":false,"hidden":true,"type":"testDone","time":4018}
|
||||||
|
{"testID":3,"result":"success","skipped":false,"hidden":true,"type":"testDone","time":4025}
|
||||||
|
{"success":true,"type":"done","time":4029}
|
||||||
19
__tests__/fixtures/empty/dotnet-trx.trx
Normal file
19
__tests__/fixtures/empty/dotnet-trx.trx
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<TestRun id="80e4c095-f726-4ab2-9441-416daa162672" name="..." runUser="..." xmlns="http://microsoft.com/schemas/VisualStudio/TeamTest/2010">
|
||||||
|
<Times creation="2021-02-26T10:36:33.7131022+02:00" queuing="2021-02-26T10:36:33.7131029+02:00" start="2021-02-26T10:36:33.3278956+02:00" finish="2021-02-26T10:36:33.7139830+02:00" />
|
||||||
|
<TestSettings name="default" id="863a1d8b-ee3b-45f9-86ee-1869bc4e889f">
|
||||||
|
<Deployment runDeploymentRoot="..." />
|
||||||
|
</TestSettings>
|
||||||
|
<TestLists>
|
||||||
|
<TestList name="Results Not in a List" id="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestList name="All Loaded Results" id="19431567-8539-422a-85d7-44ee4e166bda" />
|
||||||
|
</TestLists>
|
||||||
|
<ResultSummary outcome="Completed">
|
||||||
|
<Counters total="0" executed="0" passed="0" failed="0" error="0" timeout="0" aborted="0" inconclusive="0" passedButRunAborted="0" notRunnable="0" notExecuted="0" disconnected="0" warning="0" completed="0" inProgress="0" pending="0" />
|
||||||
|
<RunInfos>
|
||||||
|
<RunInfo computerName="..." outcome="Warning" timestamp="2021-02-26T10:36:33.6676104+02:00">
|
||||||
|
<Text>No test is available in (...). Make sure that test discoverer & executors are registered and platform & framework version settings are appropriate and try again.</Text>
|
||||||
|
</RunInfo>
|
||||||
|
</RunInfos>
|
||||||
|
</ResultSummary>
|
||||||
|
</TestRun>
|
||||||
3
__tests__/fixtures/empty/java-junit.xml
Normal file
3
__tests__/fixtures/empty/java-junit.xml
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<testsuite skipped="0" hostname="fv-az96-723" name="org.apache.pulsar.AddMissingPatchVersionTest" tests="0" failures="0" timestamp="2021-03-07T10:36:56 UTC" time="0.116" errors="0">
|
||||||
|
</testsuite>
|
||||||
3
__tests__/fixtures/empty/jest-junit.xml
Normal file
3
__tests__/fixtures/empty/jest-junit.xml
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<testsuites name="jest tests" tests="0" failures="0" errors="0" time="11.299">
|
||||||
|
</testsuites>
|
||||||
16
__tests__/fixtures/empty/mocha-json.json
Normal file
16
__tests__/fixtures/empty/mocha-json.json
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
{
|
||||||
|
"stats": {
|
||||||
|
"suites": 0,
|
||||||
|
"tests": 0,
|
||||||
|
"passes": 0,
|
||||||
|
"pending": 0,
|
||||||
|
"failures": 0,
|
||||||
|
"start": "2021-03-08T20:01:44.391Z",
|
||||||
|
"end": "2021-03-08T20:01:44.391Z",
|
||||||
|
"duration": 0
|
||||||
|
},
|
||||||
|
"tests": [],
|
||||||
|
"pending": [],
|
||||||
|
"failures": [],
|
||||||
|
"passes": []
|
||||||
|
}
|
||||||
609
__tests__/fixtures/external/SilentNotes.trx
vendored
Normal file
609
__tests__/fixtures/external/SilentNotes.trx
vendored
Normal file
@@ -0,0 +1,609 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<TestRun id="424d6b43-160d-46b3-a497-44bf6eb5f1d4" name="Michal@DORNY-PC 2021-04-20 21:20:35" runUser="DORNY-PC\Michal" xmlns="http://microsoft.com/schemas/VisualStudio/TeamTest/2010">
|
||||||
|
<Times creation="2021-04-20T21:20:35.5616820+02:00" queuing="2021-04-20T21:20:35.5616829+02:00" start="2021-04-20T21:20:34.6319183+02:00" finish="2021-04-20T21:20:35.8887367+02:00" />
|
||||||
|
<TestSettings name="default" id="9fddc3fc-3d7a-4dc6-8498-145e1dab25b7">
|
||||||
|
<Deployment runDeploymentRoot="Michal_DORNY-PC_2021-04-20_21_20_35" />
|
||||||
|
</TestSettings>
|
||||||
|
<Results>
|
||||||
|
<UnitTestResult executionId="e0f60156-4a28-4d04-8336-040ffe215e8f" testId="a500e09e-b66a-a804-eaae-a237a3b689b9" testName="FetchTokenReturnsNullForDeniedAccess" computerName="DORNY-PC" duration="00:00:00.0010000" startTime="2021-04-20T21:20:35.7679347+02:00" endTime="2021-04-20T21:20:35.7688008+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="e0f60156-4a28-4d04-8336-040ffe215e8f" />
|
||||||
|
<UnitTestResult executionId="4401f9ea-5a99-4275-a333-18655e9517ce" testId="49ceb249-d1ca-f3dc-41f8-28a41637f4d7" testName="SerializedJsonDoesNotContainPlaintextData" computerName="DORNY-PC" duration="00:00:00.0000001" startTime="2021-04-20T21:20:35.8030865+02:00" endTime="2021-04-20T21:20:35.8032634+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="4401f9ea-5a99-4275-a333-18655e9517ce" />
|
||||||
|
<UnitTestResult executionId="83d32025-8d5e-4a58-92b3-e797e4ea3bfa" testId="5dab3a75-ff5f-1e46-20cf-bc072154bb33" testName="ReallyDoOpenAuthorizationPageInBrowser" computerName="DORNY-PC" startTime="2021-04-20T21:20:35.4897854+02:00" endTime="2021-04-20T21:20:35.4897938+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="NotExecuted" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="83d32025-8d5e-4a58-92b3-e797e4ea3bfa">
|
||||||
|
<Output>
|
||||||
|
<StdOut>Opens the authorization page in the system browse, to get a real access-token</StdOut>
|
||||||
|
<ErrorInfo>
|
||||||
|
<Message>Opens the authorization page in the system browse, to get a real access-token</Message>
|
||||||
|
</ErrorInfo>
|
||||||
|
</Output>
|
||||||
|
</UnitTestResult>
|
||||||
|
<UnitTestResult executionId="7c73d2a6-34a5-400d-8163-40375210062f" testId="89dd1b67-c0ca-dcc6-ca42-c4f3660c0208" testName="FileLifecycleWorks" computerName="DORNY-PC" duration="00:00:00.1610000" startTime="2021-04-20T21:20:35.4970636+02:00" endTime="2021-04-20T21:20:35.6579410+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="7c73d2a6-34a5-400d-8163-40375210062f" />
|
||||||
|
<UnitTestResult executionId="cd601b6c-919f-4585-b5e6-d220a0ba17be" testId="916a4c11-6ebe-26db-3769-b9df2051743c" testName="CorrectlyConvertsStringToSecureString" computerName="DORNY-PC" duration="00:00:00.0000001" startTime="2021-04-20T21:20:35.7732857+02:00" endTime="2021-04-20T21:20:35.7734692+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="cd601b6c-919f-4585-b5e6-d220a0ba17be" />
|
||||||
|
<UnitTestResult executionId="f33ac19b-8781-4127-a232-7c7a2e6d6c32" testId="034a71d4-f7f9-43e6-fc0a-59a23ef2cd9b" testName="ValidateAcceptsValidCredentials" computerName="DORNY-PC" duration="00:00:00.0030000" startTime="2021-04-20T21:20:35.3807412+02:00" endTime="2021-04-20T21:20:35.3837140+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="f33ac19b-8781-4127-a232-7c7a2e6d6c32" />
|
||||||
|
<UnitTestResult executionId="ddc1f371-da00-4b39-bc51-e4467d1f519d" testId="f7c94d67-56c9-6418-8a42-ddc79dc57ea2" testName="BuildAuthorizationRequestUrlThrowsWithMissingRedirectUrlForTokenFlow" computerName="DORNY-PC" duration="00:00:00.0000001" startTime="2021-04-20T21:20:35.7494602+02:00" endTime="2021-04-20T21:20:35.7497592+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="ddc1f371-da00-4b39-bc51-e4467d1f519d" />
|
||||||
|
<UnitTestResult executionId="b4b53ef3-c8be-4bcd-8ec3-84fef1e42440" testId="6d6d9696-e968-4583-999f-f73ff1b5b40e" testName="ParseRealWorldDropboxSuccessResponse" computerName="DORNY-PC" duration="00:00:00.0000001" startTime="2021-04-20T21:20:35.7595223+02:00" endTime="2021-04-20T21:20:35.7597223+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="b4b53ef3-c8be-4bcd-8ec3-84fef1e42440" />
|
||||||
|
<UnitTestResult executionId="e7b019dd-c6ee-40b6-91d9-c7f4bfb03f55" testId="275ce8fa-d4c1-63f1-9add-641a70fb73e6" testName="BuildAuthorizationRequestUrlUsesAllParameters" computerName="DORNY-PC" duration="00:00:00.0000001" startTime="2021-04-20T21:20:35.7497706+02:00" endTime="2021-04-20T21:20:35.7499131+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="e7b019dd-c6ee-40b6-91d9-c7f4bfb03f55" />
|
||||||
|
<UnitTestResult executionId="60e6f439-58a9-40ac-b6f1-8120f2f04c87" testId="fbed828f-38a9-0e13-af25-e507fd37c36e" testName="SerializedDatacontractDoesNotContainNullProperties" computerName="DORNY-PC" duration="00:00:00.0000001" startTime="2021-04-20T21:20:35.7935921+02:00" endTime="2021-04-20T21:20:35.7938935+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="60e6f439-58a9-40ac-b6f1-8120f2f04c87" />
|
||||||
|
<UnitTestResult executionId="705cbcf0-24cb-427d-848e-ed2970b0ab58" testId="cc085a0d-1f67-be85-d187-865a89737f10" testName="CorrectlyConvertsSecureStringToString" computerName="DORNY-PC" duration="00:00:00.0070000" startTime="2021-04-20T21:20:35.3682792+02:00" endTime="2021-04-20T21:20:35.3752099+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="705cbcf0-24cb-427d-848e-ed2970b0ab58" />
|
||||||
|
<UnitTestResult executionId="a9e342c2-bc62-4b01-835b-842bec9f2d4c" testId="4340b799-0666-32b6-4fdd-1daf8a626bc7" testName="SerializedJsonDoesNotContainNullProperties" computerName="DORNY-PC" duration="00:00:00.0000001" startTime="2021-04-20T21:20:35.8028668+02:00" endTime="2021-04-20T21:20:35.8030750+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="a9e342c2-bc62-4b01-835b-842bec9f2d4c" />
|
||||||
|
<UnitTestResult executionId="8073954d-cee8-455e-a86d-97e8a4ec614d" testId="75ed4b0d-8eff-6a45-b5e4-0db6070c60bb" testName="SerializedDatacontractCanBeReadBack" computerName="DORNY-PC" duration="00:00:00.0160000" startTime="2021-04-20T21:20:35.7775276+02:00" endTime="2021-04-20T21:20:35.7935720+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="8073954d-cee8-455e-a86d-97e8a4ec614d" />
|
||||||
|
<UnitTestResult executionId="df1e2af3-79ce-4ddc-87e9-aaee93bb557b" testId="28e75f1f-48b9-972a-3113-38add5d40440" testName="ReallyDoRefreshToken" computerName="DORNY-PC" startTime="2021-04-20T21:20:35.7257934+02:00" endTime="2021-04-20T21:20:35.7257944+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="NotExecuted" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="df1e2af3-79ce-4ddc-87e9-aaee93bb557b">
|
||||||
|
<Output>
|
||||||
|
<StdOut>Refreshes a real token</StdOut>
|
||||||
|
<ErrorInfo>
|
||||||
|
<Message>Refreshes a real token</Message>
|
||||||
|
</ErrorInfo>
|
||||||
|
</Output>
|
||||||
|
</UnitTestResult>
|
||||||
|
<UnitTestResult executionId="998a6ba8-0502-4c0f-8ca8-f4ee77326d18" testId="e740f944-23a8-ca0e-606c-a36651ed4b4f" testName="ParseStratoWebdavResponseCorrectly" computerName="DORNY-PC" duration="00:00:00.0000001" startTime="2021-04-20T21:20:35.7401823+02:00" endTime="2021-04-20T21:20:35.7405396+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="998a6ba8-0502-4c0f-8ca8-f4ee77326d18" />
|
||||||
|
<UnitTestResult executionId="ea83c2aa-3b60-4ddc-bc14-f7e8c0f4cc2a" testId="767acdfc-0e73-c887-803e-31c8aaa97dde" testName="SerializedXmlDoesNotContainNullProperties" computerName="DORNY-PC" duration="00:00:00.0000001" startTime="2021-04-20T21:20:35.8188264+02:00" endTime="2021-04-20T21:20:35.8191161+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="ea83c2aa-3b60-4ddc-bc14-f7e8c0f4cc2a" />
|
||||||
|
<UnitTestResult executionId="99ffb4ca-843c-48e2-ba37-90424746c53f" testId="ca777d22-3b0f-e952-bd8a-c5660245a81f" testName="ThrowsWithInvalidUrl" computerName="DORNY-PC" startTime="2021-04-20T21:20:35.6633657+02:00" endTime="2021-04-20T21:20:35.6633670+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="NotExecuted" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="99ffb4ca-843c-48e2-ba37-90424746c53f">
|
||||||
|
<Output>
|
||||||
|
<StdOut>Too many consecutive fails seems to block an FTP server.</StdOut>
|
||||||
|
<ErrorInfo>
|
||||||
|
<Message>Too many consecutive fails seems to block an FTP server.</Message>
|
||||||
|
</ErrorInfo>
|
||||||
|
</Output>
|
||||||
|
</UnitTestResult>
|
||||||
|
<UnitTestResult executionId="8a597631-5dd4-4119-a2e8-c86478191d1e" testId="fa59d18c-2c0d-3f7a-7b89-8b05c8530c98" testName="NeedsRefreshReturnsFalseIfNotExpired" computerName="DORNY-PC" duration="00:00:00.0000001" startTime="2021-04-20T21:20:35.7426491+02:00" endTime="2021-04-20T21:20:35.7427983+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="8a597631-5dd4-4119-a2e8-c86478191d1e" />
|
||||||
|
<UnitTestResult executionId="502e3c21-4407-4b5a-85ff-ed1eb355da72" testId="61b1c53a-6b35-a0bd-cf9f-996f45b4c761" testName="ThrowsWithInvalidUsername" computerName="DORNY-PC" duration="00:00:00.0000001" startTime="2021-04-20T21:20:35.7411291+02:00" endTime="2021-04-20T21:20:35.7415912+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="502e3c21-4407-4b5a-85ff-ed1eb355da72" />
|
||||||
|
<UnitTestResult executionId="1804b7c8-7729-426c-91d9-691ce82a1d7a" testId="736ef283-7bdf-6b3e-0caf-6c21f948cdc6" testName="ThrowsWithHttpInsteadOfFtp" computerName="DORNY-PC" duration="00:00:00.0040000" startTime="2021-04-20T21:20:35.6594895+02:00" endTime="2021-04-20T21:20:35.6633287+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="1804b7c8-7729-426c-91d9-691ce82a1d7a" />
|
||||||
|
<UnitTestResult executionId="6234ffeb-0f16-4775-9eb0-759232f07cb4" testId="49a69aa8-9346-0600-d464-81784b9e612b" testName="SerializedXmlDoesNotContainPlaintextData" computerName="DORNY-PC" duration="00:00:00.0000001" startTime="2021-04-20T21:20:35.8191301+02:00" endTime="2021-04-20T21:20:35.8193578+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="6234ffeb-0f16-4775-9eb0-759232f07cb4" />
|
||||||
|
<UnitTestResult executionId="a56e0451-e540-43ee-b30c-1948a059cbe7" testId="c04d2194-9d0c-6f49-84c9-4d2691f2d076" testName="ThrowsWithInvalidPath" computerName="DORNY-PC" duration="00:00:00.0010000" startTime="2021-04-20T21:20:35.7405510+02:00" endTime="2021-04-20T21:20:35.7411167+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="a56e0451-e540-43ee-b30c-1948a059cbe7" />
|
||||||
|
<UnitTestResult executionId="0e32eb27-9a2c-497d-8d96-4852e04f9247" testId="50701c3a-d1b9-0423-26e6-4be52cf1d5f0" testName="BuildAuthorizationRequestUrlLeavesOutOptionalParameters" computerName="DORNY-PC" duration="00:00:00.0000001" startTime="2021-04-20T21:20:35.7492579+02:00" endTime="2021-04-20T21:20:35.7494479+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="0e32eb27-9a2c-497d-8d96-4852e04f9247" />
|
||||||
|
<UnitTestResult executionId="208fc10c-948d-4641-b459-a3249b341dcb" testId="ebe21dff-4309-2b2e-75d7-dd55a44ce033" testName="SanitizeCredentials_ChangesInvalidPrefix" computerName="DORNY-PC" duration="00:00:00.0000001" startTime="2021-04-20T21:20:35.6579581+02:00" endTime="2021-04-20T21:20:35.6582444+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="208fc10c-948d-4641-b459-a3249b341dcb" />
|
||||||
|
<UnitTestResult executionId="7660f5b8-b4fa-4388-9118-e136c6490dd8" testId="4af5858f-3f1a-a886-5596-87475d64aeb3" testName="CorrectlyConvertsUnicodeBytesToSecureString" computerName="DORNY-PC" duration="00:00:00.0000001" startTime="2021-04-20T21:20:35.7734767+02:00" endTime="2021-04-20T21:20:35.7738713+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="7660f5b8-b4fa-4388-9118-e136c6490dd8" />
|
||||||
|
<UnitTestResult executionId="f48f72ef-ec73-4839-b314-7d22a3cfec69" testId="537e4579-87e2-7283-ca3f-eb8ddb93ae39" testName="NeedsRefreshReturnsTrueIfNoExpirationDate" computerName="DORNY-PC" duration="00:00:00.0000001" startTime="2021-04-20T21:20:35.7429408+02:00" endTime="2021-04-20T21:20:35.7430304+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="f48f72ef-ec73-4839-b314-7d22a3cfec69" />
|
||||||
|
<UnitTestResult executionId="0a807015-4876-4110-888e-ba37dfcce38a" testId="89e1d4aa-9217-7c34-fc4d-99ef9efe7a7d" testName="ParseRealWorldDropboxRejectResponse" computerName="DORNY-PC" duration="00:00:00.0090000" startTime="2021-04-20T21:20:35.7506657+02:00" endTime="2021-04-20T21:20:35.7595015+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="0a807015-4876-4110-888e-ba37dfcce38a" />
|
||||||
|
<UnitTestResult executionId="426d15ea-cd3e-4e87-8e2a-14502afbd98f" testId="e22320ba-05cc-579d-8c7d-c693d9b6406e" testName="SerializedJsonCanBeReadBack" computerName="DORNY-PC" duration="00:00:00.0070000" startTime="2021-04-20T21:20:35.7955984+02:00" endTime="2021-04-20T21:20:35.8028478+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="426d15ea-cd3e-4e87-8e2a-14502afbd98f" />
|
||||||
|
<UnitTestResult executionId="093b7fc9-4477-4bcf-9443-6cc760333b4a" testId="d941f923-cd04-ee0a-427c-b81e14aafa3d" testName="ChoosesCorrectUrlForGmxNetEmail" computerName="DORNY-PC" duration="00:00:00.0010000" startTime="2021-04-20T21:20:35.6694256+02:00" endTime="2021-04-20T21:20:35.6703787+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="093b7fc9-4477-4bcf-9443-6cc760333b4a" />
|
||||||
|
<UnitTestResult executionId="06a2ec7f-dc87-4ee9-8394-fd650312a2ab" testId="5fa805b8-ec79-3c7c-8e87-3db6dc58f83e" testName="ThrowsAccessDeniedExceptionWithInvalidToken" computerName="DORNY-PC" duration="00:00:00.0060000" startTime="2021-04-20T21:20:35.4898039+02:00" endTime="2021-04-20T21:20:35.4961132+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="06a2ec7f-dc87-4ee9-8394-fd650312a2ab" />
|
||||||
|
<UnitTestResult executionId="01ecb439-d050-4ac9-95c9-a7378091bcc5" testId="9da3226a-a96e-91f6-c5b6-b3102b5b332a" testName="SerializedDatacontractDoesNotContainPlaintextData" computerName="DORNY-PC" duration="00:00:00.0020000" startTime="2021-04-20T21:20:35.7939062+02:00" endTime="2021-04-20T21:20:35.7955862+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="01ecb439-d050-4ac9-95c9-a7378091bcc5" />
|
||||||
|
<UnitTestResult executionId="5e0c0e75-9fc9-40ce-ba0a-9c2a0887bdac" testId="a4f5c6bf-c950-cfa4-1f50-3ce62d833293" testName="RefreshTokenCanInterpretGoogleResponse" computerName="DORNY-PC" duration="00:00:00.0030000" startTime="2021-04-20T21:20:35.7696326+02:00" endTime="2021-04-20T21:20:35.7722741+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="5e0c0e75-9fc9-40ce-ba0a-9c2a0887bdac" />
|
||||||
|
<UnitTestResult executionId="14edf9a2-4d91-4d49-bbee-0400d51f8950" testId="819198e9-75c1-9681-32e4-669dfa258e8a" testName="ParseGmxWebdavResponseCorrectly" computerName="DORNY-PC" duration="00:00:00.0010000" startTime="2021-04-20T21:20:35.7396472+02:00" endTime="2021-04-20T21:20:35.7401701+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="14edf9a2-4d91-4d49-bbee-0400d51f8950" />
|
||||||
|
<UnitTestResult executionId="52fca9fd-4e45-4f44-9857-f267268b0924" testId="a436d607-b2be-f301-d56f-50716e7b321a" testName="CorrectlyConvertsUtf8BytesToSecureString" computerName="DORNY-PC" duration="00:00:00.0000001" startTime="2021-04-20T21:20:35.7738825+02:00" endTime="2021-04-20T21:20:35.7741056+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="52fca9fd-4e45-4f44-9857-f267268b0924" />
|
||||||
|
<UnitTestResult executionId="aa3eef6e-4555-49bd-a1fa-ef6f663a5d22" testId="64d76ddb-a88f-9c22-6ed0-af3ecb98ffb9" testName="CorrectlyConvertsStringToSecureString" computerName="DORNY-PC" duration="00:00:00.0060000" startTime="2021-04-20T21:20:35.3752233+02:00" endTime="2021-04-20T21:20:35.3807261+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="aa3eef6e-4555-49bd-a1fa-ef6f663a5d22" />
|
||||||
|
<UnitTestResult executionId="cd51e1e5-acf8-4a63-a556-0dfd4d99b491" testId="c6bece37-31ea-7f18-10f5-6b96a09f4154" testName="AreEqualWorksWithSameContent" computerName="DORNY-PC" duration="00:00:00.0010000" startTime="2021-04-20T21:20:35.3670949+02:00" endTime="2021-04-20T21:20:35.3681934+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="cd51e1e5-acf8-4a63-a556-0dfd4d99b491" />
|
||||||
|
<UnitTestResult executionId="fa2b22e8-c121-4f97-8849-4cbe45734f9f" testId="72ed0c35-21ea-7829-893f-73c9214b4f4a" testName="CorrectlyConvertsSecureStringToString" computerName="DORNY-PC" duration="00:00:00.0000001" startTime="2021-04-20T21:20:35.7726187+02:00" endTime="2021-04-20T21:20:35.7727590+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="fa2b22e8-c121-4f97-8849-4cbe45734f9f" />
|
||||||
|
<UnitTestResult executionId="0c9508da-1207-4eb3-891c-e66e5e768788" testId="ad03a66d-a9e8-9ade-31df-92fa6cac714b" testName="ParsesNullErrorCodeCorrectly" computerName="DORNY-PC" duration="00:00:00.0000001" startTime="2021-04-20T21:20:35.7472239+02:00" endTime="2021-04-20T21:20:35.7473437+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="0c9508da-1207-4eb3-891c-e66e5e768788" />
|
||||||
|
<UnitTestResult executionId="1c925dd1-edfa-46f1-8b9b-d9ce8cbf2635" testId="e9788947-b431-c470-eb25-13f39858c423" testName="ChoosesCorrectUrlForGmxComEmail" computerName="DORNY-PC" duration="00:00:00.0060000" startTime="2021-04-20T21:20:35.6634852+02:00" endTime="2021-04-20T21:20:35.6694047+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="1c925dd1-edfa-46f1-8b9b-d9ce8cbf2635" />
|
||||||
|
<UnitTestResult executionId="80c55db9-4d42-4fd2-a48c-22ad4cd39105" testId="b251efa4-be1f-5ed7-99ba-5339059780ec" testName="FileLifecycleWorks" computerName="DORNY-PC" duration="00:00:00.0140000" startTime="2021-04-20T21:20:35.7259035+02:00" endTime="2021-04-20T21:20:35.7396295+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="80c55db9-4d42-4fd2-a48c-22ad4cd39105" />
|
||||||
|
<UnitTestResult executionId="1624ee85-3987-47af-9822-074bcbca9106" testId="22de815b-16af-03c5-d819-7c8851c1da3c" testName="SetExpiryDateBySecondsWorksWithNull" computerName="DORNY-PC" duration="00:00:00.0000001" startTime="2021-04-20T21:20:35.7434736+02:00" endTime="2021-04-20T21:20:35.7435860+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="1624ee85-3987-47af-9822-074bcbca9106" />
|
||||||
|
<UnitTestResult executionId="ed88606c-3b41-49bc-ae3f-f226d9464261" testId="c262190d-9c9e-6be3-5e5d-634c12813410" testName="ValidateRejectsInvalidCredentials" computerName="DORNY-PC" duration="00:00:00.0060000" startTime="2021-04-20T21:20:35.3837274+02:00" endTime="2021-04-20T21:20:35.3894951+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="ed88606c-3b41-49bc-ae3f-f226d9464261" />
|
||||||
|
<UnitTestResult executionId="414673ca-5d78-4202-842b-7f13e7b40f2b" testId="951f28a9-26ae-8567-a07e-eef0e1def226" testName="EncryptBeforeSerializationProtectsAllNecessaryProperties" computerName="DORNY-PC" duration="00:00:00.0000001" startTime="2021-04-20T21:20:35.7768521+02:00" endTime="2021-04-20T21:20:35.7773429+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="414673ca-5d78-4202-842b-7f13e7b40f2b" />
|
||||||
|
<UnitTestResult executionId="a1f2867a-47fb-49db-901b-7114af3845bd" testId="f43fb36c-bb2f-88d6-fd89-bda7c22b6c91" testName="DecryptAfterDesrializationRespectsNullProperties" computerName="DORNY-PC" duration="00:00:00.0000001" startTime="2021-04-20T21:20:35.7765941+02:00" endTime="2021-04-20T21:20:35.7768387+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="a1f2867a-47fb-49db-901b-7114af3845bd" />
|
||||||
|
<UnitTestResult executionId="30222c71-5fd6-48d2-ac28-fcd942c4ed39" testId="2281e288-4c7c-bbf6-5b39-72098edf13cc" testName="ReallyDoFetchToken" computerName="DORNY-PC" startTime="2021-04-20T21:20:35.4892590+02:00" endTime="2021-04-20T21:20:35.4897152+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="NotExecuted" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="30222c71-5fd6-48d2-ac28-fcd942c4ed39">
|
||||||
|
<Output>
|
||||||
|
<StdOut>Gets a real access-token</StdOut>
|
||||||
|
<ErrorInfo>
|
||||||
|
<Message>Gets a real access-token</Message>
|
||||||
|
</ErrorInfo>
|
||||||
|
</Output>
|
||||||
|
</UnitTestResult>
|
||||||
|
<UnitTestResult executionId="ed9923ba-9af6-4558-b34e-f49eb0456eff" testId="13e39882-2195-72c3-053f-9cff2ec1d67d" testName="ReallyDoOpenAuthorizationPageInBrowser" computerName="DORNY-PC" startTime="2021-04-20T21:20:35.7257885+02:00" endTime="2021-04-20T21:20:35.7257895+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="NotExecuted" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="ed9923ba-9af6-4558-b34e-f49eb0456eff">
|
||||||
|
<Output>
|
||||||
|
<StdOut>Opens the authorization page in the system browse, to get a real authorization-code</StdOut>
|
||||||
|
<ErrorInfo>
|
||||||
|
<Message>Opens the authorization page in the system browse, to get a real authorization-code</Message>
|
||||||
|
</ErrorInfo>
|
||||||
|
</Output>
|
||||||
|
</UnitTestResult>
|
||||||
|
<UnitTestResult executionId="0d72415d-fdfd-4cc2-b812-74abc7818f4e" testId="30bd1939-4032-847c-f269-bb1757915f16" testName="DecryptAfterDesrializationCanReadAllPropertiesBack" computerName="DORNY-PC" duration="00:00:00.0020000" startTime="2021-04-20T21:20:35.7742296+02:00" endTime="2021-04-20T21:20:35.7765786+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="0d72415d-fdfd-4cc2-b812-74abc7818f4e" />
|
||||||
|
<UnitTestResult executionId="5fbd98cc-68bb-4536-8a46-43b979e213a6" testId="432b7e9a-53e9-d7c7-531a-b22f10d8a0f5" testName="SecureSslConnectionWorks" computerName="DORNY-PC" duration="00:00:00.0010000" startTime="2021-04-20T21:20:35.6582561+02:00" endTime="2021-04-20T21:20:35.6594767+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="5fbd98cc-68bb-4536-8a46-43b979e213a6" />
|
||||||
|
<UnitTestResult executionId="29177f57-4100-4d14-9def-92aee48433ab" testId="ebbd2ea6-e642-f74f-abc0-f79e1e19896c" testName="NeedsRefreshReturnsFalseForTokenFlow" computerName="DORNY-PC" duration="00:00:00.0000001" startTime="2021-04-20T21:20:35.7423452+02:00" endTime="2021-04-20T21:20:35.7426379+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="29177f57-4100-4d14-9def-92aee48433ab" />
|
||||||
|
<UnitTestResult executionId="0d4f644d-4bfc-49e5-9983-56d071104b86" testId="3640390a-9ea3-e873-ecaf-b1f0acce39dc" testName="FetchTokenCanInterpretGoogleResponse" computerName="DORNY-PC" duration="00:00:00.0070000" startTime="2021-04-20T21:20:35.7608329+02:00" endTime="2021-04-20T21:20:35.7679172+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="0d4f644d-4bfc-49e5-9983-56d071104b86" />
|
||||||
|
<UnitTestResult executionId="6f544caa-1014-485e-95b2-60c343c818cb" testId="de4ced25-0268-f393-cea0-bb04d4c5a29e" testName="NeedsRefreshReturnsTrueIfExpired" computerName="DORNY-PC" duration="00:00:00.0000001" startTime="2021-04-20T21:20:35.7428060+02:00" endTime="2021-04-20T21:20:35.7429335+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="6f544caa-1014-485e-95b2-60c343c818cb" />
|
||||||
|
<UnitTestResult executionId="4c6f6322-a4c6-4738-b068-1baf9c286a03" testId="e684ae1a-ebd6-8708-4f88-d018712c6d26" testName="ParseRealWorldGoogleSuccessResponse" computerName="DORNY-PC" duration="00:00:00.0000001" startTime="2021-04-20T21:20:35.7599219+02:00" endTime="2021-04-20T21:20:35.7600718+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="4c6f6322-a4c6-4738-b068-1baf9c286a03" />
|
||||||
|
<UnitTestResult executionId="4536485e-ee25-4d61-9353-14a984535b8e" testId="3fa575d3-8c64-4e79-fa65-acc9170b3c5a" testName="FileLifecycleWorks" computerName="DORNY-PC" duration="00:00:00.0400000" startTime="2021-04-20T21:20:35.6705081+02:00" endTime="2021-04-20T21:20:35.7105603+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="4536485e-ee25-4d61-9353-14a984535b8e" />
|
||||||
|
<UnitTestResult executionId="5c34792d-1eb8-4798-b9f5-a37a5601d982" testId="5d03904b-0ce2-14e9-560e-6097c6faa283" testName="SetExpiryDateBySecondsWorks" computerName="DORNY-PC" duration="00:00:00.0000001" startTime="2021-04-20T21:20:35.7430373+02:00" endTime="2021-04-20T21:20:35.7434618+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="5c34792d-1eb8-4798-b9f5-a37a5601d982" />
|
||||||
|
<UnitTestResult executionId="b2c31d72-0f6f-4fd3-aadf-519c526ba627" testId="be9e3070-8b2d-4cc8-2595-fb57d16c6cdd" testName="SetExpiryDateBySecondsWorksWithVeryShortPeriod" computerName="DORNY-PC" duration="00:00:00.0000001" startTime="2021-04-20T21:20:35.7435932+02:00" endTime="2021-04-20T21:20:35.7438176+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="b2c31d72-0f6f-4fd3-aadf-519c526ba627" />
|
||||||
|
<UnitTestResult executionId="0b40b822-b7ff-400e-8c5b-26717502ad01" testId="176fe880-e16d-469b-88c8-2560bc54254b" testName="ReallyDoFetchToken" computerName="DORNY-PC" startTime="2021-04-20T21:20:35.7105789+02:00" endTime="2021-04-20T21:20:35.7105821+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="NotExecuted" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="0b40b822-b7ff-400e-8c5b-26717502ad01">
|
||||||
|
<Output>
|
||||||
|
<StdOut>Gets a real access-token</StdOut>
|
||||||
|
<ErrorInfo>
|
||||||
|
<Message>Gets a real access-token</Message>
|
||||||
|
</ErrorInfo>
|
||||||
|
</Output>
|
||||||
|
</UnitTestResult>
|
||||||
|
<UnitTestResult executionId="0e832195-44c2-41d5-931b-fa2dc4d4655f" testId="11d38d36-4090-e9ae-0dfe-52c8ffa930a6" testName="FileLifecycleWorks" computerName="DORNY-PC" duration="00:00:00.0150000" startTime="2021-04-20T21:20:35.7108717+02:00" endTime="2021-04-20T21:20:35.7257614+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="0e832195-44c2-41d5-931b-fa2dc4d4655f" />
|
||||||
|
<UnitTestResult executionId="ca75b323-cd43-4a26-9e6f-fa3650cc9eca" testId="e3bf520c-cf79-f90b-dc21-9c25e58a369d" testName="ParsesAllErrorCodesCorrectly" computerName="DORNY-PC" duration="00:00:00.0030000" startTime="2021-04-20T21:20:35.7439327+02:00" endTime="2021-04-20T21:20:35.7472036+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="ca75b323-cd43-4a26-9e6f-fa3650cc9eca" />
|
||||||
|
<UnitTestResult executionId="eeeeda37-81c3-4432-93c3-6197cc86aec4" testId="ce42ac62-8706-8922-cf93-ac01f045e42d" testName="ReallyDoFetchToken" computerName="DORNY-PC" startTime="2021-04-20T21:20:35.7257805+02:00" endTime="2021-04-20T21:20:35.7257838+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="NotExecuted" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="eeeeda37-81c3-4432-93c3-6197cc86aec4">
|
||||||
|
<Output>
|
||||||
|
<StdOut>Gets a real access-token</StdOut>
|
||||||
|
<ErrorInfo>
|
||||||
|
<Message>Gets a real access-token</Message>
|
||||||
|
</ErrorInfo>
|
||||||
|
</Output>
|
||||||
|
</UnitTestResult>
|
||||||
|
<UnitTestResult executionId="a036e7ee-f4ac-442d-827c-9c1103d6fd35" testId="da7235ad-2f42-43de-0593-6a35cf28a618" testName="ReallyDoRefreshToken" computerName="DORNY-PC" startTime="2021-04-20T21:20:35.7106574+02:00" endTime="2021-04-20T21:20:35.7107168+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="NotExecuted" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="a036e7ee-f4ac-442d-827c-9c1103d6fd35">
|
||||||
|
<Output>
|
||||||
|
<StdOut>Refreshes a real token</StdOut>
|
||||||
|
<ErrorInfo>
|
||||||
|
<Message>Refreshes a real token</Message>
|
||||||
|
</ErrorInfo>
|
||||||
|
</Output>
|
||||||
|
</UnitTestResult>
|
||||||
|
<UnitTestResult executionId="4646c279-d3ea-4c5f-8d7e-bc474dff36a0" testId="78fb2759-932d-72a7-9e7e-ac929f17aa89" testName="FileLifecycleWorks" computerName="DORNY-PC" duration="00:00:00.0950000" startTime="2021-04-20T21:20:35.3941586+02:00" endTime="2021-04-20T21:20:35.4892394+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="4646c279-d3ea-4c5f-8d7e-bc474dff36a0" />
|
||||||
|
<UnitTestResult executionId="323ec250-debb-4974-a77c-b2e462205ee5" testId="4f4c9855-a72a-565f-2470-2a0c650d1bed" testName="ParseRealWorldGoogleRejectResponse" computerName="DORNY-PC" duration="00:00:00.0000001" startTime="2021-04-20T21:20:35.7597346+02:00" endTime="2021-04-20T21:20:35.7599106+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="323ec250-debb-4974-a77c-b2e462205ee5" />
|
||||||
|
<UnitTestResult executionId="689b6dee-0717-4c98-8311-8209865a4f64" testId="36be699c-4582-1e8a-20db-4c133825364b" testName="ReallyDoOpenAuthorizationPageInBrowser" computerName="DORNY-PC" startTime="2021-04-20T21:20:35.7105869+02:00" endTime="2021-04-20T21:20:35.7105879+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="NotExecuted" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="689b6dee-0717-4c98-8311-8209865a4f64">
|
||||||
|
<Output>
|
||||||
|
<StdOut>Opens the authorization page in the system browse, to get a real authorization-code</StdOut>
|
||||||
|
<ErrorInfo>
|
||||||
|
<Message>Opens the authorization page in the system browse, to get a real authorization-code</Message>
|
||||||
|
</ErrorInfo>
|
||||||
|
</Output>
|
||||||
|
</UnitTestResult>
|
||||||
|
<UnitTestResult executionId="bb6db51d-b3b6-4e49-aa85-191ae39f1037" testId="a9a707d5-0f10-eedc-d978-b6a36a0c8856" testName="CorrectlyConvertsSecureStringToUnicodeBytes" computerName="DORNY-PC" duration="00:00:00.0000001" startTime="2021-04-20T21:20:35.7727689+02:00" endTime="2021-04-20T21:20:35.7731239+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="bb6db51d-b3b6-4e49-aa85-191ae39f1037" />
|
||||||
|
<UnitTestResult executionId="17bf26a1-1224-4ece-91b3-c22a23c8aabd" testId="38cf86d6-f477-94c5-ae5a-bfe5908ca917" testName="ThrowsWithInvalidUsername" computerName="DORNY-PC" startTime="2021-04-20T21:20:35.6633708+02:00" endTime="2021-04-20T21:20:35.6633717+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="NotExecuted" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="17bf26a1-1224-4ece-91b3-c22a23c8aabd">
|
||||||
|
<Output>
|
||||||
|
<StdOut>Too many consecutive fails seems to block an FTP server.</StdOut>
|
||||||
|
<ErrorInfo>
|
||||||
|
<Message>Too many consecutive fails seems to block an FTP server.</Message>
|
||||||
|
</ErrorInfo>
|
||||||
|
</Output>
|
||||||
|
</UnitTestResult>
|
||||||
|
<UnitTestResult executionId="aa9960ae-203a-4e06-8fa5-72221f1f76ae" testId="c6442343-bfe7-0dd6-2de0-bf97d26d89ba" testName="BuildAuthorizationRequestUrlEscapesParameters" computerName="DORNY-PC" duration="00:00:00.0020000" startTime="2021-04-20T21:20:35.7475699+02:00" endTime="2021-04-20T21:20:35.7492413+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="aa9960ae-203a-4e06-8fa5-72221f1f76ae" />
|
||||||
|
<UnitTestResult executionId="cadbf9fb-9bfe-4193-9efa-cc02a33a13bd" testId="df7f153f-97b0-b127-aad8-16ec21c92a8b" testName="FetchTokenThrowsWithWrongState" computerName="DORNY-PC" duration="00:00:00.0010000" startTime="2021-04-20T21:20:35.7688159+02:00" endTime="2021-04-20T21:20:35.7696200+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="cadbf9fb-9bfe-4193-9efa-cc02a33a13bd" />
|
||||||
|
<UnitTestResult executionId="94dd40b9-b1ce-470c-8c0e-f6bbaa100a54" testId="c62f7f2c-529c-dc57-520f-bbd68be945a7" testName="BuildOAuth2AuthorizationRequestUrlWorks" computerName="DORNY-PC" duration="00:00:00.0010000" startTime="2021-04-20T21:20:35.7601913+02:00" endTime="2021-04-20T21:20:35.7608168+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="94dd40b9-b1ce-470c-8c0e-f6bbaa100a54" />
|
||||||
|
<UnitTestResult executionId="1bb8b762-a68d-4341-b1de-7e6f835a0711" testId="8a4a2c3a-671a-6167-0ea9-afbf6f12c47f" testName="AreEqualsWorksCorrectly" computerName="DORNY-PC" duration="00:00:00.0000001" startTime="2021-04-20T21:20:35.7723992+02:00" endTime="2021-04-20T21:20:35.7726078+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="1bb8b762-a68d-4341-b1de-7e6f835a0711" />
|
||||||
|
<UnitTestResult executionId="585b5a0f-9271-46a1-b8c3-0dae87316e94" testId="ad676737-0a35-dba6-3ba9-cec823374fda" testName="EncryptBeforeSerializationRespectsNullProperties" computerName="DORNY-PC" duration="00:00:00.0000001" startTime="2021-04-20T21:20:35.7773547+02:00" endTime="2021-04-20T21:20:35.7775198+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="585b5a0f-9271-46a1-b8c3-0dae87316e94" />
|
||||||
|
<UnitTestResult executionId="8c79c5a4-5298-40ae-95b7-546701afd83a" testId="7cfb656b-616e-5dab-c649-021521679abb" testName="ThrowsWithInvalidPassword" computerName="DORNY-PC" startTime="2021-04-20T21:20:35.6633473+02:00" endTime="2021-04-20T21:20:35.6633604+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="NotExecuted" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="8c79c5a4-5298-40ae-95b7-546701afd83a">
|
||||||
|
<Output>
|
||||||
|
<StdOut>Too many consecutive fails seems to block an FTP server.</StdOut>
|
||||||
|
<ErrorInfo>
|
||||||
|
<Message>Too many consecutive fails seems to block an FTP server.</Message>
|
||||||
|
</ErrorInfo>
|
||||||
|
</Output>
|
||||||
|
</UnitTestResult>
|
||||||
|
<UnitTestResult executionId="2a90bce3-7856-4e93-b710-ca7c3ce5b3dc" testId="ab91e3c1-6d51-74c8-f790-8c37d82e665d" testName="AreEqualWorksWithDifferentPassword" computerName="DORNY-PC" duration="00:00:00.0070000" startTime="2021-04-20T21:20:35.3580525+02:00" endTime="2021-04-20T21:20:35.3649197+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="2a90bce3-7856-4e93-b710-ca7c3ce5b3dc" />
|
||||||
|
<UnitTestResult executionId="913d29d6-2c2e-4fbe-9c8f-d98ee5b00423" testId="60635b8d-24f2-11d2-6983-d8dee19f4282" testName="AreEqualWorksWithNullDate" computerName="DORNY-PC" duration="00:00:00.0000001" startTime="2021-04-20T21:20:35.7417093+02:00" endTime="2021-04-20T21:20:35.7420941+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="913d29d6-2c2e-4fbe-9c8f-d98ee5b00423" />
|
||||||
|
<UnitTestResult executionId="4652ec4f-b2e8-4f57-8608-da377196ffda" testId="dba5c72e-5a00-8132-c3c9-ae0e981adf72" testName="SerializedXmlCanBeReadBack" computerName="DORNY-PC" duration="00:00:00.0160000" startTime="2021-04-20T21:20:35.8032746+02:00" endTime="2021-04-20T21:20:35.8188059+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="4652ec4f-b2e8-4f57-8608-da377196ffda" />
|
||||||
|
<UnitTestResult executionId="b3a2df60-79e7-4182-940c-95c638007796" testId="c5f9094a-f978-a711-21dd-69c261de1b9a" testName="BuildAuthorizationRequestUrlUsesCodeVerifier" computerName="DORNY-PC" duration="00:00:00.0010000" startTime="2021-04-20T21:20:35.7499237+02:00" endTime="2021-04-20T21:20:35.7506530+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="b3a2df60-79e7-4182-940c-95c638007796" />
|
||||||
|
<UnitTestResult executionId="119bdc21-2d3d-4ce0-bed8-1dfe806a6450" testId="06eb9298-0f08-8297-1ae0-b93dff5bc18d" testName="CorrectlyConvertsSecureStringToUtf8Bytes" computerName="DORNY-PC" duration="00:00:00.0000001" startTime="2021-04-20T21:20:35.7731349+02:00" endTime="2021-04-20T21:20:35.7732784+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="119bdc21-2d3d-4ce0-bed8-1dfe806a6450" />
|
||||||
|
<UnitTestResult executionId="dd41ab72-b415-46bf-aa6c-be2b038acc3a" testId="1c366be0-e44e-8e31-b7f2-e17b393d6db3" testName="ReallyDoRefreshToken" computerName="DORNY-PC" startTime="2021-04-20T21:20:35.4897989+02:00" endTime="2021-04-20T21:20:35.4898000+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="NotExecuted" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="dd41ab72-b415-46bf-aa6c-be2b038acc3a">
|
||||||
|
<Output>
|
||||||
|
<StdOut>Refreshes a real token</StdOut>
|
||||||
|
<ErrorInfo>
|
||||||
|
<Message>Refreshes a real token</Message>
|
||||||
|
</ErrorInfo>
|
||||||
|
</Output>
|
||||||
|
</UnitTestResult>
|
||||||
|
<UnitTestResult executionId="b6b90c5b-0b91-48b9-b160-eaae1740e609" testId="1bca23e2-1e33-fa8a-6cb7-6c20c96558d3" testName="ParsesUnknownErrorCodeCorrectly" computerName="DORNY-PC" duration="00:00:00.0000001" startTime="2021-04-20T21:20:35.7473520+02:00" endTime="2021-04-20T21:20:35.7474597+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="b6b90c5b-0b91-48b9-b160-eaae1740e609" />
|
||||||
|
<UnitTestResult executionId="f73fc410-415a-405e-89e2-9146b483ec2c" testId="67ebdd70-ceee-6efa-b3eb-07b0cb165f16" testName="AreEqualWorksWithSameContent" computerName="DORNY-PC" duration="00:00:00.0000001" startTime="2021-04-20T21:20:35.7421072+02:00" endTime="2021-04-20T21:20:35.7423337+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="f73fc410-415a-405e-89e2-9146b483ec2c" />
|
||||||
|
</Results>
|
||||||
|
<TestDefinitions>
|
||||||
|
<UnitTest name="ParseRealWorldGoogleSuccessResponse" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="e684ae1a-ebd6-8708-4f88-d018712c6d26">
|
||||||
|
<Execution id="4c6f6322-a4c6-4738-b068-1baf9c286a03" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.OAuth2.OAuth2UtilsTest" name="ParseRealWorldGoogleSuccessResponse" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="CorrectlyConvertsUnicodeBytesToSecureString" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="4af5858f-3f1a-a886-5596-87475d64aeb3">
|
||||||
|
<Execution id="7660f5b8-b4fa-4388-9118-e136c6490dd8" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.SecureStringExtensionsTest" name="CorrectlyConvertsUnicodeBytesToSecureString" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="AreEqualsWorksCorrectly" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="8a4a2c3a-671a-6167-0ea9-afbf6f12c47f">
|
||||||
|
<Execution id="1bb8b762-a68d-4341-b1de-7e6f835a0711" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.SecureStringExtensionsTest" name="AreEqualsWorksCorrectly" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="FileLifecycleWorks" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="89dd1b67-c0ca-dcc6-ca42-c4f3660c0208">
|
||||||
|
<Execution id="7c73d2a6-34a5-400d-8163-40375210062f" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.CloudStorageProviders.FtpCloudStorageClientTest" name="FileLifecycleWorks" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="ChoosesCorrectUrlForGmxNetEmail" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="d941f923-cd04-ee0a-427c-b81e14aafa3d">
|
||||||
|
<Execution id="093b7fc9-4477-4bcf-9443-6cc760333b4a" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.CloudStorageProviders.GmxCloudStorageClientTest" name="ChoosesCorrectUrlForGmxNetEmail" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="SerializedJsonDoesNotContainNullProperties" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="4340b799-0666-32b6-4fdd-1daf8a626bc7">
|
||||||
|
<Execution id="a9e342c2-bc62-4b01-835b-842bec9f2d4c" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.SerializeableCloudStorageCredentialsTest" name="SerializedJsonDoesNotContainNullProperties" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="BuildOAuth2AuthorizationRequestUrlWorks" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="c62f7f2c-529c-dc57-520f-bbd68be945a7">
|
||||||
|
<Execution id="94dd40b9-b1ce-470c-8c0e-f6bbaa100a54" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.OAuth2CloudStorageClientTest" name="BuildOAuth2AuthorizationRequestUrlWorks" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="FetchTokenThrowsWithWrongState" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="df7f153f-97b0-b127-aad8-16ec21c92a8b">
|
||||||
|
<Execution id="cadbf9fb-9bfe-4193-9efa-cc02a33a13bd" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.OAuth2CloudStorageClientTest" name="FetchTokenThrowsWithWrongState" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="BuildAuthorizationRequestUrlUsesCodeVerifier" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="c5f9094a-f978-a711-21dd-69c261de1b9a">
|
||||||
|
<Execution id="b3a2df60-79e7-4182-940c-95c638007796" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.OAuth2.OAuth2UtilsTest" name="BuildAuthorizationRequestUrlUsesCodeVerifier" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="ReallyDoFetchToken" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="ce42ac62-8706-8922-cf93-ac01f045e42d">
|
||||||
|
<Execution id="eeeeda37-81c3-4432-93c3-6197cc86aec4" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.CloudStorageProviders.OnedriveCloudStorageClientTest" name="ReallyDoFetchToken" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="ThrowsWithInvalidUrl" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="ca777d22-3b0f-e952-bd8a-c5660245a81f">
|
||||||
|
<Execution id="99ffb4ca-843c-48e2-ba37-90424746c53f" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.CloudStorageProviders.FtpCloudStorageClientTest" name="ThrowsWithInvalidUrl" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="SerializedXmlDoesNotContainNullProperties" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="767acdfc-0e73-c887-803e-31c8aaa97dde">
|
||||||
|
<Execution id="ea83c2aa-3b60-4ddc-bc14-f7e8c0f4cc2a" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.SerializeableCloudStorageCredentialsTest" name="SerializedXmlDoesNotContainNullProperties" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="CorrectlyConvertsStringToSecureString" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="64d76ddb-a88f-9c22-6ed0-af3ecb98ffb9">
|
||||||
|
<Execution id="aa3eef6e-4555-49bd-a1fa-ef6f663a5d22" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.CloudStorageCredentialsTest" name="CorrectlyConvertsStringToSecureString" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="FetchTokenCanInterpretGoogleResponse" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="3640390a-9ea3-e873-ecaf-b1f0acce39dc">
|
||||||
|
<Execution id="0d4f644d-4bfc-49e5-9983-56d071104b86" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.OAuth2CloudStorageClientTest" name="FetchTokenCanInterpretGoogleResponse" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="ReallyDoOpenAuthorizationPageInBrowser" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="36be699c-4582-1e8a-20db-4c133825364b">
|
||||||
|
<Execution id="689b6dee-0717-4c98-8311-8209865a4f64" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.CloudStorageProviders.GoogleCloudStorageClientTest" name="ReallyDoOpenAuthorizationPageInBrowser" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="CorrectlyConvertsUtf8BytesToSecureString" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="a436d607-b2be-f301-d56f-50716e7b321a">
|
||||||
|
<Execution id="52fca9fd-4e45-4f44-9857-f267268b0924" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.SecureStringExtensionsTest" name="CorrectlyConvertsUtf8BytesToSecureString" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="BuildAuthorizationRequestUrlLeavesOutOptionalParameters" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="50701c3a-d1b9-0423-26e6-4be52cf1d5f0">
|
||||||
|
<Execution id="0e32eb27-9a2c-497d-8d96-4852e04f9247" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.OAuth2.OAuth2UtilsTest" name="BuildAuthorizationRequestUrlLeavesOutOptionalParameters" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="ParsesAllErrorCodesCorrectly" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="e3bf520c-cf79-f90b-dc21-9c25e58a369d">
|
||||||
|
<Execution id="ca75b323-cd43-4a26-9e6f-fa3650cc9eca" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.OAuth2.AuthorizationResponseErrorTest" name="ParsesAllErrorCodesCorrectly" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="SerializedDatacontractCanBeReadBack" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="75ed4b0d-8eff-6a45-b5e4-0db6070c60bb">
|
||||||
|
<Execution id="8073954d-cee8-455e-a86d-97e8a4ec614d" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.SerializeableCloudStorageCredentialsTest" name="SerializedDatacontractCanBeReadBack" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="BuildAuthorizationRequestUrlUsesAllParameters" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="275ce8fa-d4c1-63f1-9add-641a70fb73e6">
|
||||||
|
<Execution id="e7b019dd-c6ee-40b6-91d9-c7f4bfb03f55" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.OAuth2.OAuth2UtilsTest" name="BuildAuthorizationRequestUrlUsesAllParameters" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="SecureSslConnectionWorks" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="432b7e9a-53e9-d7c7-531a-b22f10d8a0f5">
|
||||||
|
<Execution id="5fbd98cc-68bb-4536-8a46-43b979e213a6" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.CloudStorageProviders.FtpCloudStorageClientTest" name="SecureSslConnectionWorks" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="AreEqualWorksWithSameContent" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="c6bece37-31ea-7f18-10f5-6b96a09f4154">
|
||||||
|
<Execution id="cd51e1e5-acf8-4a63-a556-0dfd4d99b491" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.CloudStorageCredentialsTest" name="AreEqualWorksWithSameContent" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="FileLifecycleWorks" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="11d38d36-4090-e9ae-0dfe-52c8ffa930a6">
|
||||||
|
<Execution id="0e832195-44c2-41d5-931b-fa2dc4d4655f" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.CloudStorageProviders.OnedriveCloudStorageClientTest" name="FileLifecycleWorks" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="SerializedDatacontractDoesNotContainPlaintextData" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="9da3226a-a96e-91f6-c5b6-b3102b5b332a">
|
||||||
|
<Execution id="01ecb439-d050-4ac9-95c9-a7378091bcc5" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.SerializeableCloudStorageCredentialsTest" name="SerializedDatacontractDoesNotContainPlaintextData" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="RefreshTokenCanInterpretGoogleResponse" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="a4f5c6bf-c950-cfa4-1f50-3ce62d833293">
|
||||||
|
<Execution id="5e0c0e75-9fc9-40ce-ba0a-9c2a0887bdac" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.OAuth2CloudStorageClientTest" name="RefreshTokenCanInterpretGoogleResponse" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="ThrowsWithInvalidUsername" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="38cf86d6-f477-94c5-ae5a-bfe5908ca917">
|
||||||
|
<Execution id="17bf26a1-1224-4ece-91b3-c22a23c8aabd" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.CloudStorageProviders.FtpCloudStorageClientTest" name="ThrowsWithInvalidUsername" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="ReallyDoRefreshToken" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="1c366be0-e44e-8e31-b7f2-e17b393d6db3">
|
||||||
|
<Execution id="dd41ab72-b415-46bf-aa6c-be2b038acc3a" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.CloudStorageProviders.DropboxCloudStorageClientTest" name="ReallyDoRefreshToken" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="BuildAuthorizationRequestUrlEscapesParameters" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="c6442343-bfe7-0dd6-2de0-bf97d26d89ba">
|
||||||
|
<Execution id="aa9960ae-203a-4e06-8fa5-72221f1f76ae" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.OAuth2.OAuth2UtilsTest" name="BuildAuthorizationRequestUrlEscapesParameters" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="CorrectlyConvertsStringToSecureString" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="916a4c11-6ebe-26db-3769-b9df2051743c">
|
||||||
|
<Execution id="cd601b6c-919f-4585-b5e6-d220a0ba17be" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.SecureStringExtensionsTest" name="CorrectlyConvertsStringToSecureString" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="AreEqualWorksWithDifferentPassword" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="ab91e3c1-6d51-74c8-f790-8c37d82e665d">
|
||||||
|
<Execution id="2a90bce3-7856-4e93-b710-ca7c3ce5b3dc" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.CloudStorageCredentialsTest" name="AreEqualWorksWithDifferentPassword" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="ParseGmxWebdavResponseCorrectly" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="819198e9-75c1-9681-32e4-669dfa258e8a">
|
||||||
|
<Execution id="14edf9a2-4d91-4d49-bbee-0400d51f8950" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.CloudStorageProviders.WebdavCloudStorageClientTest" name="ParseGmxWebdavResponseCorrectly" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="ThrowsAccessDeniedExceptionWithInvalidToken" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="5fa805b8-ec79-3c7c-8e87-3db6dc58f83e">
|
||||||
|
<Execution id="06a2ec7f-dc87-4ee9-8394-fd650312a2ab" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.CloudStorageProviders.DropboxCloudStorageClientTest" name="ThrowsAccessDeniedExceptionWithInvalidToken" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="SetExpiryDateBySecondsWorks" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="5d03904b-0ce2-14e9-560e-6097c6faa283">
|
||||||
|
<Execution id="5c34792d-1eb8-4798-b9f5-a37a5601d982" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.CloudStorageTokenTest" name="SetExpiryDateBySecondsWorks" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="BuildAuthorizationRequestUrlThrowsWithMissingRedirectUrlForTokenFlow" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="f7c94d67-56c9-6418-8a42-ddc79dc57ea2">
|
||||||
|
<Execution id="ddc1f371-da00-4b39-bc51-e4467d1f519d" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.OAuth2.OAuth2UtilsTest" name="BuildAuthorizationRequestUrlThrowsWithMissingRedirectUrlForTokenFlow" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="CorrectlyConvertsSecureStringToUnicodeBytes" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="a9a707d5-0f10-eedc-d978-b6a36a0c8856">
|
||||||
|
<Execution id="bb6db51d-b3b6-4e49-aa85-191ae39f1037" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.SecureStringExtensionsTest" name="CorrectlyConvertsSecureStringToUnicodeBytes" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="EncryptBeforeSerializationProtectsAllNecessaryProperties" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="951f28a9-26ae-8567-a07e-eef0e1def226">
|
||||||
|
<Execution id="414673ca-5d78-4202-842b-7f13e7b40f2b" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.SerializeableCloudStorageCredentialsTest" name="EncryptBeforeSerializationProtectsAllNecessaryProperties" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="AreEqualWorksWithSameContent" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="67ebdd70-ceee-6efa-b3eb-07b0cb165f16">
|
||||||
|
<Execution id="f73fc410-415a-405e-89e2-9146b483ec2c" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.CloudStorageTokenTest" name="AreEqualWorksWithSameContent" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="ReallyDoRefreshToken" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="28e75f1f-48b9-972a-3113-38add5d40440">
|
||||||
|
<Execution id="df1e2af3-79ce-4ddc-87e9-aaee93bb557b" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.CloudStorageProviders.OnedriveCloudStorageClientTest" name="ReallyDoRefreshToken" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="SerializedJsonCanBeReadBack" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="e22320ba-05cc-579d-8c7d-c693d9b6406e">
|
||||||
|
<Execution id="426d15ea-cd3e-4e87-8e2a-14502afbd98f" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.SerializeableCloudStorageCredentialsTest" name="SerializedJsonCanBeReadBack" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="ReallyDoFetchToken" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="2281e288-4c7c-bbf6-5b39-72098edf13cc">
|
||||||
|
<Execution id="30222c71-5fd6-48d2-ac28-fcd942c4ed39" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.CloudStorageProviders.DropboxCloudStorageClientTest" name="ReallyDoFetchToken" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="SerializedXmlDoesNotContainPlaintextData" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="49a69aa8-9346-0600-d464-81784b9e612b">
|
||||||
|
<Execution id="6234ffeb-0f16-4775-9eb0-759232f07cb4" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.SerializeableCloudStorageCredentialsTest" name="SerializedXmlDoesNotContainPlaintextData" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="ParseRealWorldDropboxRejectResponse" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="89e1d4aa-9217-7c34-fc4d-99ef9efe7a7d">
|
||||||
|
<Execution id="0a807015-4876-4110-888e-ba37dfcce38a" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.OAuth2.OAuth2UtilsTest" name="ParseRealWorldDropboxRejectResponse" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="ParsesUnknownErrorCodeCorrectly" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="1bca23e2-1e33-fa8a-6cb7-6c20c96558d3">
|
||||||
|
<Execution id="b6b90c5b-0b91-48b9-b160-eaae1740e609" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.OAuth2.AuthorizationResponseErrorTest" name="ParsesUnknownErrorCodeCorrectly" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="ValidateRejectsInvalidCredentials" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="c262190d-9c9e-6be3-5e5d-634c12813410">
|
||||||
|
<Execution id="ed88606c-3b41-49bc-ae3f-f226d9464261" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.CloudStorageCredentialsTest" name="ValidateRejectsInvalidCredentials" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="ReallyDoOpenAuthorizationPageInBrowser" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="13e39882-2195-72c3-053f-9cff2ec1d67d">
|
||||||
|
<Execution id="ed9923ba-9af6-4558-b34e-f49eb0456eff" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.CloudStorageProviders.OnedriveCloudStorageClientTest" name="ReallyDoOpenAuthorizationPageInBrowser" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="ThrowsWithHttpInsteadOfFtp" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="736ef283-7bdf-6b3e-0caf-6c21f948cdc6">
|
||||||
|
<Execution id="1804b7c8-7729-426c-91d9-691ce82a1d7a" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.CloudStorageProviders.FtpCloudStorageClientTest" name="ThrowsWithHttpInsteadOfFtp" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="FileLifecycleWorks" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="b251efa4-be1f-5ed7-99ba-5339059780ec">
|
||||||
|
<Execution id="80c55db9-4d42-4fd2-a48c-22ad4cd39105" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.CloudStorageProviders.WebdavCloudStorageClientTest" name="FileLifecycleWorks" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="CorrectlyConvertsSecureStringToString" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="cc085a0d-1f67-be85-d187-865a89737f10">
|
||||||
|
<Execution id="705cbcf0-24cb-427d-848e-ed2970b0ab58" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.CloudStorageCredentialsTest" name="CorrectlyConvertsSecureStringToString" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="DecryptAfterDesrializationCanReadAllPropertiesBack" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="30bd1939-4032-847c-f269-bb1757915f16">
|
||||||
|
<Execution id="0d72415d-fdfd-4cc2-b812-74abc7818f4e" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.SerializeableCloudStorageCredentialsTest" name="DecryptAfterDesrializationCanReadAllPropertiesBack" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="ThrowsWithInvalidUsername" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="61b1c53a-6b35-a0bd-cf9f-996f45b4c761">
|
||||||
|
<Execution id="502e3c21-4407-4b5a-85ff-ed1eb355da72" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.CloudStorageProviders.WebdavCloudStorageClientTest" name="ThrowsWithInvalidUsername" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="NeedsRefreshReturnsTrueIfExpired" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="de4ced25-0268-f393-cea0-bb04d4c5a29e">
|
||||||
|
<Execution id="6f544caa-1014-485e-95b2-60c343c818cb" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.CloudStorageTokenTest" name="NeedsRefreshReturnsTrueIfExpired" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="ReallyDoFetchToken" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="176fe880-e16d-469b-88c8-2560bc54254b">
|
||||||
|
<Execution id="0b40b822-b7ff-400e-8c5b-26717502ad01" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.CloudStorageProviders.GoogleCloudStorageClientTest" name="ReallyDoFetchToken" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="ReallyDoOpenAuthorizationPageInBrowser" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="5dab3a75-ff5f-1e46-20cf-bc072154bb33">
|
||||||
|
<Execution id="83d32025-8d5e-4a58-92b3-e797e4ea3bfa" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.CloudStorageProviders.DropboxCloudStorageClientTest" name="ReallyDoOpenAuthorizationPageInBrowser" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="ParsesNullErrorCodeCorrectly" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="ad03a66d-a9e8-9ade-31df-92fa6cac714b">
|
||||||
|
<Execution id="0c9508da-1207-4eb3-891c-e66e5e768788" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.OAuth2.AuthorizationResponseErrorTest" name="ParsesNullErrorCodeCorrectly" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="ReallyDoRefreshToken" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="da7235ad-2f42-43de-0593-6a35cf28a618">
|
||||||
|
<Execution id="a036e7ee-f4ac-442d-827c-9c1103d6fd35" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.CloudStorageProviders.GoogleCloudStorageClientTest" name="ReallyDoRefreshToken" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="SetExpiryDateBySecondsWorksWithVeryShortPeriod" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="be9e3070-8b2d-4cc8-2595-fb57d16c6cdd">
|
||||||
|
<Execution id="b2c31d72-0f6f-4fd3-aadf-519c526ba627" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.CloudStorageTokenTest" name="SetExpiryDateBySecondsWorksWithVeryShortPeriod" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="SetExpiryDateBySecondsWorksWithNull" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="22de815b-16af-03c5-d819-7c8851c1da3c">
|
||||||
|
<Execution id="1624ee85-3987-47af-9822-074bcbca9106" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.CloudStorageTokenTest" name="SetExpiryDateBySecondsWorksWithNull" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="EncryptBeforeSerializationRespectsNullProperties" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="ad676737-0a35-dba6-3ba9-cec823374fda">
|
||||||
|
<Execution id="585b5a0f-9271-46a1-b8c3-0dae87316e94" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.SerializeableCloudStorageCredentialsTest" name="EncryptBeforeSerializationRespectsNullProperties" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="CorrectlyConvertsSecureStringToString" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="72ed0c35-21ea-7829-893f-73c9214b4f4a">
|
||||||
|
<Execution id="fa2b22e8-c121-4f97-8849-4cbe45734f9f" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.SecureStringExtensionsTest" name="CorrectlyConvertsSecureStringToString" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="SerializedJsonDoesNotContainPlaintextData" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="49ceb249-d1ca-f3dc-41f8-28a41637f4d7">
|
||||||
|
<Execution id="4401f9ea-5a99-4275-a333-18655e9517ce" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.SerializeableCloudStorageCredentialsTest" name="SerializedJsonDoesNotContainPlaintextData" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="FetchTokenReturnsNullForDeniedAccess" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="a500e09e-b66a-a804-eaae-a237a3b689b9">
|
||||||
|
<Execution id="e0f60156-4a28-4d04-8336-040ffe215e8f" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.OAuth2CloudStorageClientTest" name="FetchTokenReturnsNullForDeniedAccess" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="ThrowsWithInvalidPassword" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="7cfb656b-616e-5dab-c649-021521679abb">
|
||||||
|
<Execution id="8c79c5a4-5298-40ae-95b7-546701afd83a" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.CloudStorageProviders.FtpCloudStorageClientTest" name="ThrowsWithInvalidPassword" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="CorrectlyConvertsSecureStringToUtf8Bytes" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="06eb9298-0f08-8297-1ae0-b93dff5bc18d">
|
||||||
|
<Execution id="119bdc21-2d3d-4ce0-bed8-1dfe806a6450" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.SecureStringExtensionsTest" name="CorrectlyConvertsSecureStringToUtf8Bytes" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="ValidateAcceptsValidCredentials" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="034a71d4-f7f9-43e6-fc0a-59a23ef2cd9b">
|
||||||
|
<Execution id="f33ac19b-8781-4127-a232-7c7a2e6d6c32" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.CloudStorageCredentialsTest" name="ValidateAcceptsValidCredentials" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="SerializedDatacontractDoesNotContainNullProperties" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="fbed828f-38a9-0e13-af25-e507fd37c36e">
|
||||||
|
<Execution id="60e6f439-58a9-40ac-b6f1-8120f2f04c87" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.SerializeableCloudStorageCredentialsTest" name="SerializedDatacontractDoesNotContainNullProperties" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="ParseRealWorldDropboxSuccessResponse" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="6d6d9696-e968-4583-999f-f73ff1b5b40e">
|
||||||
|
<Execution id="b4b53ef3-c8be-4bcd-8ec3-84fef1e42440" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.OAuth2.OAuth2UtilsTest" name="ParseRealWorldDropboxSuccessResponse" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="SanitizeCredentials_ChangesInvalidPrefix" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="ebe21dff-4309-2b2e-75d7-dd55a44ce033">
|
||||||
|
<Execution id="208fc10c-948d-4641-b459-a3249b341dcb" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.CloudStorageProviders.FtpCloudStorageClientTest" name="SanitizeCredentials_ChangesInvalidPrefix" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="AreEqualWorksWithNullDate" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="60635b8d-24f2-11d2-6983-d8dee19f4282">
|
||||||
|
<Execution id="913d29d6-2c2e-4fbe-9c8f-d98ee5b00423" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.CloudStorageTokenTest" name="AreEqualWorksWithNullDate" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="DecryptAfterDesrializationRespectsNullProperties" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="f43fb36c-bb2f-88d6-fd89-bda7c22b6c91">
|
||||||
|
<Execution id="a1f2867a-47fb-49db-901b-7114af3845bd" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.SerializeableCloudStorageCredentialsTest" name="DecryptAfterDesrializationRespectsNullProperties" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="NeedsRefreshReturnsTrueIfNoExpirationDate" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="537e4579-87e2-7283-ca3f-eb8ddb93ae39">
|
||||||
|
<Execution id="f48f72ef-ec73-4839-b314-7d22a3cfec69" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.CloudStorageTokenTest" name="NeedsRefreshReturnsTrueIfNoExpirationDate" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="FileLifecycleWorks" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="3fa575d3-8c64-4e79-fa65-acc9170b3c5a">
|
||||||
|
<Execution id="4536485e-ee25-4d61-9353-14a984535b8e" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.CloudStorageProviders.GoogleCloudStorageClientTest" name="FileLifecycleWorks" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="SerializedXmlCanBeReadBack" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="dba5c72e-5a00-8132-c3c9-ae0e981adf72">
|
||||||
|
<Execution id="4652ec4f-b2e8-4f57-8608-da377196ffda" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.SerializeableCloudStorageCredentialsTest" name="SerializedXmlCanBeReadBack" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="NeedsRefreshReturnsFalseForTokenFlow" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="ebbd2ea6-e642-f74f-abc0-f79e1e19896c">
|
||||||
|
<Execution id="29177f57-4100-4d14-9def-92aee48433ab" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.CloudStorageTokenTest" name="NeedsRefreshReturnsFalseForTokenFlow" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="ThrowsWithInvalidPath" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="c04d2194-9d0c-6f49-84c9-4d2691f2d076">
|
||||||
|
<Execution id="a56e0451-e540-43ee-b30c-1948a059cbe7" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.CloudStorageProviders.WebdavCloudStorageClientTest" name="ThrowsWithInvalidPath" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="ParseStratoWebdavResponseCorrectly" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="e740f944-23a8-ca0e-606c-a36651ed4b4f">
|
||||||
|
<Execution id="998a6ba8-0502-4c0f-8ca8-f4ee77326d18" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.CloudStorageProviders.WebdavCloudStorageClientTest" name="ParseStratoWebdavResponseCorrectly" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="ChoosesCorrectUrlForGmxComEmail" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="e9788947-b431-c470-eb25-13f39858c423">
|
||||||
|
<Execution id="1c925dd1-edfa-46f1-8b9b-d9ce8cbf2635" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.CloudStorageProviders.GmxCloudStorageClientTest" name="ChoosesCorrectUrlForGmxComEmail" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="FileLifecycleWorks" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="78fb2759-932d-72a7-9e7e-ac929f17aa89">
|
||||||
|
<Execution id="4646c279-d3ea-4c5f-8d7e-bc474dff36a0" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.CloudStorageProviders.DropboxCloudStorageClientTest" name="FileLifecycleWorks" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="NeedsRefreshReturnsFalseIfNotExpired" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="fa59d18c-2c0d-3f7a-7b89-8b05c8530c98">
|
||||||
|
<Execution id="8a597631-5dd4-4119-a2e8-c86478191d1e" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.CloudStorageTokenTest" name="NeedsRefreshReturnsFalseIfNotExpired" />
|
||||||
|
</UnitTest>
|
||||||
|
<UnitTest name="ParseRealWorldGoogleRejectResponse" storage="c:\users\michal\workspace\github\silentnotes\bin\vanillacloudstorageclienttest\netcoreapp2.1\vanillacloudstorageclienttest.dll" id="4f4c9855-a72a-565f-2470-2a0c650d1bed">
|
||||||
|
<Execution id="323ec250-debb-4974-a77c-b2e462205ee5" />
|
||||||
|
<TestMethod codeBase="C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll" adapterTypeName="executor://nunit3testexecutor/" className="VanillaCloudStorageClientTest.OAuth2.OAuth2UtilsTest" name="ParseRealWorldGoogleRejectResponse" />
|
||||||
|
</UnitTest>
|
||||||
|
</TestDefinitions>
|
||||||
|
<TestEntries>
|
||||||
|
<TestEntry testId="a500e09e-b66a-a804-eaae-a237a3b689b9" executionId="e0f60156-4a28-4d04-8336-040ffe215e8f" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="49ceb249-d1ca-f3dc-41f8-28a41637f4d7" executionId="4401f9ea-5a99-4275-a333-18655e9517ce" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="5dab3a75-ff5f-1e46-20cf-bc072154bb33" executionId="83d32025-8d5e-4a58-92b3-e797e4ea3bfa" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="89dd1b67-c0ca-dcc6-ca42-c4f3660c0208" executionId="7c73d2a6-34a5-400d-8163-40375210062f" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="916a4c11-6ebe-26db-3769-b9df2051743c" executionId="cd601b6c-919f-4585-b5e6-d220a0ba17be" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="034a71d4-f7f9-43e6-fc0a-59a23ef2cd9b" executionId="f33ac19b-8781-4127-a232-7c7a2e6d6c32" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="f7c94d67-56c9-6418-8a42-ddc79dc57ea2" executionId="ddc1f371-da00-4b39-bc51-e4467d1f519d" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="6d6d9696-e968-4583-999f-f73ff1b5b40e" executionId="b4b53ef3-c8be-4bcd-8ec3-84fef1e42440" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="275ce8fa-d4c1-63f1-9add-641a70fb73e6" executionId="e7b019dd-c6ee-40b6-91d9-c7f4bfb03f55" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="fbed828f-38a9-0e13-af25-e507fd37c36e" executionId="60e6f439-58a9-40ac-b6f1-8120f2f04c87" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="cc085a0d-1f67-be85-d187-865a89737f10" executionId="705cbcf0-24cb-427d-848e-ed2970b0ab58" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="4340b799-0666-32b6-4fdd-1daf8a626bc7" executionId="a9e342c2-bc62-4b01-835b-842bec9f2d4c" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="75ed4b0d-8eff-6a45-b5e4-0db6070c60bb" executionId="8073954d-cee8-455e-a86d-97e8a4ec614d" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="28e75f1f-48b9-972a-3113-38add5d40440" executionId="df1e2af3-79ce-4ddc-87e9-aaee93bb557b" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="e740f944-23a8-ca0e-606c-a36651ed4b4f" executionId="998a6ba8-0502-4c0f-8ca8-f4ee77326d18" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="767acdfc-0e73-c887-803e-31c8aaa97dde" executionId="ea83c2aa-3b60-4ddc-bc14-f7e8c0f4cc2a" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="ca777d22-3b0f-e952-bd8a-c5660245a81f" executionId="99ffb4ca-843c-48e2-ba37-90424746c53f" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="fa59d18c-2c0d-3f7a-7b89-8b05c8530c98" executionId="8a597631-5dd4-4119-a2e8-c86478191d1e" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="61b1c53a-6b35-a0bd-cf9f-996f45b4c761" executionId="502e3c21-4407-4b5a-85ff-ed1eb355da72" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="736ef283-7bdf-6b3e-0caf-6c21f948cdc6" executionId="1804b7c8-7729-426c-91d9-691ce82a1d7a" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="49a69aa8-9346-0600-d464-81784b9e612b" executionId="6234ffeb-0f16-4775-9eb0-759232f07cb4" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="c04d2194-9d0c-6f49-84c9-4d2691f2d076" executionId="a56e0451-e540-43ee-b30c-1948a059cbe7" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="50701c3a-d1b9-0423-26e6-4be52cf1d5f0" executionId="0e32eb27-9a2c-497d-8d96-4852e04f9247" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="ebe21dff-4309-2b2e-75d7-dd55a44ce033" executionId="208fc10c-948d-4641-b459-a3249b341dcb" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="4af5858f-3f1a-a886-5596-87475d64aeb3" executionId="7660f5b8-b4fa-4388-9118-e136c6490dd8" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="537e4579-87e2-7283-ca3f-eb8ddb93ae39" executionId="f48f72ef-ec73-4839-b314-7d22a3cfec69" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="89e1d4aa-9217-7c34-fc4d-99ef9efe7a7d" executionId="0a807015-4876-4110-888e-ba37dfcce38a" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="e22320ba-05cc-579d-8c7d-c693d9b6406e" executionId="426d15ea-cd3e-4e87-8e2a-14502afbd98f" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="d941f923-cd04-ee0a-427c-b81e14aafa3d" executionId="093b7fc9-4477-4bcf-9443-6cc760333b4a" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="5fa805b8-ec79-3c7c-8e87-3db6dc58f83e" executionId="06a2ec7f-dc87-4ee9-8394-fd650312a2ab" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="9da3226a-a96e-91f6-c5b6-b3102b5b332a" executionId="01ecb439-d050-4ac9-95c9-a7378091bcc5" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="a4f5c6bf-c950-cfa4-1f50-3ce62d833293" executionId="5e0c0e75-9fc9-40ce-ba0a-9c2a0887bdac" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="819198e9-75c1-9681-32e4-669dfa258e8a" executionId="14edf9a2-4d91-4d49-bbee-0400d51f8950" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="a436d607-b2be-f301-d56f-50716e7b321a" executionId="52fca9fd-4e45-4f44-9857-f267268b0924" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="64d76ddb-a88f-9c22-6ed0-af3ecb98ffb9" executionId="aa3eef6e-4555-49bd-a1fa-ef6f663a5d22" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="c6bece37-31ea-7f18-10f5-6b96a09f4154" executionId="cd51e1e5-acf8-4a63-a556-0dfd4d99b491" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="72ed0c35-21ea-7829-893f-73c9214b4f4a" executionId="fa2b22e8-c121-4f97-8849-4cbe45734f9f" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="ad03a66d-a9e8-9ade-31df-92fa6cac714b" executionId="0c9508da-1207-4eb3-891c-e66e5e768788" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="e9788947-b431-c470-eb25-13f39858c423" executionId="1c925dd1-edfa-46f1-8b9b-d9ce8cbf2635" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="b251efa4-be1f-5ed7-99ba-5339059780ec" executionId="80c55db9-4d42-4fd2-a48c-22ad4cd39105" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="22de815b-16af-03c5-d819-7c8851c1da3c" executionId="1624ee85-3987-47af-9822-074bcbca9106" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="c262190d-9c9e-6be3-5e5d-634c12813410" executionId="ed88606c-3b41-49bc-ae3f-f226d9464261" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="951f28a9-26ae-8567-a07e-eef0e1def226" executionId="414673ca-5d78-4202-842b-7f13e7b40f2b" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="f43fb36c-bb2f-88d6-fd89-bda7c22b6c91" executionId="a1f2867a-47fb-49db-901b-7114af3845bd" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="2281e288-4c7c-bbf6-5b39-72098edf13cc" executionId="30222c71-5fd6-48d2-ac28-fcd942c4ed39" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="13e39882-2195-72c3-053f-9cff2ec1d67d" executionId="ed9923ba-9af6-4558-b34e-f49eb0456eff" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="30bd1939-4032-847c-f269-bb1757915f16" executionId="0d72415d-fdfd-4cc2-b812-74abc7818f4e" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="432b7e9a-53e9-d7c7-531a-b22f10d8a0f5" executionId="5fbd98cc-68bb-4536-8a46-43b979e213a6" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="ebbd2ea6-e642-f74f-abc0-f79e1e19896c" executionId="29177f57-4100-4d14-9def-92aee48433ab" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="3640390a-9ea3-e873-ecaf-b1f0acce39dc" executionId="0d4f644d-4bfc-49e5-9983-56d071104b86" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="de4ced25-0268-f393-cea0-bb04d4c5a29e" executionId="6f544caa-1014-485e-95b2-60c343c818cb" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="e684ae1a-ebd6-8708-4f88-d018712c6d26" executionId="4c6f6322-a4c6-4738-b068-1baf9c286a03" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="3fa575d3-8c64-4e79-fa65-acc9170b3c5a" executionId="4536485e-ee25-4d61-9353-14a984535b8e" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="5d03904b-0ce2-14e9-560e-6097c6faa283" executionId="5c34792d-1eb8-4798-b9f5-a37a5601d982" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="be9e3070-8b2d-4cc8-2595-fb57d16c6cdd" executionId="b2c31d72-0f6f-4fd3-aadf-519c526ba627" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="176fe880-e16d-469b-88c8-2560bc54254b" executionId="0b40b822-b7ff-400e-8c5b-26717502ad01" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="11d38d36-4090-e9ae-0dfe-52c8ffa930a6" executionId="0e832195-44c2-41d5-931b-fa2dc4d4655f" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="e3bf520c-cf79-f90b-dc21-9c25e58a369d" executionId="ca75b323-cd43-4a26-9e6f-fa3650cc9eca" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="ce42ac62-8706-8922-cf93-ac01f045e42d" executionId="eeeeda37-81c3-4432-93c3-6197cc86aec4" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="da7235ad-2f42-43de-0593-6a35cf28a618" executionId="a036e7ee-f4ac-442d-827c-9c1103d6fd35" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="78fb2759-932d-72a7-9e7e-ac929f17aa89" executionId="4646c279-d3ea-4c5f-8d7e-bc474dff36a0" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="4f4c9855-a72a-565f-2470-2a0c650d1bed" executionId="323ec250-debb-4974-a77c-b2e462205ee5" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="36be699c-4582-1e8a-20db-4c133825364b" executionId="689b6dee-0717-4c98-8311-8209865a4f64" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="a9a707d5-0f10-eedc-d978-b6a36a0c8856" executionId="bb6db51d-b3b6-4e49-aa85-191ae39f1037" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="38cf86d6-f477-94c5-ae5a-bfe5908ca917" executionId="17bf26a1-1224-4ece-91b3-c22a23c8aabd" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="c6442343-bfe7-0dd6-2de0-bf97d26d89ba" executionId="aa9960ae-203a-4e06-8fa5-72221f1f76ae" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="df7f153f-97b0-b127-aad8-16ec21c92a8b" executionId="cadbf9fb-9bfe-4193-9efa-cc02a33a13bd" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="c62f7f2c-529c-dc57-520f-bbd68be945a7" executionId="94dd40b9-b1ce-470c-8c0e-f6bbaa100a54" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="8a4a2c3a-671a-6167-0ea9-afbf6f12c47f" executionId="1bb8b762-a68d-4341-b1de-7e6f835a0711" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="ad676737-0a35-dba6-3ba9-cec823374fda" executionId="585b5a0f-9271-46a1-b8c3-0dae87316e94" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="7cfb656b-616e-5dab-c649-021521679abb" executionId="8c79c5a4-5298-40ae-95b7-546701afd83a" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="ab91e3c1-6d51-74c8-f790-8c37d82e665d" executionId="2a90bce3-7856-4e93-b710-ca7c3ce5b3dc" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="60635b8d-24f2-11d2-6983-d8dee19f4282" executionId="913d29d6-2c2e-4fbe-9c8f-d98ee5b00423" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="dba5c72e-5a00-8132-c3c9-ae0e981adf72" executionId="4652ec4f-b2e8-4f57-8608-da377196ffda" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="c5f9094a-f978-a711-21dd-69c261de1b9a" executionId="b3a2df60-79e7-4182-940c-95c638007796" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="06eb9298-0f08-8297-1ae0-b93dff5bc18d" executionId="119bdc21-2d3d-4ce0-bed8-1dfe806a6450" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="1c366be0-e44e-8e31-b7f2-e17b393d6db3" executionId="dd41ab72-b415-46bf-aa6c-be2b038acc3a" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="1bca23e2-1e33-fa8a-6cb7-6c20c96558d3" executionId="b6b90c5b-0b91-48b9-b160-eaae1740e609" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestEntry testId="67ebdd70-ceee-6efa-b3eb-07b0cb165f16" executionId="f73fc410-415a-405e-89e2-9146b483ec2c" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
</TestEntries>
|
||||||
|
<TestLists>
|
||||||
|
<TestList name="Results Not in a List" id="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
|
||||||
|
<TestList name="All Loaded Results" id="19431567-8539-422a-85d7-44ee4e166bda" />
|
||||||
|
</TestLists>
|
||||||
|
<ResultSummary outcome="Completed">
|
||||||
|
<Counters total="79" executed="67" passed="67" failed="0" error="0" timeout="0" aborted="0" inconclusive="0" passedButRunAborted="0" notRunnable="0" notExecuted="0" disconnected="0" warning="0" completed="0" inProgress="0" pending="0" />
|
||||||
|
<Output>
|
||||||
|
<StdOut>NUnit Adapter 3.17.0.0: Test execution started
|
||||||
|
Running all tests in C:\Users\Michal\Workspace\github\SilentNotes\bin\VanillaCloudStorageClientTest\netcoreapp2.1\VanillaCloudStorageClientTest.dll
|
||||||
|
NUnit3TestExecutor discovered 79 of 79 NUnit test cases
|
||||||
|
ReallyDoFetchToken: Gets a real access-token
|
||||||
|
ReallyDoOpenAuthorizationPageInBrowser: Opens the authorization page in the system browse, to get a real access-token
|
||||||
|
Test 'ReallyDoFetchToken' was skipped in the test run.
|
||||||
|
Test 'ReallyDoOpenAuthorizationPageInBrowser' was skipped in the test run.
|
||||||
|
ReallyDoRefreshToken: Refreshes a real token
|
||||||
|
ThrowsWithInvalidPassword: Too many consecutive fails seems to block an FTP server.
|
||||||
|
ThrowsWithInvalidUrl: Too many consecutive fails seems to block an FTP server.
|
||||||
|
ThrowsWithInvalidUsername: Too many consecutive fails seems to block an FTP server.
|
||||||
|
Test 'ReallyDoRefreshToken' was skipped in the test run.
|
||||||
|
Test 'ThrowsWithInvalidPassword' was skipped in the test run.
|
||||||
|
Test 'ThrowsWithInvalidUrl' was skipped in the test run.
|
||||||
|
Test 'ThrowsWithInvalidUsername' was skipped in the test run.
|
||||||
|
ReallyDoFetchToken: Gets a real access-token
|
||||||
|
ReallyDoOpenAuthorizationPageInBrowser: Opens the authorization page in the system browse, to get a real authorization-code
|
||||||
|
ReallyDoRefreshToken: Refreshes a real token
|
||||||
|
ReallyDoFetchToken: Gets a real access-token
|
||||||
|
ReallyDoOpenAuthorizationPageInBrowser: Opens the authorization page in the system browse, to get a real authorization-code
|
||||||
|
Test 'ReallyDoFetchToken' was skipped in the test run.
|
||||||
|
Test 'ReallyDoOpenAuthorizationPageInBrowser' was skipped in the test run.
|
||||||
|
Test 'ReallyDoRefreshToken' was skipped in the test run.
|
||||||
|
Test 'ReallyDoFetchToken' was skipped in the test run.
|
||||||
|
Test 'ReallyDoOpenAuthorizationPageInBrowser' was skipped in the test run.
|
||||||
|
ReallyDoRefreshToken: Refreshes a real token
|
||||||
|
Test 'ReallyDoRefreshToken' was skipped in the test run.
|
||||||
|
NUnit Adapter 3.17.0.0: Test execution complete
|
||||||
|
</StdOut>
|
||||||
|
</Output>
|
||||||
|
</ResultSummary>
|
||||||
|
</TestRun>
|
||||||
34
__tests__/fixtures/external/java/TEST-org.apache.pulsar.AddMissingPatchVersionTest.xml
vendored
Normal file
34
__tests__/fixtures/external/java/TEST-org.apache.pulsar.AddMissingPatchVersionTest.xml
vendored
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!-- Generated by org.testng.reporters.JUnitReportReporter -->
|
||||||
|
<testsuite skipped="1" hostname="fv-az96-723" name="org.apache.pulsar.AddMissingPatchVersionTest" tests="2" failures="1" timestamp="2021-03-07T10:36:56 UTC" time="0.116" errors="0">
|
||||||
|
<testcase name="testVersionStrings" time="0.099" classname="org.apache.pulsar.AddMissingPatchVersionTest">
|
||||||
|
<skipped/>
|
||||||
|
</testcase> <!-- testVersionStrings -->
|
||||||
|
<system-out/>
|
||||||
|
<testcase name="testVersionStrings" time="0.017" classname="org.apache.pulsar.AddMissingPatchVersionTest">
|
||||||
|
<failure type="java.lang.AssertionError" message="expected [1.2.1] but found [1.2.0]">
|
||||||
|
<![CDATA[java.lang.AssertionError: expected [1.2.1] but found [1.2.0]
|
||||||
|
at org.testng.Assert.fail(Assert.java:99)
|
||||||
|
at org.testng.Assert.failNotEquals(Assert.java:1037)
|
||||||
|
at org.testng.Assert.assertEqualsImpl(Assert.java:140)
|
||||||
|
at org.testng.Assert.assertEquals(Assert.java:122)
|
||||||
|
at org.testng.Assert.assertEquals(Assert.java:629)
|
||||||
|
at org.testng.Assert.assertEquals(Assert.java:639)
|
||||||
|
at org.apache.pulsar.AddMissingPatchVersionTest.testVersionStrings(AddMissingPatchVersionTest.java:29)
|
||||||
|
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||||
|
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||||
|
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||||
|
at java.lang.reflect.Method.invoke(Method.java:498)
|
||||||
|
at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:132)
|
||||||
|
at org.testng.internal.InvokeMethodRunnable.runOne(InvokeMethodRunnable.java:45)
|
||||||
|
at org.testng.internal.InvokeMethodRunnable.call(InvokeMethodRunnable.java:73)
|
||||||
|
at org.testng.internal.InvokeMethodRunnable.call(InvokeMethodRunnable.java:11)
|
||||||
|
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
|
||||||
|
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
|
||||||
|
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
|
||||||
|
at java.lang.Thread.run(Thread.java:748)
|
||||||
|
]]>
|
||||||
|
</failure>
|
||||||
|
</testcase> <!-- testVersionStrings -->
|
||||||
|
<system-out/>
|
||||||
|
</testsuite> <!-- org.apache.pulsar.AddMissingPatchVersionTest -->
|
||||||
5873
__tests__/fixtures/external/java/files.txt
vendored
Normal file
5873
__tests__/fixtures/external/java/files.txt
vendored
Normal file
File diff suppressed because it is too large
Load Diff
862
__tests__/fixtures/external/java/pulsar-test-report.xml
vendored
Normal file
862
__tests__/fixtures/external/java/pulsar-test-report.xml
vendored
Normal file
@@ -0,0 +1,862 @@
|
|||||||
|
<?xml version='1.0' encoding='utf-8'?>
|
||||||
|
<testsuites tests="808" failures="1" errors="0" skipped="14" time="2126.5310000000004"><testsuite name="org.apache.pulsar.AddMissingPatchVersionTest" tests="2" errors="0" failures="1" skipped="1" time="0.116"><testcase name="testVersionStrings" time="0.099" classname="org.apache.pulsar.AddMissingPatchVersionTest">
|
||||||
|
<skipped />
|
||||||
|
</testcase>
|
||||||
|
<testcase name="testVersionStrings" time="0.017" classname="org.apache.pulsar.AddMissingPatchVersionTest">
|
||||||
|
<failure type="java.lang.AssertionError" message="expected [1.2.1] but found [1.2.0]">
|
||||||
|
java.lang.AssertionError: expected [1.2.1] but found [1.2.0]
|
||||||
|
at org.testng.Assert.fail(Assert.java:99)
|
||||||
|
at org.testng.Assert.failNotEquals(Assert.java:1037)
|
||||||
|
at org.testng.Assert.assertEqualsImpl(Assert.java:140)
|
||||||
|
at org.testng.Assert.assertEquals(Assert.java:122)
|
||||||
|
at org.testng.Assert.assertEquals(Assert.java:629)
|
||||||
|
at org.testng.Assert.assertEquals(Assert.java:639)
|
||||||
|
at org.apache.pulsar.AddMissingPatchVersionTest.testVersionStrings(AddMissingPatchVersionTest.java:29)
|
||||||
|
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||||
|
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||||
|
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||||
|
at java.lang.reflect.Method.invoke(Method.java:498)
|
||||||
|
at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:132)
|
||||||
|
at org.testng.internal.InvokeMethodRunnable.runOne(InvokeMethodRunnable.java:45)
|
||||||
|
at org.testng.internal.InvokeMethodRunnable.call(InvokeMethodRunnable.java:73)
|
||||||
|
at org.testng.internal.InvokeMethodRunnable.call(InvokeMethodRunnable.java:11)
|
||||||
|
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
|
||||||
|
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
|
||||||
|
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
|
||||||
|
at java.lang.Thread.run(Thread.java:748)
|
||||||
|
|
||||||
|
</failure>
|
||||||
|
</testcase>
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.PulsarBrokerStarterTest" tests="9" errors="0" failures="0" skipped="0" time="0.5910000000000001"><testcase name="testMainRunBookieNoConfig" time="0.028" classname="org.apache.pulsar.PulsarBrokerStarterTest" />
|
||||||
|
<testcase name="testLoadConfigWithException" time="0.034" classname="org.apache.pulsar.PulsarBrokerStarterTest" />
|
||||||
|
<testcase name="testMainWithNoArgument" time="0.004" classname="org.apache.pulsar.PulsarBrokerStarterTest" />
|
||||||
|
<testcase name="testLoadBalancerConfig" time="0.019" classname="org.apache.pulsar.PulsarBrokerStarterTest" />
|
||||||
|
<testcase name="testGlobalZooKeeperConfig" time="0.046" classname="org.apache.pulsar.PulsarBrokerStarterTest" />
|
||||||
|
<testcase name="testMainRunBookieRecoveryNoConfig" time="0.015" classname="org.apache.pulsar.PulsarBrokerStarterTest" />
|
||||||
|
<testcase name="testLoadConfig" time="0.024" classname="org.apache.pulsar.PulsarBrokerStarterTest" />
|
||||||
|
<testcase name="testMainEnableRunBookieThroughBrokerConfig" time="0.366" classname="org.apache.pulsar.PulsarBrokerStarterTest" />
|
||||||
|
<testcase name="testMainRunBookieAndAutoRecoveryNoConfig" time="0.055" classname="org.apache.pulsar.PulsarBrokerStarterTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.broker.PulsarServiceTest" tests="2" errors="0" failures="0" skipped="0" time="0.096"><testcase name="testGetWorkerService" time="0.083" classname="org.apache.pulsar.broker.PulsarServiceTest" />
|
||||||
|
<testcase name="testGetWorkerServiceException" time="0.013" classname="org.apache.pulsar.broker.PulsarServiceTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.broker.SLAMonitoringTest" tests="4" errors="0" failures="0" skipped="0" time="9.184999999999999"><testcase name="testOwnedNamespaces" time="1.171" classname="org.apache.pulsar.broker.SLAMonitoringTest" />
|
||||||
|
<testcase name="testOwnershipAfterSetup" time="0.016" classname="org.apache.pulsar.broker.SLAMonitoringTest" />
|
||||||
|
<testcase name="testUnloadIfBrokerCrashes" time="7.923" classname="org.apache.pulsar.broker.SLAMonitoringTest" />
|
||||||
|
<testcase name="testOwnershipViaAdminAfterSetup" time="0.075" classname="org.apache.pulsar.broker.SLAMonitoringTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.broker.admin.AdminApiOffloadTest" tests="7" errors="0" failures="0" skipped="0" time="18.584000000000003"><testcase name="testOffloadPoliciesAppliedApi" time="1.869" classname="org.apache.pulsar.broker.admin.AdminApiOffloadTest" />
|
||||||
|
<testcase name="testOffloadV2" time="1.614" classname="org.apache.pulsar.broker.admin.AdminApiOffloadTest" />
|
||||||
|
<testcase name="testTopicLevelOffloadNonPartitioned" time="2.481" classname="org.apache.pulsar.broker.admin.AdminApiOffloadTest" />
|
||||||
|
<testcase name="testTopicLevelOffloadPartitioned" time="1.749" classname="org.apache.pulsar.broker.admin.AdminApiOffloadTest" />
|
||||||
|
<testcase name="testOffloadV1" time="7.216" classname="org.apache.pulsar.broker.admin.AdminApiOffloadTest" />
|
||||||
|
<testcase name="testOffloadPolicies" time="1.283" classname="org.apache.pulsar.broker.admin.AdminApiOffloadTest" />
|
||||||
|
<testcase name="testOffloadPoliciesApi" time="2.372" classname="org.apache.pulsar.broker.admin.AdminApiOffloadTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.broker.auth.AuthLogsTest" tests="2" errors="0" failures="0" skipped="0" time="1.389"><testcase name="httpEndpoint" time="0.881" classname="org.apache.pulsar.broker.auth.AuthLogsTest" />
|
||||||
|
<testcase name="binaryEndpoint" time="0.508" classname="org.apache.pulsar.broker.auth.AuthLogsTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.broker.auth.AuthenticationServiceTest" tests="2" errors="0" failures="0" skipped="0" time="0.185"><testcase name="testAuthentication" time="0.005" classname="org.apache.pulsar.broker.auth.AuthenticationServiceTest" />
|
||||||
|
<testcase name="testAuthenticationHttp" time="0.180" classname="org.apache.pulsar.broker.auth.AuthenticationServiceTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.broker.auth.AuthorizationTest" tests="1" errors="0" failures="0" skipped="0" time="2.384"><testcase name="simple" time="2.384" classname="org.apache.pulsar.broker.auth.AuthorizationTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.broker.lookup.http.HttpTopicLookupv2Test" tests="4" errors="0" failures="0" skipped="0" time="1.93"><testcase name="crossColoLookup" time="0.329" classname="org.apache.pulsar.broker.lookup.http.HttpTopicLookupv2Test" />
|
||||||
|
<testcase name="testNotEnoughLookupPermits" time="0.015" classname="org.apache.pulsar.broker.lookup.http.HttpTopicLookupv2Test" />
|
||||||
|
<testcase name="testValidateReplicationSettingsOnNamespace" time="1.575" classname="org.apache.pulsar.broker.lookup.http.HttpTopicLookupv2Test" />
|
||||||
|
<testcase name="testDataPojo" time="0.011" classname="org.apache.pulsar.broker.lookup.http.HttpTopicLookupv2Test" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.broker.namespace.NamespaceCreateBundlesTest" tests="2" errors="0" failures="0" skipped="0" time="33.168"><testcase name="testCreateNamespaceWithDefaultBundles" time="23.401" classname="org.apache.pulsar.broker.namespace.NamespaceCreateBundlesTest" />
|
||||||
|
<testcase name="testSplitBundleUpdatesLocalPoliciesWithoutOverwriting" time="9.767" classname="org.apache.pulsar.broker.namespace.NamespaceCreateBundlesTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.broker.namespace.NamespaceOwnershipListenerTests" tests="2" errors="0" failures="0" skipped="0" time="32.357"><testcase name="testGetAllPartitions" time="23.274" classname="org.apache.pulsar.broker.namespace.NamespaceOwnershipListenerTests" />
|
||||||
|
<testcase name="testNamespaceBundleOwnershipListener" time="9.083" classname="org.apache.pulsar.broker.namespace.NamespaceOwnershipListenerTests" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.broker.namespace.NamespaceServiceTest" tests="10" errors="0" failures="0" skipped="0" time="75.27199999999999"><testcase name="testSplitMapWithRefreshedStatMap" time="4.509" classname="org.apache.pulsar.broker.namespace.NamespaceServiceTest" />
|
||||||
|
<testcase name="testRemoveOwnershipNamespaceBundle" time="4.119" classname="org.apache.pulsar.broker.namespace.NamespaceServiceTest" />
|
||||||
|
<testcase name="testIsServiceUnitDisabled" time="5.056" classname="org.apache.pulsar.broker.namespace.NamespaceServiceTest" />
|
||||||
|
<testcase name="testLoadReportDeserialize" time="24.622" classname="org.apache.pulsar.broker.namespace.NamespaceServiceTest" />
|
||||||
|
<testcase name="testCreateLookupResult" time="6.452" classname="org.apache.pulsar.broker.namespace.NamespaceServiceTest" />
|
||||||
|
<testcase name="testUnloadNamespaceBundleWithStuckTopic" time="4.463" classname="org.apache.pulsar.broker.namespace.NamespaceServiceTest" />
|
||||||
|
<testcase name="testUnloadNamespaceBundleFailure" time="7.650" classname="org.apache.pulsar.broker.namespace.NamespaceServiceTest" />
|
||||||
|
<testcase name="testSplitAndOwnBundles" time="5.071" classname="org.apache.pulsar.broker.namespace.NamespaceServiceTest" />
|
||||||
|
<testcase name="testCreateNamespaceWithDefaultNumberOfBundles" time="7.515" classname="org.apache.pulsar.broker.namespace.NamespaceServiceTest" />
|
||||||
|
<testcase name="testRemoveOwnershipAndSplitBundle" time="5.815" classname="org.apache.pulsar.broker.namespace.NamespaceServiceTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.broker.namespace.NamespaceUnloadingTest" tests="2" errors="0" failures="0" skipped="0" time="13.704"><testcase name="testUnloadNotLoadedNamespace" time="7.094" classname="org.apache.pulsar.broker.namespace.NamespaceUnloadingTest" />
|
||||||
|
<testcase name="testUnloadPartiallyLoadedNamespace" time="6.610" classname="org.apache.pulsar.broker.namespace.NamespaceUnloadingTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.broker.namespace.OwnerShipCacheForCurrentServerTest" tests="1" errors="0" failures="0" skipped="0" time="15.709"><testcase name="testOwnershipForCurrentServer" time="15.709" classname="org.apache.pulsar.broker.namespace.OwnerShipCacheForCurrentServerTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.broker.namespace.OwnershipCacheTest" tests="8" errors="0" failures="0" skipped="0" time="15.749999999999998"><testcase name="testGetOwnedServiceUnits" time="9.397" classname="org.apache.pulsar.broker.namespace.OwnershipCacheTest" />
|
||||||
|
<testcase name="testRemoveOwnership" time="1.482" classname="org.apache.pulsar.broker.namespace.OwnershipCacheTest" />
|
||||||
|
<testcase name="testGetOwnedServiceUnit" time="1.036" classname="org.apache.pulsar.broker.namespace.OwnershipCacheTest" />
|
||||||
|
<testcase name="testGetOrSetOwner" time="1.708" classname="org.apache.pulsar.broker.namespace.OwnershipCacheTest" />
|
||||||
|
<testcase name="testConstructor" time="0.471" classname="org.apache.pulsar.broker.namespace.OwnershipCacheTest" />
|
||||||
|
<testcase name="testGetOwner" time="0.492" classname="org.apache.pulsar.broker.namespace.OwnershipCacheTest" />
|
||||||
|
<testcase name="testDisableOwnership" time="0.669" classname="org.apache.pulsar.broker.namespace.OwnershipCacheTest" />
|
||||||
|
<testcase name="testReestablishOwnership" time="0.495" classname="org.apache.pulsar.broker.namespace.OwnershipCacheTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.broker.protocol.ProtocolHandlerUtilsTest" tests="3" errors="0" failures="0" skipped="0" time="7.398000000000001"><testcase name="testLoadProtocolHandler" time="7.332" classname="org.apache.pulsar.broker.protocol.ProtocolHandlerUtilsTest" />
|
||||||
|
<testcase name="testLoadProtocolHandlerBlankHandlerClass" time="0.025" classname="org.apache.pulsar.broker.protocol.ProtocolHandlerUtilsTest" />
|
||||||
|
<testcase name="testLoadProtocolHandlerWrongHandlerClass" time="0.041" classname="org.apache.pulsar.broker.protocol.ProtocolHandlerUtilsTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.broker.protocol.ProtocolHandlerWithClassLoaderTest" tests="1" errors="0" failures="0" skipped="0" time="0.015"><testcase name="testWrapper" time="0.015" classname="org.apache.pulsar.broker.protocol.ProtocolHandlerWithClassLoaderTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.broker.protocol.ProtocolHandlersTest" tests="6" errors="0" failures="0" skipped="0" time="0.9460000000000001"><testcase name="testStart" time="0.626" classname="org.apache.pulsar.broker.protocol.ProtocolHandlersTest" />
|
||||||
|
<testcase name="testGetProtocol" time="0.014" classname="org.apache.pulsar.broker.protocol.ProtocolHandlersTest" />
|
||||||
|
<testcase name="testNewChannelInitializersSuccess" time="0.010" classname="org.apache.pulsar.broker.protocol.ProtocolHandlersTest" />
|
||||||
|
<testcase name="testInitialize" time="0.020" classname="org.apache.pulsar.broker.protocol.ProtocolHandlersTest" />
|
||||||
|
<testcase name="testNewChannelInitializersOverlapped" time="0.260" classname="org.apache.pulsar.broker.protocol.ProtocolHandlersTest" />
|
||||||
|
<testcase name="testGetProtocolDataToAdvertise" time="0.016" classname="org.apache.pulsar.broker.protocol.ProtocolHandlersTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.broker.service.MessagePublishBufferThrottleTest" tests="3" errors="0" failures="0" skipped="0" time="13.83"><testcase name="testMessagePublishBufferThrottleEnable" time="2.305" classname="org.apache.pulsar.broker.service.MessagePublishBufferThrottleTest" />
|
||||||
|
<testcase name="testBlockByPublishRateLimiting" time="9.449" classname="org.apache.pulsar.broker.service.MessagePublishBufferThrottleTest" />
|
||||||
|
<testcase name="testMessagePublishBufferThrottleDisabled" time="2.076" classname="org.apache.pulsar.broker.service.MessagePublishBufferThrottleTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.broker.service.ReplicatorTest" tests="22" errors="0" failures="0" skipped="0" time="40.154"><testcase name="testResumptionAfterBacklogRelaxed" time="19.914" classname="org.apache.pulsar.broker.service.ReplicatorTest" />
|
||||||
|
<testcase name="testReplicationOverrides" time="2.910" classname="org.apache.pulsar.broker.service.ReplicatorTest" />
|
||||||
|
<testcase name="testResetCursorNotFail" time="0.218" classname="org.apache.pulsar.broker.service.ReplicatorTest" />
|
||||||
|
<testcase name="testUpdateGlobalTopicPartition" time="0.667" classname="org.apache.pulsar.broker.service.ReplicatorTest" />
|
||||||
|
<testcase name="testReplication" time="0.429" classname="org.apache.pulsar.broker.service.ReplicatorTest" />
|
||||||
|
<testcase name="testReplicatorOnPartitionedTopic" time="0.172" classname="org.apache.pulsar.broker.service.ReplicatorTest" />
|
||||||
|
<testcase name="testConcurrentReplicator" time="4.271" classname="org.apache.pulsar.broker.service.ReplicatorTest" />
|
||||||
|
<testcase name="testTopicReplicatedAndProducerCreate" time="0.240" classname="org.apache.pulsar.broker.service.ReplicatorTest" />
|
||||||
|
<testcase name="testDeleteReplicatorFailure" time="0.172" classname="org.apache.pulsar.broker.service.ReplicatorTest" />
|
||||||
|
<testcase name="testReplicatorOnPartitionedTopic" time="0.145" classname="org.apache.pulsar.broker.service.ReplicatorTest" />
|
||||||
|
<testcase name="testReplicationForBatchMessages" time="0.324" classname="org.apache.pulsar.broker.service.ReplicatorTest" />
|
||||||
|
<testcase name="testReplicatorClearBacklog" time="0.428" classname="org.apache.pulsar.broker.service.ReplicatorTest" />
|
||||||
|
<testcase name="verifyChecksumAfterReplication" time="0.259" classname="org.apache.pulsar.broker.service.ReplicatorTest" />
|
||||||
|
<testcase name="testCloseReplicatorStartProducer" time="0.369" classname="org.apache.pulsar.broker.service.ReplicatorTest" />
|
||||||
|
<testcase name="activeBrokerParse" time="0.212" classname="org.apache.pulsar.broker.service.ReplicatorTest" />
|
||||||
|
<testcase name="testReplicatePeekAndSkip" time="0.241" classname="org.apache.pulsar.broker.service.ReplicatorTest" />
|
||||||
|
<testcase name="testReplication" time="0.406" classname="org.apache.pulsar.broker.service.ReplicatorTest" />
|
||||||
|
<testcase name="testReplicatedCluster" time="1.481" classname="org.apache.pulsar.broker.service.ReplicatorTest" />
|
||||||
|
<testcase name="testTopicReplicatedAndProducerCreate" time="0.372" classname="org.apache.pulsar.broker.service.ReplicatorTest" />
|
||||||
|
<testcase name="testConfigChange" time="4.446" classname="org.apache.pulsar.broker.service.ReplicatorTest" />
|
||||||
|
<testcase name="testFailures" time="0.097" classname="org.apache.pulsar.broker.service.ReplicatorTest" />
|
||||||
|
<testcase name="testReplicatorProducerClosing" time="2.381" classname="org.apache.pulsar.broker.service.ReplicatorTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.broker.service.TopicOwnerTest" tests="8" errors="0" failures="0" skipped="0" time="114.278"><testcase name="testReleaseOwnershipWithZookeeperDisconnectedBeforeOwnershipNodeDeleted" time="13.006" classname="org.apache.pulsar.broker.service.TopicOwnerTest" />
|
||||||
|
<testcase name="testAcquireOwnershipWithZookeeperDisconnectedAfterOwnershipNodeCreated" time="23.726" classname="org.apache.pulsar.broker.service.TopicOwnerTest" />
|
||||||
|
<testcase name="testConnectToInvalidateBundleCacheBroker" time="13.213" classname="org.apache.pulsar.broker.service.TopicOwnerTest" />
|
||||||
|
<testcase name="testAcquireOwnershipWithZookeeperDisconnectedBeforeOwnershipNodeCreated" time="12.847" classname="org.apache.pulsar.broker.service.TopicOwnerTest" />
|
||||||
|
<testcase name="testLookupPartitionedTopic" time="12.435" classname="org.apache.pulsar.broker.service.TopicOwnerTest" />
|
||||||
|
<testcase name="testListNonPersistentTopic" time="13.123" classname="org.apache.pulsar.broker.service.TopicOwnerTest" />
|
||||||
|
<testcase name="testReleaseOwnershipWithZookeeperDisconnectedAfterOwnershipNodeDeleted" time="14.539" classname="org.apache.pulsar.broker.service.TopicOwnerTest" />
|
||||||
|
<testcase name="testReestablishOwnershipAfterInvalidateCache" time="11.389" classname="org.apache.pulsar.broker.service.TopicOwnerTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.broker.stats.BookieClientsStatsGeneratorTest" tests="2" errors="0" failures="0" skipped="0" time="0.049"><testcase name="testJvmDirectMemoryUsedMetric" time="0.010" classname="org.apache.pulsar.broker.stats.BookieClientsStatsGeneratorTest" />
|
||||||
|
<testcase name="testBookieClientStatsGenerator" time="0.039" classname="org.apache.pulsar.broker.stats.BookieClientsStatsGeneratorTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.broker.stats.ConsumerStatsTest" tests="3" errors="0" failures="0" skipped="0" time="21.163999999999998"><testcase name="testAckStatsOnPartitionedTopicForExclusiveSubscription" time="7.634" classname="org.apache.pulsar.broker.stats.ConsumerStatsTest" />
|
||||||
|
<testcase name="testConsumerStatsOnZeroMaxUnackedMessagesPerConsumer" time="8.842" classname="org.apache.pulsar.broker.stats.ConsumerStatsTest" />
|
||||||
|
<testcase name="testUpdateStatsForActiveConsumerAndSubscription" time="4.688" classname="org.apache.pulsar.broker.stats.ConsumerStatsTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.broker.stats.ManagedCursorMetricsTest" tests="1" errors="0" failures="0" skipped="0" time="0.281"><testcase name="testManagedCursorMetrics" time="0.281" classname="org.apache.pulsar.broker.stats.ManagedCursorMetricsTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.broker.stats.ManagedLedgerMetricsTest" tests="1" errors="0" failures="0" skipped="0" time="0.285"><testcase name="testManagedLedgerMetrics" time="0.285" classname="org.apache.pulsar.broker.stats.ManagedLedgerMetricsTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.broker.stats.PrometheusMetricsTest" tests="15" errors="0" failures="0" skipped="0" time="83.14500000000001"><testcase name="testPerTopicStats" time="5.907" classname="org.apache.pulsar.broker.stats.PrometheusMetricsTest" />
|
||||||
|
<testcase name="testAuthMetrics" time="5.201" classname="org.apache.pulsar.broker.stats.PrometheusMetricsTest" />
|
||||||
|
<testcase name="testPerTopicExpiredStat" time="4.695" classname="org.apache.pulsar.broker.stats.PrometheusMetricsTest" />
|
||||||
|
<testcase name="testPerProducerStats" time="4.859" classname="org.apache.pulsar.broker.stats.PrometheusMetricsTest" />
|
||||||
|
<testcase name="testMetricsTopicCount" time="4.720" classname="org.apache.pulsar.broker.stats.PrometheusMetricsTest" />
|
||||||
|
<testcase name="testManagedLedgerBookieClientStats" time="5.617" classname="org.apache.pulsar.broker.stats.PrometheusMetricsTest" />
|
||||||
|
<testcase name="testDuplicateMetricTypeDefinitions" time="5.377" classname="org.apache.pulsar.broker.stats.PrometheusMetricsTest" />
|
||||||
|
<testcase name="testExpiringTokenMetrics" time="4.347" classname="org.apache.pulsar.broker.stats.PrometheusMetricsTest" />
|
||||||
|
<testcase name="testPerConsumerStats" time="12.093" classname="org.apache.pulsar.broker.stats.PrometheusMetricsTest" />
|
||||||
|
<testcase name="testPerNamespaceStats" time="5.014" classname="org.apache.pulsar.broker.stats.PrometheusMetricsTest" />
|
||||||
|
<testcase name="testManagedCursorPersistStats" time="5.362" classname="org.apache.pulsar.broker.stats.PrometheusMetricsTest" />
|
||||||
|
<testcase name="testDuplicateMetricTypeDefinitions" time="4.116" classname="org.apache.pulsar.broker.stats.PrometheusMetricsTest" />
|
||||||
|
<testcase name="testExpiredTokenMetrics" time="5.405" classname="org.apache.pulsar.broker.stats.PrometheusMetricsTest" />
|
||||||
|
<testcase name="testManagedLedgerCacheStats" time="5.262" classname="org.apache.pulsar.broker.stats.PrometheusMetricsTest" />
|
||||||
|
<testcase name="testManagedLedgerStats" time="5.170" classname="org.apache.pulsar.broker.stats.PrometheusMetricsTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.broker.stats.SubscriptionStatsTest" tests="2" errors="0" failures="0" skipped="0" time="1.806"><testcase name="testConsumersAfterMarkDelete" time="1.193" classname="org.apache.pulsar.broker.stats.SubscriptionStatsTest" />
|
||||||
|
<testcase name="testNonContiguousDeletedMessagesRanges" time="0.613" classname="org.apache.pulsar.broker.stats.SubscriptionStatsTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.broker.stats.prometheus.AggregatedNamespaceStatsTest" tests="1" errors="0" failures="0" skipped="0" time="0.04"><testcase name="testSimpleAggregation" time="0.040" classname="org.apache.pulsar.broker.stats.prometheus.AggregatedNamespaceStatsTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.broker.systopic.NamespaceEventsSystemTopicServiceTest" tests="1" errors="0" failures="0" skipped="0" time="1.043"><testcase name="testSendAndReceiveNamespaceEvents" time="1.043" classname="org.apache.pulsar.broker.systopic.NamespaceEventsSystemTopicServiceTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.broker.transaction.TransactionConsumeTest" tests="2" errors="0" failures="0" skipped="0" time="29.646"><testcase name="noSortedTest" time="25.275" classname="org.apache.pulsar.broker.transaction.TransactionConsumeTest" />
|
||||||
|
<testcase name="sortedTest" time="4.371" classname="org.apache.pulsar.broker.transaction.TransactionConsumeTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.broker.transaction.buffer.InMemTransactionBufferReaderTest" tests="3" errors="0" failures="0" skipped="0" time="0.028"><testcase name="testCloseReleaseAllEntries" time="0.019" classname="org.apache.pulsar.broker.transaction.buffer.InMemTransactionBufferReaderTest" />
|
||||||
|
<testcase name="testInvalidNumEntriesArgument" time="0.004" classname="org.apache.pulsar.broker.transaction.buffer.InMemTransactionBufferReaderTest" />
|
||||||
|
<testcase name="testEndOfTransactionException" time="0.005" classname="org.apache.pulsar.broker.transaction.buffer.InMemTransactionBufferReaderTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.broker.transaction.buffer.TransactionBufferClientTest" tests="4" errors="0" failures="0" skipped="0" time="0.093"><testcase name="testAbortOnTopic" time="0.019" classname="org.apache.pulsar.broker.transaction.buffer.TransactionBufferClientTest" />
|
||||||
|
<testcase name="testAbortOnSubscription" time="0.037" classname="org.apache.pulsar.broker.transaction.buffer.TransactionBufferClientTest" />
|
||||||
|
<testcase name="testCommitOnTopic" time="0.020" classname="org.apache.pulsar.broker.transaction.buffer.TransactionBufferClientTest" />
|
||||||
|
<testcase name="testCommitOnSubscription" time="0.017" classname="org.apache.pulsar.broker.transaction.buffer.TransactionBufferClientTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.broker.transaction.buffer.TransactionBufferTest" tests="7" errors="0" failures="0" skipped="0" time="0.08099999999999999"><testcase name="testOpenReaderOnNonExistentTxn" time="0.009" classname="org.apache.pulsar.broker.transaction.buffer.TransactionBufferTest" />
|
||||||
|
<testcase name="testAbortCommittedTxn" time="0.015" classname="org.apache.pulsar.broker.transaction.buffer.TransactionBufferTest" />
|
||||||
|
<testcase name="testAbortTxn" time="0.013" classname="org.apache.pulsar.broker.transaction.buffer.TransactionBufferTest" />
|
||||||
|
<testcase name="testAbortNonExistentTxn" time="0.009" classname="org.apache.pulsar.broker.transaction.buffer.TransactionBufferTest" />
|
||||||
|
<testcase name="testCommitNonExistentTxn" time="0.018" classname="org.apache.pulsar.broker.transaction.buffer.TransactionBufferTest" />
|
||||||
|
<testcase name="testCommitTxn" time="0.009" classname="org.apache.pulsar.broker.transaction.buffer.TransactionBufferTest" />
|
||||||
|
<testcase name="testOpenReaderOnAnOpenTxn" time="0.008" classname="org.apache.pulsar.broker.transaction.buffer.TransactionBufferTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.broker.transaction.buffer.TransactionEntryImplTest" tests="1" errors="0" failures="0" skipped="0" time="0.014"><testcase name="testCloseShouldReleaseBuffer" time="0.014" classname="org.apache.pulsar.broker.transaction.buffer.TransactionEntryImplTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.broker.transaction.buffer.TransactionLowWaterMarkTest" tests="2" errors="0" failures="0" skipped="0" time="37.577"><testcase name="testTransactionBufferLowWaterMark" time="21.356" classname="org.apache.pulsar.broker.transaction.buffer.TransactionLowWaterMarkTest" />
|
||||||
|
<testcase name="testPendingAckLowWaterMark" time="16.221" classname="org.apache.pulsar.broker.transaction.buffer.TransactionLowWaterMarkTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.broker.transaction.buffer.TransactionStablePositionTest" tests="3" errors="0" failures="0" skipped="1" time="49.06700000000001"><testcase name="commitTxnTest" time="20.004" classname="org.apache.pulsar.broker.transaction.buffer.TransactionStablePositionTest" />
|
||||||
|
<testcase name="abortTxnTest" time="15.641" classname="org.apache.pulsar.broker.transaction.buffer.TransactionStablePositionTest" />
|
||||||
|
<testcase name="commitTxnTest" time="13.422" classname="org.apache.pulsar.broker.transaction.buffer.TransactionStablePositionTest">
|
||||||
|
<skipped />
|
||||||
|
</testcase>
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.broker.transaction.coordinator.TransactionCoordinatorClientTest" tests="3" errors="0" failures="0" skipped="0" time="0.095"><testcase name="testClientStart" time="0.002" classname="org.apache.pulsar.broker.transaction.coordinator.TransactionCoordinatorClientTest" />
|
||||||
|
<testcase name="testCommitAndAbort" time="0.080" classname="org.apache.pulsar.broker.transaction.coordinator.TransactionCoordinatorClientTest" />
|
||||||
|
<testcase name="testNewTxn" time="0.013" classname="org.apache.pulsar.broker.transaction.coordinator.TransactionCoordinatorClientTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.broker.transaction.coordinator.TransactionMetaStoreAssignmentTest" tests="1" errors="0" failures="0" skipped="0" time="1.151"><testcase name="testTransactionMetaStoreAssignAndFailover" time="1.151" classname="org.apache.pulsar.broker.transaction.coordinator.TransactionMetaStoreAssignmentTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.broker.transaction.pendingack.PendingAckInMemoryDeleteTest" tests="3" errors="0" failures="0" skipped="1" time="57.293000000000006"><testcase name="txnAckTestNoBatchAndSharedSubMemoryDeleteTest" time="17.970" classname="org.apache.pulsar.broker.transaction.pendingack.PendingAckInMemoryDeleteTest">
|
||||||
|
<skipped />
|
||||||
|
</testcase>
|
||||||
|
<testcase name="txnAckTestNoBatchAndSharedSubMemoryDeleteTest" time="18.748" classname="org.apache.pulsar.broker.transaction.pendingack.PendingAckInMemoryDeleteTest" />
|
||||||
|
<testcase name="txnAckTestBatchAndSharedSubMemoryDeleteTest" time="20.575" classname="org.apache.pulsar.broker.transaction.pendingack.PendingAckInMemoryDeleteTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.broker.web.RestExceptionTest" tests="3" errors="0" failures="0" skipped="0" time="0.037000000000000005"><testcase name="testRestException" time="0.008" classname="org.apache.pulsar.broker.web.RestExceptionTest" />
|
||||||
|
<testcase name="testWebApplicationException" time="0.021" classname="org.apache.pulsar.broker.web.RestExceptionTest" />
|
||||||
|
<testcase name="testOtherException" time="0.008" classname="org.apache.pulsar.broker.web.RestExceptionTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.broker.web.WebServiceTest" tests="9" errors="0" failures="0" skipped="0" time="27.441999999999997"><testcase name="testTlsAuthDisallowInsecure" time="2.922" classname="org.apache.pulsar.broker.web.WebServiceTest" />
|
||||||
|
<testcase name="testBrokerReady" time="3.540" classname="org.apache.pulsar.broker.web.WebServiceTest" />
|
||||||
|
<testcase name="testDefaultClientVersion" time="3.319" classname="org.apache.pulsar.broker.web.WebServiceTest" />
|
||||||
|
<testcase name="testTlsEnabled" time="2.721" classname="org.apache.pulsar.broker.web.WebServiceTest" />
|
||||||
|
<testcase name="testTlsAuthAllowInsecure" time="3.783" classname="org.apache.pulsar.broker.web.WebServiceTest" />
|
||||||
|
<testcase name="testSplitPath" time="0.057" classname="org.apache.pulsar.broker.web.WebServiceTest" />
|
||||||
|
<testcase name="testMaxRequestSize" time="3.723" classname="org.apache.pulsar.broker.web.WebServiceTest" />
|
||||||
|
<testcase name="testTlsDisabled" time="2.290" classname="org.apache.pulsar.broker.web.WebServiceTest" />
|
||||||
|
<testcase name="testRateLimiting" time="5.087" classname="org.apache.pulsar.broker.web.WebServiceTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.client.impl.AdminApiKeyStoreTlsAuthTest" tests="4" errors="0" failures="0" skipped="0" time="8.297"><testcase name="testAuthorizedUserAsOriginalPrincipal" time="3.330" classname="org.apache.pulsar.client.impl.AdminApiKeyStoreTlsAuthTest" />
|
||||||
|
<testcase name="testSuperUserCantListNamespaces" time="2.045" classname="org.apache.pulsar.client.impl.AdminApiKeyStoreTlsAuthTest" />
|
||||||
|
<testcase name="testPersistentList" time="1.308" classname="org.apache.pulsar.client.impl.AdminApiKeyStoreTlsAuthTest" />
|
||||||
|
<testcase name="testSuperUserCanListTenants" time="1.614" classname="org.apache.pulsar.client.impl.AdminApiKeyStoreTlsAuthTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.client.impl.BatchMessageIdImplSerializationTest" tests="4" errors="0" failures="0" skipped="0" time="0.03"><testcase name="testSerializationEmpty" time="0.008" classname="org.apache.pulsar.client.impl.BatchMessageIdImplSerializationTest" />
|
||||||
|
<testcase name="testSerialization1" time="0.004" classname="org.apache.pulsar.client.impl.BatchMessageIdImplSerializationTest" />
|
||||||
|
<testcase name="testSerializationNull" time="0.012" classname="org.apache.pulsar.client.impl.BatchMessageIdImplSerializationTest" />
|
||||||
|
<testcase name="testSerialization2" time="0.006" classname="org.apache.pulsar.client.impl.BatchMessageIdImplSerializationTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.client.impl.BatchMessageIndexAckDisableTest" tests="4" errors="0" failures="0" skipped="0" time="13.732"><testcase name="testBatchMessageIndexAckForExclusiveSubscription" time="2.747" classname="org.apache.pulsar.client.impl.BatchMessageIndexAckDisableTest" />
|
||||||
|
<testcase name="testBatchMessageIndexAckForSharedSubscription" time="5.341" classname="org.apache.pulsar.client.impl.BatchMessageIndexAckDisableTest" />
|
||||||
|
<testcase name="testBatchMessageIndexAckForExclusiveSubscription" time="2.377" classname="org.apache.pulsar.client.impl.BatchMessageIndexAckDisableTest" />
|
||||||
|
<testcase name="testBatchMessageIndexAckForSharedSubscription" time="3.267" classname="org.apache.pulsar.client.impl.BatchMessageIndexAckDisableTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.client.impl.BatchMessageIndexAckTest" tests="5" errors="0" failures="0" skipped="0" time="43.856"><testcase name="testBatchMessageIndexAckForSharedSubscription" time="23.212" classname="org.apache.pulsar.client.impl.BatchMessageIndexAckTest" />
|
||||||
|
<testcase name="testBatchMessageIndexAckForSharedSubscription" time="10.423" classname="org.apache.pulsar.client.impl.BatchMessageIndexAckTest" />
|
||||||
|
<testcase name="testDoNotRecycleAckSetMultipleTimes" time="2.170" classname="org.apache.pulsar.client.impl.BatchMessageIndexAckTest" />
|
||||||
|
<testcase name="testBatchMessageIndexAckForExclusiveSubscription" time="3.536" classname="org.apache.pulsar.client.impl.BatchMessageIndexAckTest" />
|
||||||
|
<testcase name="testBatchMessageIndexAckForExclusiveSubscription" time="4.515" classname="org.apache.pulsar.client.impl.BatchMessageIndexAckTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.client.impl.BrokerClientIntegrationTest" tests="15" errors="0" failures="0" skipped="0" time="148.203"><testcase name="testDisconnectClientWithoutClosingConnection" time="7.392" classname="org.apache.pulsar.client.impl.BrokerClientIntegrationTest" />
|
||||||
|
<testcase name="testResetCursor" time="16.341" classname="org.apache.pulsar.client.impl.BrokerClientIntegrationTest" />
|
||||||
|
<testcase name="testResetCursor" time="14.139" classname="org.apache.pulsar.client.impl.BrokerClientIntegrationTest" />
|
||||||
|
<testcase name="testCloseBrokerService" time="4.907" classname="org.apache.pulsar.client.impl.BrokerClientIntegrationTest" />
|
||||||
|
<testcase name="testUnsupportedBatchMessageConsumer" time="4.583" classname="org.apache.pulsar.client.impl.BrokerClientIntegrationTest" />
|
||||||
|
<testcase name="testAvroSchemaProducerConsumerWithSpecifiedReaderAndWriter" time="3.143" classname="org.apache.pulsar.client.impl.BrokerClientIntegrationTest" />
|
||||||
|
<testcase name="testJsonSchemaProducerConsumerWithSpecifiedReaderAndWriter" time="5.881" classname="org.apache.pulsar.client.impl.BrokerClientIntegrationTest" />
|
||||||
|
<testcase name="testOperationTimeout" time="8.547" classname="org.apache.pulsar.client.impl.BrokerClientIntegrationTest" />
|
||||||
|
<testcase name="testCleanProducer" time="2.767" classname="org.apache.pulsar.client.impl.BrokerClientIntegrationTest" />
|
||||||
|
<testcase name="testUnsupportedBatchMessageConsumer" time="4.531" classname="org.apache.pulsar.client.impl.BrokerClientIntegrationTest" />
|
||||||
|
<testcase name="testCloseConnectionOnBrokerRejectedRequest" time="34.542" classname="org.apache.pulsar.client.impl.BrokerClientIntegrationTest" />
|
||||||
|
<testcase name="testAddEntryOperationTimeout" time="12.747" classname="org.apache.pulsar.client.impl.BrokerClientIntegrationTest" />
|
||||||
|
<testcase name="testInvalidDynamicConfiguration" time="5.098" classname="org.apache.pulsar.client.impl.BrokerClientIntegrationTest" />
|
||||||
|
<testcase name="testMaxConcurrentTopicLoading" time="12.357" classname="org.apache.pulsar.client.impl.BrokerClientIntegrationTest" />
|
||||||
|
<testcase name="testCloseConnectionOnInternalServerError" time="11.228" classname="org.apache.pulsar.client.impl.BrokerClientIntegrationTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.client.impl.CompactedOutBatchMessageTest" tests="1" errors="0" failures="0" skipped="0" time="1.385"><testcase name="testCompactedOutMessages" time="1.385" classname="org.apache.pulsar.client.impl.CompactedOutBatchMessageTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.client.impl.ConsumerAckResponseTest" tests="1" errors="0" failures="0" skipped="0" time="0.549"><testcase name="testAckResponse" time="0.549" classname="org.apache.pulsar.client.impl.ConsumerAckResponseTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.client.impl.ConsumerConfigurationTest" tests="4" errors="0" failures="0" skipped="0" time="12.164"><testcase name="testReadCompactNonPersistentExclusive" time="1.617" classname="org.apache.pulsar.client.impl.ConsumerConfigurationTest" />
|
||||||
|
<testcase name="testReadCompactPersistentExclusive" time="5.143" classname="org.apache.pulsar.client.impl.ConsumerConfigurationTest" />
|
||||||
|
<testcase name="testReadCompactPersistentFailover" time="2.083" classname="org.apache.pulsar.client.impl.ConsumerConfigurationTest" />
|
||||||
|
<testcase name="testReadCompactPersistentShared" time="3.321" classname="org.apache.pulsar.client.impl.ConsumerConfigurationTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.client.impl.ConsumerDedupPermitsUpdate" tests="7" errors="0" failures="0" skipped="0" time="3.5220000000000002"><testcase name="testConsumerDedup" time="0.992" classname="org.apache.pulsar.client.impl.ConsumerDedupPermitsUpdate" />
|
||||||
|
<testcase name="testConsumerDedup" time="0.409" classname="org.apache.pulsar.client.impl.ConsumerDedupPermitsUpdate" />
|
||||||
|
<testcase name="testConsumerDedup" time="0.286" classname="org.apache.pulsar.client.impl.ConsumerDedupPermitsUpdate" />
|
||||||
|
<testcase name="testConsumerDedup" time="0.832" classname="org.apache.pulsar.client.impl.ConsumerDedupPermitsUpdate" />
|
||||||
|
<testcase name="testConsumerDedup" time="0.385" classname="org.apache.pulsar.client.impl.ConsumerDedupPermitsUpdate" />
|
||||||
|
<testcase name="testConsumerDedup" time="0.317" classname="org.apache.pulsar.client.impl.ConsumerDedupPermitsUpdate" />
|
||||||
|
<testcase name="testConsumerDedup" time="0.301" classname="org.apache.pulsar.client.impl.ConsumerDedupPermitsUpdate" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.client.impl.ConsumerUnsubscribeTest" tests="1" errors="0" failures="0" skipped="0" time="0.129"><testcase name="testConsumerUnsubscribeReference" time="0.129" classname="org.apache.pulsar.client.impl.ConsumerUnsubscribeTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.client.impl.KeyStoreTlsProducerConsumerTestWithAuth" tests="3" errors="0" failures="0" skipped="0" time="23.461"><testcase name="testTlsClientAuthOverHTTPProtocol" time="8.453" classname="org.apache.pulsar.client.impl.KeyStoreTlsProducerConsumerTestWithAuth" />
|
||||||
|
<testcase name="testTlsClientAuthOverBinaryProtocol" time="8.058" classname="org.apache.pulsar.client.impl.KeyStoreTlsProducerConsumerTestWithAuth" />
|
||||||
|
<testcase name="testTlsLargeSizeMessage" time="6.950" classname="org.apache.pulsar.client.impl.KeyStoreTlsProducerConsumerTestWithAuth" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.client.impl.KeyStoreTlsProducerConsumerTestWithoutAuth" tests="3" errors="0" failures="0" skipped="0" time="7.675000000000001"><testcase name="testTlsClientAuthOverHTTPProtocol" time="3.119" classname="org.apache.pulsar.client.impl.KeyStoreTlsProducerConsumerTestWithoutAuth" />
|
||||||
|
<testcase name="testTlsClientAuthOverBinaryProtocol" time="3.273" classname="org.apache.pulsar.client.impl.KeyStoreTlsProducerConsumerTestWithoutAuth" />
|
||||||
|
<testcase name="testTlsLargeSizeMessage" time="1.283" classname="org.apache.pulsar.client.impl.KeyStoreTlsProducerConsumerTestWithoutAuth" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.client.impl.KeyStoreTlsTest" tests="1" errors="0" failures="0" skipped="0" time="0.183"><testcase name="testValidate" time="0.183" classname="org.apache.pulsar.client.impl.KeyStoreTlsTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.client.impl.MessageChecksumTest" tests="3" errors="0" failures="0" skipped="0" time="46.69"><testcase name="testChecksumCompatibilityInMixedVersionBrokerCluster" time="6.984" classname="org.apache.pulsar.client.impl.MessageChecksumTest" />
|
||||||
|
<testcase name="testTamperingMessageIsDetected" time="7.026" classname="org.apache.pulsar.client.impl.MessageChecksumTest" />
|
||||||
|
<testcase name="testChecksumCompatibilityInMixedVersionBrokerCluster" time="32.680" classname="org.apache.pulsar.client.impl.MessageChecksumTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.client.impl.MessageChunkingTest" tests="9" errors="0" failures="0" skipped="1" time="73.214"><testcase name="testPublishWithFailure" time="33.462" classname="org.apache.pulsar.client.impl.MessageChunkingTest" />
|
||||||
|
<testcase name="testInvalidUseCaseForChunking" time="3.386" classname="org.apache.pulsar.client.impl.MessageChunkingTest" />
|
||||||
|
<testcase name="testLargeMessage" time="4.229" classname="org.apache.pulsar.client.impl.MessageChunkingTest" />
|
||||||
|
<testcase name="testExpireIncompleteChunkMessage" time="5.612" classname="org.apache.pulsar.client.impl.MessageChunkingTest" />
|
||||||
|
<testcase name="testInvalidConfig" time="4.418" classname="org.apache.pulsar.client.impl.MessageChunkingTest" />
|
||||||
|
<testcase name="testLargeMessageAckTimeOut" time="8.543" classname="org.apache.pulsar.client.impl.MessageChunkingTest" />
|
||||||
|
<testcase name="testLargeMessageAckTimeOut" time="9.006" classname="org.apache.pulsar.client.impl.MessageChunkingTest" />
|
||||||
|
<testcase name="testLargeMessage" time="4.558" classname="org.apache.pulsar.client.impl.MessageChunkingTest" />
|
||||||
|
<testcase name="testMaxPendingChunkMessages" classname="org.apache.pulsar.client.impl.MessageChunkingTest">
|
||||||
|
<skipped />
|
||||||
|
</testcase>
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.client.impl.MessageParserTest" tests="2" errors="0" failures="0" skipped="0" time="5.484999999999999"><testcase name="testWithoutBatches" time="3.268" classname="org.apache.pulsar.client.impl.MessageParserTest" />
|
||||||
|
<testcase name="testWithBatches" time="2.217" classname="org.apache.pulsar.client.impl.MessageParserTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.client.impl.MultiTopicsReaderTest" tests="8" errors="0" failures="0" skipped="0" time="35.143"><testcase name="testReadMessageWithBatchingWithMessageInclusive" time="3.375" classname="org.apache.pulsar.client.impl.MultiTopicsReaderTest" />
|
||||||
|
<testcase name="testKeyHashRangeReader" time="4.126" classname="org.apache.pulsar.client.impl.MultiTopicsReaderTest" />
|
||||||
|
<testcase name="testRemoveSubscriptionForReaderNeedRemoveCursor" time="2.702" classname="org.apache.pulsar.client.impl.MultiTopicsReaderTest" />
|
||||||
|
<testcase name="testReadMessageWithBatching" time="2.961" classname="org.apache.pulsar.client.impl.MultiTopicsReaderTest" />
|
||||||
|
<testcase name="testReadMessageWithoutBatchingWithMessageInclusive" time="3.025" classname="org.apache.pulsar.client.impl.MultiTopicsReaderTest" />
|
||||||
|
<testcase name="testMultiReaderSeek" time="3.024" classname="org.apache.pulsar.client.impl.MultiTopicsReaderTest" />
|
||||||
|
<testcase name="testReadMessageWithoutBatching" time="3.572" classname="org.apache.pulsar.client.impl.MultiTopicsReaderTest" />
|
||||||
|
<testcase name="testReaderWithTimeLong" time="12.358" classname="org.apache.pulsar.client.impl.MultiTopicsReaderTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.client.impl.NegativeAcksTest" tests="32" errors="0" failures="0" skipped="0" time="10.661999999999999"><testcase name="testNegativeAcks" time="0.306" classname="org.apache.pulsar.client.impl.NegativeAcksTest" />
|
||||||
|
<testcase name="testNegativeAcks" time="0.306" classname="org.apache.pulsar.client.impl.NegativeAcksTest" />
|
||||||
|
<testcase name="testNegativeAcks" time="0.251" classname="org.apache.pulsar.client.impl.NegativeAcksTest" />
|
||||||
|
<testcase name="testNegativeAcks" time="0.275" classname="org.apache.pulsar.client.impl.NegativeAcksTest" />
|
||||||
|
<testcase name="testNegativeAcks" time="0.334" classname="org.apache.pulsar.client.impl.NegativeAcksTest" />
|
||||||
|
<testcase name="testNegativeAcks" time="0.293" classname="org.apache.pulsar.client.impl.NegativeAcksTest" />
|
||||||
|
<testcase name="testNegativeAcks" time="0.401" classname="org.apache.pulsar.client.impl.NegativeAcksTest" />
|
||||||
|
<testcase name="testNegativeAcks" time="0.691" classname="org.apache.pulsar.client.impl.NegativeAcksTest" />
|
||||||
|
<testcase name="testNegativeAcks" time="0.296" classname="org.apache.pulsar.client.impl.NegativeAcksTest" />
|
||||||
|
<testcase name="testNegativeAcks" time="0.385" classname="org.apache.pulsar.client.impl.NegativeAcksTest" />
|
||||||
|
<testcase name="testNegativeAcks" time="0.318" classname="org.apache.pulsar.client.impl.NegativeAcksTest" />
|
||||||
|
<testcase name="testNegativeAcks" time="0.370" classname="org.apache.pulsar.client.impl.NegativeAcksTest" />
|
||||||
|
<testcase name="testNegativeAcks" time="0.344" classname="org.apache.pulsar.client.impl.NegativeAcksTest" />
|
||||||
|
<testcase name="testNegativeAcks" time="0.343" classname="org.apache.pulsar.client.impl.NegativeAcksTest" />
|
||||||
|
<testcase name="testNegativeAcks" time="0.312" classname="org.apache.pulsar.client.impl.NegativeAcksTest" />
|
||||||
|
<testcase name="testNegativeAcks" time="0.307" classname="org.apache.pulsar.client.impl.NegativeAcksTest" />
|
||||||
|
<testcase name="testNegativeAcks" time="0.322" classname="org.apache.pulsar.client.impl.NegativeAcksTest" />
|
||||||
|
<testcase name="testNegativeAcks" time="0.308" classname="org.apache.pulsar.client.impl.NegativeAcksTest" />
|
||||||
|
<testcase name="testNegativeAcks" time="0.293" classname="org.apache.pulsar.client.impl.NegativeAcksTest" />
|
||||||
|
<testcase name="testNegativeAcks" time="0.420" classname="org.apache.pulsar.client.impl.NegativeAcksTest" />
|
||||||
|
<testcase name="testNegativeAcks" time="0.406" classname="org.apache.pulsar.client.impl.NegativeAcksTest" />
|
||||||
|
<testcase name="testNegativeAcks" time="0.330" classname="org.apache.pulsar.client.impl.NegativeAcksTest" />
|
||||||
|
<testcase name="testNegativeAcks" time="0.307" classname="org.apache.pulsar.client.impl.NegativeAcksTest" />
|
||||||
|
<testcase name="testNegativeAcks" time="0.308" classname="org.apache.pulsar.client.impl.NegativeAcksTest" />
|
||||||
|
<testcase name="testNegativeAcks" time="0.274" classname="org.apache.pulsar.client.impl.NegativeAcksTest" />
|
||||||
|
<testcase name="testNegativeAcks" time="0.270" classname="org.apache.pulsar.client.impl.NegativeAcksTest" />
|
||||||
|
<testcase name="testNegativeAcks" time="0.344" classname="org.apache.pulsar.client.impl.NegativeAcksTest" />
|
||||||
|
<testcase name="testNegativeAcks" time="0.289" classname="org.apache.pulsar.client.impl.NegativeAcksTest" />
|
||||||
|
<testcase name="testNegativeAcks" time="0.321" classname="org.apache.pulsar.client.impl.NegativeAcksTest" />
|
||||||
|
<testcase name="testNegativeAcks" time="0.307" classname="org.apache.pulsar.client.impl.NegativeAcksTest" />
|
||||||
|
<testcase name="testNegativeAcks" time="0.318" classname="org.apache.pulsar.client.impl.NegativeAcksTest" />
|
||||||
|
<testcase name="testNegativeAcks" time="0.313" classname="org.apache.pulsar.client.impl.NegativeAcksTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.client.impl.PatternTopicsConsumerImplTest" tests="11" errors="0" failures="0" skipped="0" time="62.62"><testcase name="testStartEmptyPatternConsumer" time="7.254" classname="org.apache.pulsar.client.impl.PatternTopicsConsumerImplTest" />
|
||||||
|
<testcase name="testBinaryProtoToGetTopicsOfNamespaceAll" time="5.205" classname="org.apache.pulsar.client.impl.PatternTopicsConsumerImplTest" />
|
||||||
|
<testcase name="testPatternTopicsSubscribeWithBuilderFail" time="2.329" classname="org.apache.pulsar.client.impl.PatternTopicsConsumerImplTest" />
|
||||||
|
<testcase name="testPubRateOnNonPersistent" time="10.899" classname="org.apache.pulsar.client.impl.PatternTopicsConsumerImplTest" />
|
||||||
|
<testcase name="testTopicDeletion" time="4.834" classname="org.apache.pulsar.client.impl.PatternTopicsConsumerImplTest" />
|
||||||
|
<testcase name="testAutoUnbubscribePatternConsumer" time="6.349" classname="org.apache.pulsar.client.impl.PatternTopicsConsumerImplTest" />
|
||||||
|
<testcase name="testTopicsPatternFilter" time="3.481" classname="org.apache.pulsar.client.impl.PatternTopicsConsumerImplTest" />
|
||||||
|
<testcase name="testBinaryProtoToGetTopicsOfNamespaceNonPersistent" time="5.179" classname="org.apache.pulsar.client.impl.PatternTopicsConsumerImplTest" />
|
||||||
|
<testcase name="testBinaryProtoToGetTopicsOfNamespacePersistent" time="2.716" classname="org.apache.pulsar.client.impl.PatternTopicsConsumerImplTest" />
|
||||||
|
<testcase name="testTopicsListMinus" time="7.952" classname="org.apache.pulsar.client.impl.PatternTopicsConsumerImplTest" />
|
||||||
|
<testcase name="testAutoSubscribePatternConsumer" time="6.422" classname="org.apache.pulsar.client.impl.PatternTopicsConsumerImplTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.client.impl.PerMessageUnAcknowledgedRedeliveryTest" tests="5" errors="0" failures="0" skipped="0" time="33.504"><testcase name="testSharedAckedNormalTopic" time="8.135" classname="org.apache.pulsar.client.impl.PerMessageUnAcknowledgedRedeliveryTest" />
|
||||||
|
<testcase name="testUnAckedMessageTrackerSize" time="4.256" classname="org.apache.pulsar.client.impl.PerMessageUnAcknowledgedRedeliveryTest" />
|
||||||
|
<testcase name="testSharedAckedPartitionedTopic" time="6.138" classname="org.apache.pulsar.client.impl.PerMessageUnAcknowledgedRedeliveryTest" />
|
||||||
|
<testcase name="testExclusiveAckedNormalTopic" time="7.381" classname="org.apache.pulsar.client.impl.PerMessageUnAcknowledgedRedeliveryTest" />
|
||||||
|
<testcase name="testFailoverAckedNormalTopic" time="7.594" classname="org.apache.pulsar.client.impl.PerMessageUnAcknowledgedRedeliveryTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.client.impl.PulsarMultiHostClientTest" tests="3" errors="0" failures="0" skipped="0" time="15.314"><testcase name="testMultiHostUrlRetrySuccess" time="3.646" classname="org.apache.pulsar.client.impl.PulsarMultiHostClientTest" />
|
||||||
|
<testcase name="testGetPartitionedTopicDataTimeout" time="5.677" classname="org.apache.pulsar.client.impl.PulsarMultiHostClientTest" />
|
||||||
|
<testcase name="testGetPartitionedTopicMetaData" time="5.991" classname="org.apache.pulsar.client.impl.PulsarMultiHostClientTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.client.impl.RawMessageSerDeserTest" tests="1" errors="0" failures="0" skipped="0" time="0.01"><testcase name="testSerializationAndDeserialization" time="0.010" classname="org.apache.pulsar.client.impl.RawMessageSerDeserTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.client.impl.SchemaDeleteTest" tests="1" errors="0" failures="0" skipped="0" time="1.937"><testcase name="createTopicDeleteTopicCreateTopic" time="1.937" classname="org.apache.pulsar.client.impl.SchemaDeleteTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.client.impl.SequenceIdWithErrorTest" tests="5" errors="0" failures="0" skipped="2" time="17.976"><testcase name="testCheckSequenceId" time="4.085" classname="org.apache.pulsar.client.impl.SequenceIdWithErrorTest" />
|
||||||
|
<testcase name="testDeleteTopicWithMissingData" time="5.987" classname="org.apache.pulsar.client.impl.SequenceIdWithErrorTest" />
|
||||||
|
<testcase name="testTopicWithWildCardChar" time="7.904" classname="org.apache.pulsar.client.impl.SequenceIdWithErrorTest" />
|
||||||
|
<testcase name="testCrashBrokerWithoutCursorLedgerLeak" classname="org.apache.pulsar.client.impl.SequenceIdWithErrorTest">
|
||||||
|
<skipped />
|
||||||
|
</testcase>
|
||||||
|
<testcase name="testSkipCorruptDataLedger" classname="org.apache.pulsar.client.impl.SequenceIdWithErrorTest">
|
||||||
|
<skipped />
|
||||||
|
</testcase>
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.client.impl.TopicDoesNotExistsTest" tests="2" errors="0" failures="0" skipped="0" time="4.053"><testcase name="testCreateConsumerOnNotExistsTopic" time="2.030" classname="org.apache.pulsar.client.impl.TopicDoesNotExistsTest" />
|
||||||
|
<testcase name="testCreateProducerOnNotExistsTopic" time="2.023" classname="org.apache.pulsar.client.impl.TopicDoesNotExistsTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.client.impl.TopicFromMessageTest" tests="5" errors="0" failures="0" skipped="0" time="13.659"><testcase name="testSingleTopicConsumerNoBatchFullName" time="2.554" classname="org.apache.pulsar.client.impl.TopicFromMessageTest" />
|
||||||
|
<testcase name="testMultiTopicConsumerBatchShortName" time="2.488" classname="org.apache.pulsar.client.impl.TopicFromMessageTest" />
|
||||||
|
<testcase name="testSingleTopicConsumerNoBatchShortName" time="2.704" classname="org.apache.pulsar.client.impl.TopicFromMessageTest" />
|
||||||
|
<testcase name="testMultiTopicConsumerNoBatchShortName" time="3.400" classname="org.apache.pulsar.client.impl.TopicFromMessageTest" />
|
||||||
|
<testcase name="testSingleTopicConsumerBatchShortName" time="2.513" classname="org.apache.pulsar.client.impl.TopicFromMessageTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.client.impl.TopicsConsumerImplTest" tests="17" errors="0" failures="0" skipped="0" time="133.44500000000002"><testcase name="testTopicAutoUpdatePartitions" time="5.573" classname="org.apache.pulsar.client.impl.TopicsConsumerImplTest" />
|
||||||
|
<testcase name="testDifferentTopicsNameSubscribe" time="3.010" classname="org.apache.pulsar.client.impl.TopicsConsumerImplTest" />
|
||||||
|
<testcase name="testGetLastMessageId" time="5.249" classname="org.apache.pulsar.client.impl.TopicsConsumerImplTest" />
|
||||||
|
<testcase name="testConsumerUnackedRedelivery" time="17.692" classname="org.apache.pulsar.client.impl.TopicsConsumerImplTest" />
|
||||||
|
<testcase name="testSubscriptionMustCompleteWhenOperationTimeoutOnMultipleTopics" time="5.704" classname="org.apache.pulsar.client.impl.TopicsConsumerImplTest" />
|
||||||
|
<testcase name="testConsumerDistributionInFailoverSubscriptionWhenUpdatePartitions" time="2.862" classname="org.apache.pulsar.client.impl.TopicsConsumerImplTest" />
|
||||||
|
<testcase name="multiTopicsInDifferentNameSpace" time="8.198" classname="org.apache.pulsar.client.impl.TopicsConsumerImplTest" />
|
||||||
|
<testcase name="testDefaultBacklogTTL" time="10.677" classname="org.apache.pulsar.client.impl.TopicsConsumerImplTest" />
|
||||||
|
<testcase name="testGetConsumersAndGetTopics" time="6.497" classname="org.apache.pulsar.client.impl.TopicsConsumerImplTest" />
|
||||||
|
<testcase name="testSubscribeUnsubscribeSingleTopic" time="4.287" classname="org.apache.pulsar.client.impl.TopicsConsumerImplTest" />
|
||||||
|
<testcase name="testResubscribeSameTopic" time="6.183" classname="org.apache.pulsar.client.impl.TopicsConsumerImplTest" />
|
||||||
|
<testcase name="testSyncProducerAndConsumer" time="4.209" classname="org.apache.pulsar.client.impl.TopicsConsumerImplTest" />
|
||||||
|
<testcase name="testPartitionsUpdatesForMultipleTopics" time="5.657" classname="org.apache.pulsar.client.impl.TopicsConsumerImplTest" />
|
||||||
|
<testcase name="testTopicsNameSubscribeWithBuilderFail" time="2.639" classname="org.apache.pulsar.client.impl.TopicsConsumerImplTest" />
|
||||||
|
<testcase name="testMultiTopicsMessageListener" time="8.150" classname="org.apache.pulsar.client.impl.TopicsConsumerImplTest" />
|
||||||
|
<testcase name="testTopicNameValid" time="6.882" classname="org.apache.pulsar.client.impl.TopicsConsumerImplTest" />
|
||||||
|
<testcase name="testAsyncConsumer" time="29.976" classname="org.apache.pulsar.client.impl.TopicsConsumerImplTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.client.impl.UnAcknowledgedMessagesTimeoutTest" tests="7" errors="0" failures="0" skipped="0" time="43.828"><testcase name="testCheckUnAcknowledgedMessageTimer" time="8.669" classname="org.apache.pulsar.client.impl.UnAcknowledgedMessagesTimeoutTest" />
|
||||||
|
<testcase name="testExclusiveSingleAckedNormalTopic" time="5.291" classname="org.apache.pulsar.client.impl.UnAcknowledgedMessagesTimeoutTest" />
|
||||||
|
<testcase name="testFailoverSingleAckedPartitionedTopic" time="7.119" classname="org.apache.pulsar.client.impl.UnAcknowledgedMessagesTimeoutTest" />
|
||||||
|
<testcase name="testSharedSingleAckedPartitionedTopic" time="12.054" classname="org.apache.pulsar.client.impl.UnAcknowledgedMessagesTimeoutTest" />
|
||||||
|
<testcase name="testAckTimeoutMinValue" time="2.075" classname="org.apache.pulsar.client.impl.UnAcknowledgedMessagesTimeoutTest" />
|
||||||
|
<testcase name="testExclusiveCumulativeAckedNormalTopic" time="6.772" classname="org.apache.pulsar.client.impl.UnAcknowledgedMessagesTimeoutTest" />
|
||||||
|
<testcase name="testSingleMessageBatch" time="1.848" classname="org.apache.pulsar.client.impl.UnAcknowledgedMessagesTimeoutTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.client.impl.ZeroQueueSizeTest" tests="14" errors="0" failures="0" skipped="0" time="15.712"><testcase name="zeroQueueSizeSharedSubscription" time="0.197" classname="org.apache.pulsar.client.impl.ZeroQueueSizeTest" />
|
||||||
|
<testcase name="testPauseAndResume" time="2.574" classname="org.apache.pulsar.client.impl.ZeroQueueSizeTest" />
|
||||||
|
<testcase name="testZeroQueueSizeMessageRedeliveryForAsyncReceive" time="2.155" classname="org.apache.pulsar.client.impl.ZeroQueueSizeTest" />
|
||||||
|
<testcase name="zeroQueueSizeConsumerListener" time="0.139" classname="org.apache.pulsar.client.impl.ZeroQueueSizeTest" />
|
||||||
|
<testcase name="zeroQueueSizeFailoverSubscription" time="0.227" classname="org.apache.pulsar.client.impl.ZeroQueueSizeTest" />
|
||||||
|
<testcase name="validQueueSizeConfig" time="0.013" classname="org.apache.pulsar.client.impl.ZeroQueueSizeTest" />
|
||||||
|
<testcase name="zeroQueueSizeNormalConsumer" time="0.123" classname="org.apache.pulsar.client.impl.ZeroQueueSizeTest" />
|
||||||
|
<testcase name="zeroQueueSizeReceieveAsyncInCompatibility" time="0.037" classname="org.apache.pulsar.client.impl.ZeroQueueSizeTest" />
|
||||||
|
<testcase name="InvalidQueueSizeConfig" time="0.139" classname="org.apache.pulsar.client.impl.ZeroQueueSizeTest" />
|
||||||
|
<testcase name="testZeroQueueSizeMessageRedeliveryForListener" time="2.206" classname="org.apache.pulsar.client.impl.ZeroQueueSizeTest" />
|
||||||
|
<testcase name="testZeroQueueSizeMessageRedelivery" time="2.227" classname="org.apache.pulsar.client.impl.ZeroQueueSizeTest" />
|
||||||
|
<testcase name="zeroQueueSizePartitionedTopicInCompatibility" time="0.161" classname="org.apache.pulsar.client.impl.ZeroQueueSizeTest" />
|
||||||
|
<testcase name="testFailedZeroQueueSizeBatchMessage" time="3.302" classname="org.apache.pulsar.client.impl.ZeroQueueSizeTest" />
|
||||||
|
<testcase name="testPauseAndResumeWithUnloading" time="2.212" classname="org.apache.pulsar.client.impl.ZeroQueueSizeTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.api.raw.RawMessageImplTest" tests="1" errors="0" failures="0" skipped="0" time="0.316"><testcase name="testGetProperties" time="0.316" classname="org.apache.pulsar.common.api.raw.RawMessageImplTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.compression.CommandsTest" tests="1" errors="0" failures="0" skipped="0" time="0.03"><testcase name="testChecksumSendCommand" time="0.030" classname="org.apache.pulsar.common.compression.CommandsTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.compression.CompressorCodecBackwardCompatTest" tests="6" errors="0" failures="0" skipped="0" time="0.22300000000000003"><testcase name="testCompressDecompress" time="0.130" classname="org.apache.pulsar.common.compression.CompressorCodecBackwardCompatTest" />
|
||||||
|
<testcase name="testCompressDecompress" time="0.019" classname="org.apache.pulsar.common.compression.CompressorCodecBackwardCompatTest" />
|
||||||
|
<testcase name="testCompressDecompress" time="0.013" classname="org.apache.pulsar.common.compression.CompressorCodecBackwardCompatTest" />
|
||||||
|
<testcase name="testCompressDecompress" time="0.043" classname="org.apache.pulsar.common.compression.CompressorCodecBackwardCompatTest" />
|
||||||
|
<testcase name="testCompressDecompress" time="0.011" classname="org.apache.pulsar.common.compression.CompressorCodecBackwardCompatTest" />
|
||||||
|
<testcase name="testCompressDecompress" time="0.007" classname="org.apache.pulsar.common.compression.CompressorCodecBackwardCompatTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.compression.CompressorCodecTest" tests="45" errors="0" failures="0" skipped="0" time="0.7370000000000004"><testcase name="testCompressDecompress" time="0.040" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
<testcase name="testMultpileUsages" time="0.015" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
<testcase name="testMultpileUsages" time="0.002" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
<testcase name="testCompressDecompress" time="0.055" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
<testcase name="testMultpileUsages" time="0.013" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
<testcase name="testCompressDecompress" time="0.018" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
<testcase name="testMultpileUsages" time="0.037" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
<testcase name="testCompressDecompress" time="0.008" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
<testcase name="testDecompressFromSampleBuffer" time="0.018" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
<testcase name="testDecompressReadonlyByteBuf" time="0.026" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
<testcase name="testDecompressReadonlyByteBuf" time="0.006" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
<testcase name="testCodecProvider" time="0.029" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
<testcase name="testEmptyInput" time="0.011" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
<testcase name="testEmptyInput" time="0.006" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
<testcase name="testCompressDecompress" time="0.022" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
<testcase name="testCodecProvider" time="0.010" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
<testcase name="testDecompressFromSampleBuffer" time="0.010" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
<testcase name="testMultpileUsages" time="0.012" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
<testcase name="testCodecProvider" time="0.030" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
<testcase name="testEmptyInput" time="0.005" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
<testcase name="testDecompressReadonlyByteBuf" time="0.011" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
<testcase name="testCompressDecompress" time="0.011" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
<testcase name="testDecompressReadonlyByteBuf" time="0.019" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
<testcase name="testCompressDecompress" time="0.020" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
<testcase name="testCompressDecompress" time="0.004" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
<testcase name="testMultpileUsages" time="0.002" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
<testcase name="testEmptyInput" time="0.011" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
<testcase name="testDecompressReadonlyByteBuf" time="0.007" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
<testcase name="testDecompressFromSampleBuffer" time="0.018" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
<testcase name="testDecompressFromSampleBuffer" time="0.014" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
<testcase name="testDecompressFromSampleBuffer" time="0.016" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
<testcase name="testDecompressReadonlyByteBuf" time="0.032" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
<testcase name="testDecompressReadonlyByteBuf" time="0.018" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
<testcase name="testMultpileUsages" time="0.032" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
<testcase name="testCompressDecompress" time="0.023" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
<testcase name="testCodecProvider" time="0.017" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
<testcase name="testMultpileUsages" time="0.001" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
<testcase name="testCompressDecompress" time="0.020" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
<testcase name="testMultpileUsages" time="0.003" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
<testcase name="testDecompressReadonlyByteBuf" time="0.009" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
<testcase name="testEmptyInput" time="0.017" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
<testcase name="testCodecProvider" time="0.011" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
<testcase name="testDecompressReadonlyByteBuf" time="0.035" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
<testcase name="testDecompressReadonlyByteBuf" time="0.012" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
<testcase name="testMultpileUsages" time="0.001" classname="org.apache.pulsar.common.compression.CompressorCodecTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.compression.Crc32cChecksumTest" tests="6" errors="0" failures="0" skipped="0" time="5.4030000000000005"><testcase name="testCrc32cHardware" time="0.012" classname="org.apache.pulsar.common.compression.Crc32cChecksumTest" />
|
||||||
|
<testcase name="testCrc32cDirectMemoryHardware" time="0.061" classname="org.apache.pulsar.common.compression.Crc32cChecksumTest" />
|
||||||
|
<testcase name="testCrc32c" time="0.014" classname="org.apache.pulsar.common.compression.Crc32cChecksumTest" />
|
||||||
|
<testcase name="testCrc32cSoftware" time="0.011" classname="org.apache.pulsar.common.compression.Crc32cChecksumTest" />
|
||||||
|
<testcase name="testCrc32cIncremental" time="5.296" classname="org.apache.pulsar.common.compression.Crc32cChecksumTest" />
|
||||||
|
<testcase name="testCrc32cIncrementalUsingProvider" time="0.009" classname="org.apache.pulsar.common.compression.Crc32cChecksumTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.lookup.data.LookupDataTest" tests="4" errors="0" failures="0" skipped="0" time="1.53"><testcase name="testLoadReportSerialization" time="0.456" classname="org.apache.pulsar.common.lookup.data.LookupDataTest" />
|
||||||
|
<testcase name="testUrlEncoder" time="0.025" classname="org.apache.pulsar.common.lookup.data.LookupDataTest" />
|
||||||
|
<testcase name="serializeToJsonTest" time="1.032" classname="org.apache.pulsar.common.lookup.data.LookupDataTest" />
|
||||||
|
<testcase name="withConstructor" time="0.017" classname="org.apache.pulsar.common.lookup.data.LookupDataTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.naming.MetadataTests" tests="2" errors="0" failures="0" skipped="0" time="0.161"><testcase name="testInvalidMetadata" time="0.066" classname="org.apache.pulsar.common.naming.MetadataTests" />
|
||||||
|
<testcase name="testValidMetadata" time="0.095" classname="org.apache.pulsar.common.naming.MetadataTests" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.naming.NamespaceBundleTest" tests="6" errors="0" failures="0" skipped="0" time="0.064"><testcase name="testIncludes" time="0.010" classname="org.apache.pulsar.common.naming.NamespaceBundleTest" />
|
||||||
|
<testcase name="testGetBundle" time="0.014" classname="org.apache.pulsar.common.naming.NamespaceBundleTest" />
|
||||||
|
<testcase name="testCompareTo" time="0.013" classname="org.apache.pulsar.common.naming.NamespaceBundleTest" />
|
||||||
|
<testcase name="testConstructor" time="0.010" classname="org.apache.pulsar.common.naming.NamespaceBundleTest" />
|
||||||
|
<testcase name="testToString" time="0.008" classname="org.apache.pulsar.common.naming.NamespaceBundleTest" />
|
||||||
|
<testcase name="testEquals" time="0.009" classname="org.apache.pulsar.common.naming.NamespaceBundleTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.naming.NamespaceBundlesTest" tests="5" errors="0" failures="0" skipped="0" time="0.09899999999999999"><testcase name="testConstructor" time="0.018" classname="org.apache.pulsar.common.naming.NamespaceBundlesTest" />
|
||||||
|
<testcase name="testSplitBundleInTwo" time="0.013" classname="org.apache.pulsar.common.naming.NamespaceBundlesTest" />
|
||||||
|
<testcase name="testsplitBundles" time="0.043" classname="org.apache.pulsar.common.naming.NamespaceBundlesTest" />
|
||||||
|
<testcase name="testFindBundle" time="0.012" classname="org.apache.pulsar.common.naming.NamespaceBundlesTest" />
|
||||||
|
<testcase name="testSplitBundleByFixBoundary" time="0.013" classname="org.apache.pulsar.common.naming.NamespaceBundlesTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.naming.NamespaceNameTest" tests="2" errors="0" failures="0" skipped="0" time="0.207"><testcase name="namespace" time="0.206" classname="org.apache.pulsar.common.naming.NamespaceNameTest" />
|
||||||
|
<testcase name="testNewScheme" time="0.001" classname="org.apache.pulsar.common.naming.NamespaceNameTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.naming.ServiceConfigurationTest" tests="4" errors="0" failures="0" skipped="0" time="0.048"><testcase name="testOptionalSettingPresent" time="0.005" classname="org.apache.pulsar.common.naming.ServiceConfigurationTest" />
|
||||||
|
<testcase name="testOptionalSettingEmpty" time="0.005" classname="org.apache.pulsar.common.naming.ServiceConfigurationTest" />
|
||||||
|
<testcase name="testInit" time="0.024" classname="org.apache.pulsar.common.naming.ServiceConfigurationTest" />
|
||||||
|
<testcase name="testInitFailure" time="0.014" classname="org.apache.pulsar.common.naming.ServiceConfigurationTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.naming.TopicNameTest" tests="4" errors="0" failures="0" skipped="0" time="0.529"><testcase name="testShortTopicName" time="0.029" classname="org.apache.pulsar.common.naming.TopicNameTest" />
|
||||||
|
<testcase name="topic" time="0.035" classname="org.apache.pulsar.common.naming.TopicNameTest" />
|
||||||
|
<testcase name="testTopicNameWithoutCluster" time="0.016" classname="org.apache.pulsar.common.naming.TopicNameTest" />
|
||||||
|
<testcase name="testDecodeEncode" time="0.449" classname="org.apache.pulsar.common.naming.TopicNameTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.net.ServiceURITest" tests="21" errors="0" failures="0" skipped="0" time="0.23700000000000004"><testcase name="testEmptyServiceUriString" time="0.029" classname="org.apache.pulsar.common.net.ServiceURITest" />
|
||||||
|
<testcase name="testMultipleHostsSemiColon" time="0.005" classname="org.apache.pulsar.common.net.ServiceURITest" />
|
||||||
|
<testcase name="testInvalidServiceUris" time="0.018" classname="org.apache.pulsar.common.net.ServiceURITest" />
|
||||||
|
<testcase name="testMultipleHostsWithoutHttpPorts" time="0.000" classname="org.apache.pulsar.common.net.ServiceURITest" />
|
||||||
|
<testcase name="testRootPath" time="0.009" classname="org.apache.pulsar.common.net.ServiceURITest" />
|
||||||
|
<testcase name="testMultipleHostsMixedPorts" time="0.001" classname="org.apache.pulsar.common.net.ServiceURITest" />
|
||||||
|
<testcase name="testMultipleHostsWithoutPulsarTlsPorts" time="0.001" classname="org.apache.pulsar.common.net.ServiceURITest" />
|
||||||
|
<testcase name="testUserInfoWithMultipleHosts" time="0.008" classname="org.apache.pulsar.common.net.ServiceURITest" />
|
||||||
|
<testcase name="testMultipleHostsComma" time="0.000" classname="org.apache.pulsar.common.net.ServiceURITest" />
|
||||||
|
<testcase name="testMultipleHostsMixed" time="0.001" classname="org.apache.pulsar.common.net.ServiceURITest" />
|
||||||
|
<testcase name="testUserInfo" time="0.003" classname="org.apache.pulsar.common.net.ServiceURITest" />
|
||||||
|
<testcase name="testIpv6UriWithoutPulsarPort" time="0.003" classname="org.apache.pulsar.common.net.ServiceURITest" />
|
||||||
|
<testcase name="testMultiIpv6Uri" time="0.011" classname="org.apache.pulsar.common.net.ServiceURITest" />
|
||||||
|
<testcase name="testMultiIpv6UriWithoutPulsarPort" time="0.013" classname="org.apache.pulsar.common.net.ServiceURITest" />
|
||||||
|
<testcase name="testEmptyPath" time="0.115" classname="org.apache.pulsar.common.net.ServiceURITest" />
|
||||||
|
<testcase name="testNullServiceUriString" time="0.009" classname="org.apache.pulsar.common.net.ServiceURITest" />
|
||||||
|
<testcase name="testNullServiceUriInstance" time="0.001" classname="org.apache.pulsar.common.net.ServiceURITest" />
|
||||||
|
<testcase name="testMissingServiceName" time="0.006" classname="org.apache.pulsar.common.net.ServiceURITest" />
|
||||||
|
<testcase name="testMultipleHostsWithoutHttpsPorts" time="0.000" classname="org.apache.pulsar.common.net.ServiceURITest" />
|
||||||
|
<testcase name="testMultipleHostsWithoutPulsarPorts" time="0.000" classname="org.apache.pulsar.common.net.ServiceURITest" />
|
||||||
|
<testcase name="testIpv6Uri" time="0.004" classname="org.apache.pulsar.common.net.ServiceURITest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.policies.data.AutoFailoverPolicyDataTest" tests="1" errors="0" failures="0" skipped="0" time="0.015"><testcase name="testAutoFailoverPolicyData" time="0.015" classname="org.apache.pulsar.common.policies.data.AutoFailoverPolicyDataTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.policies.data.AutoFailoverPolicyTypeTest" tests="1" errors="0" failures="0" skipped="0" time="0.019"><testcase name="testAutoFailoverPolicyType" time="0.019" classname="org.apache.pulsar.common.policies.data.AutoFailoverPolicyTypeTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.policies.data.AutoTopicCreationOverrideTest" tests="6" errors="0" failures="0" skipped="0" time="0.064"><testcase name="testInvalidTopicType" time="0.012" classname="org.apache.pulsar.common.policies.data.AutoTopicCreationOverrideTest" />
|
||||||
|
<testcase name="testNumPartitionsTooLow" time="0.006" classname="org.apache.pulsar.common.policies.data.AutoTopicCreationOverrideTest" />
|
||||||
|
<testcase name="testNumPartitionsNotSet" time="0.003" classname="org.apache.pulsar.common.policies.data.AutoTopicCreationOverrideTest" />
|
||||||
|
<testcase name="testValidOverrideNonPartitioned" time="0.021" classname="org.apache.pulsar.common.policies.data.AutoTopicCreationOverrideTest" />
|
||||||
|
<testcase name="testNumPartitionsOnNonPartitioned" time="0.018" classname="org.apache.pulsar.common.policies.data.AutoTopicCreationOverrideTest" />
|
||||||
|
<testcase name="testValidOverridePartitioned" time="0.004" classname="org.apache.pulsar.common.policies.data.AutoTopicCreationOverrideTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.policies.data.BacklogQuotaTest" tests="1" errors="0" failures="0" skipped="0" time="0.012"><testcase name="testBacklogQuotaIdentity" time="0.012" classname="org.apache.pulsar.common.policies.data.BacklogQuotaTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.policies.data.ClusterDataTest" tests="1" errors="0" failures="0" skipped="0" time="0.009"><testcase name="simple" time="0.009" classname="org.apache.pulsar.common.policies.data.ClusterDataTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.policies.data.ConsumerStatsTest" tests="1" errors="0" failures="0" skipped="0" time="0.008"><testcase name="testConsumerStats" time="0.008" classname="org.apache.pulsar.common.policies.data.ConsumerStatsTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.policies.data.EnsemblePlacementPolicyConfigTest" tests="2" errors="0" failures="0" skipped="0" time="0.948"><testcase name="testDecodeFailed" time="0.475" classname="org.apache.pulsar.common.policies.data.EnsemblePlacementPolicyConfigTest" />
|
||||||
|
<testcase name="testEncodeDecodeSuccessfully" time="0.473" classname="org.apache.pulsar.common.policies.data.EnsemblePlacementPolicyConfigTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.policies.data.LocalPolicesTest" tests="1" errors="0" failures="0" skipped="0" time="0.048"><testcase name="testLocalPolices" time="0.048" classname="org.apache.pulsar.common.policies.data.LocalPolicesTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.policies.data.NamespaceIsolationDataTest" tests="1" errors="0" failures="0" skipped="0" time="0.076"><testcase name="testNamespaceIsolationData" time="0.076" classname="org.apache.pulsar.common.policies.data.NamespaceIsolationDataTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.policies.data.NamespaceOwnershipStatusTest" tests="1" errors="0" failures="0" skipped="0" time="0.045"><testcase name="testSerialization" time="0.045" classname="org.apache.pulsar.common.policies.data.NamespaceOwnershipStatusTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.policies.data.OffloadPoliciesTest" tests="6" errors="0" failures="0" skipped="0" time="0.216"><testcase name="testGcsConfiguration" time="0.011" classname="org.apache.pulsar.common.policies.data.OffloadPoliciesTest" />
|
||||||
|
<testcase name="mergeTest" time="0.005" classname="org.apache.pulsar.common.policies.data.OffloadPoliciesTest" />
|
||||||
|
<testcase name="compatibleWithConfigFileTest" time="0.154" classname="org.apache.pulsar.common.policies.data.OffloadPoliciesTest" />
|
||||||
|
<testcase name="testCreateByProperties" time="0.012" classname="org.apache.pulsar.common.policies.data.OffloadPoliciesTest" />
|
||||||
|
<testcase name="testS3Configuration" time="0.009" classname="org.apache.pulsar.common.policies.data.OffloadPoliciesTest" />
|
||||||
|
<testcase name="oldPoliciesCompatibleTest" time="0.025" classname="org.apache.pulsar.common.policies.data.OffloadPoliciesTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.policies.data.PartitionedTopicStatsTest" tests="1" errors="0" failures="0" skipped="0" time="0.012"><testcase name="testPartitionedTopicStats" time="0.012" classname="org.apache.pulsar.common.policies.data.PartitionedTopicStatsTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.policies.data.PersistencePoliciesTest" tests="1" errors="0" failures="0" skipped="0" time="0.019"><testcase name="testPersistencePolicies" time="0.019" classname="org.apache.pulsar.common.policies.data.PersistencePoliciesTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.policies.data.PersistentOfflineTopicStatsTest" tests="1" errors="0" failures="0" skipped="0" time="0.029"><testcase name="testPersistentOfflineTopicStats" time="0.029" classname="org.apache.pulsar.common.policies.data.PersistentOfflineTopicStatsTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.policies.data.PersistentTopicStatsTest" tests="2" errors="0" failures="0" skipped="0" time="0.051"><testcase name="testPersistentTopicStatsAggregation" time="0.015" classname="org.apache.pulsar.common.policies.data.PersistentTopicStatsTest" />
|
||||||
|
<testcase name="testPersistentTopicStats" time="0.036" classname="org.apache.pulsar.common.policies.data.PersistentTopicStatsTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.policies.data.PoliciesDataTest" tests="4" errors="0" failures="0" skipped="0" time="1.386"><testcase name="propertyAdmin" time="0.044" classname="org.apache.pulsar.common.policies.data.PoliciesDataTest" />
|
||||||
|
<testcase name="policies" time="0.011" classname="org.apache.pulsar.common.policies.data.PoliciesDataTest" />
|
||||||
|
<testcase name="bundlesData" time="1.224" classname="org.apache.pulsar.common.policies.data.PoliciesDataTest" />
|
||||||
|
<testcase name="bundlesPolicies" time="0.107" classname="org.apache.pulsar.common.policies.data.PoliciesDataTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.policies.data.PublisherStatsTest" tests="2" errors="0" failures="0" skipped="0" time="0.037"><testcase name="testPublisherStats" time="0.027" classname="org.apache.pulsar.common.policies.data.PublisherStatsTest" />
|
||||||
|
<testcase name="testPublisherStatsAggregation" time="0.010" classname="org.apache.pulsar.common.policies.data.PublisherStatsTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.policies.data.ReplicatorStatsTest" tests="2" errors="0" failures="0" skipped="0" time="0.03"><testcase name="testReplicatorStatsAdd" time="0.019" classname="org.apache.pulsar.common.policies.data.ReplicatorStatsTest" />
|
||||||
|
<testcase name="testReplicatorStatsNull" time="0.011" classname="org.apache.pulsar.common.policies.data.ReplicatorStatsTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.policies.data.ResourceQuotaTest" tests="2" errors="0" failures="0" skipped="0" time="0.045"><testcase name="testResourceQuotaDefault" time="0.038" classname="org.apache.pulsar.common.policies.data.ResourceQuotaTest" />
|
||||||
|
<testcase name="testResourceQuotaEqual" time="0.007" classname="org.apache.pulsar.common.policies.data.ResourceQuotaTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.policies.data.RetentionPolicesTest" tests="1" errors="0" failures="0" skipped="0" time="0.008"><testcase name="testRetentionPolices" time="0.008" classname="org.apache.pulsar.common.policies.data.RetentionPolicesTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.policies.impl.AutoFailoverPolicyFactoryTest" tests="1" errors="0" failures="0" skipped="0" time="0.022"><testcase name="testAutoFailoverPolicyFactory" time="0.022" classname="org.apache.pulsar.common.policies.impl.AutoFailoverPolicyFactoryTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.policies.impl.MinAvailablePolicyTest" tests="1" errors="0" failures="0" skipped="0" time="0.001"><testcase name="testMinAvailablePolicty" time="0.001" classname="org.apache.pulsar.common.policies.impl.MinAvailablePolicyTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.policies.impl.NamespaceIsolationPoliciesTest" tests="7" errors="0" failures="0" skipped="0" time="0.265"><testcase name="testBrokerAssignment" time="0.204" classname="org.apache.pulsar.common.policies.impl.NamespaceIsolationPoliciesTest" />
|
||||||
|
<testcase name="testGetNamespaceIsolationPolicyByName" time="0.012" classname="org.apache.pulsar.common.policies.impl.NamespaceIsolationPoliciesTest" />
|
||||||
|
<testcase name="testDeletePolicy" time="0.003" classname="org.apache.pulsar.common.policies.impl.NamespaceIsolationPoliciesTest" />
|
||||||
|
<testcase name="testSetPolicy" time="0.007" classname="org.apache.pulsar.common.policies.impl.NamespaceIsolationPoliciesTest" />
|
||||||
|
<testcase name="testJsonSerialization" time="0.025" classname="org.apache.pulsar.common.policies.impl.NamespaceIsolationPoliciesTest" />
|
||||||
|
<testcase name="testDefaultConstructor" time="0.011" classname="org.apache.pulsar.common.policies.impl.NamespaceIsolationPoliciesTest" />
|
||||||
|
<testcase name="testGetNamespaceIsolationPolicyByNamespace" time="0.003" classname="org.apache.pulsar.common.policies.impl.NamespaceIsolationPoliciesTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.policies.impl.NamespaceIsolationPolicyImplTest" tests="7" errors="0" failures="0" skipped="0" time="0.30900000000000005"><testcase name="testFindBrokers" time="0.168" classname="org.apache.pulsar.common.policies.impl.NamespaceIsolationPolicyImplTest" />
|
||||||
|
<testcase name="testGetSecondaryBrokers" time="0.018" classname="org.apache.pulsar.common.policies.impl.NamespaceIsolationPolicyImplTest" />
|
||||||
|
<testcase name="testShouldFailover" time="0.010" classname="org.apache.pulsar.common.policies.impl.NamespaceIsolationPolicyImplTest" />
|
||||||
|
<testcase name="testGetPrimaryBrokers" time="0.007" classname="org.apache.pulsar.common.policies.impl.NamespaceIsolationPolicyImplTest" />
|
||||||
|
<testcase name="testGetAvailablePrimaryBrokers" time="0.028" classname="org.apache.pulsar.common.policies.impl.NamespaceIsolationPolicyImplTest" />
|
||||||
|
<testcase name="testConstructor" time="0.070" classname="org.apache.pulsar.common.policies.impl.NamespaceIsolationPolicyImplTest" />
|
||||||
|
<testcase name="testIsPrimaryOrSecondaryBroker" time="0.008" classname="org.apache.pulsar.common.policies.impl.NamespaceIsolationPolicyImplTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.protocol.ByteBufPairTest" tests="2" errors="0" failures="0" skipped="0" time="4.9990000000000006"><testcase name="testEncoder" time="2.376" classname="org.apache.pulsar.common.protocol.ByteBufPairTest" />
|
||||||
|
<testcase name="testDoubleByteBuf" time="2.623" classname="org.apache.pulsar.common.protocol.ByteBufPairTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.protocol.CommandUtilsTests" tests="7" errors="0" failures="0" skipped="0" time="2.8120000000000003"><testcase name="testSkipBrokerEntryMetadata" time="0.014" classname="org.apache.pulsar.common.protocol.CommandUtilsTests" />
|
||||||
|
<testcase name="testPeekBrokerEntryMetadata" time="0.006" classname="org.apache.pulsar.common.protocol.CommandUtilsTests" />
|
||||||
|
<testcase name="testParseBrokerEntryMetadata" time="0.011" classname="org.apache.pulsar.common.protocol.CommandUtilsTests" />
|
||||||
|
<testcase name="testMetadataFromCommandSubscribe" time="0.013" classname="org.apache.pulsar.common.protocol.CommandUtilsTests" />
|
||||||
|
<testcase name="testMetadataFromCommandProducer" time="0.032" classname="org.apache.pulsar.common.protocol.CommandUtilsTests" />
|
||||||
|
<testcase name="testAddBrokerEntryMetadata" time="2.728" classname="org.apache.pulsar.common.protocol.CommandUtilsTests" />
|
||||||
|
<testcase name="testByteBufComposite" time="0.008" classname="org.apache.pulsar.common.protocol.CommandUtilsTests" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.protocol.MarkersTest" tests="6" errors="0" failures="0" skipped="0" time="3.2329999999999997"><testcase name="testSnapshot" time="3.129" classname="org.apache.pulsar.common.protocol.MarkersTest" />
|
||||||
|
<testcase name="testTxnAbortMarker" time="0.038" classname="org.apache.pulsar.common.protocol.MarkersTest" />
|
||||||
|
<testcase name="testUpdate" time="0.017" classname="org.apache.pulsar.common.protocol.MarkersTest" />
|
||||||
|
<testcase name="testTxnCommitMarker" time="0.012" classname="org.apache.pulsar.common.protocol.MarkersTest" />
|
||||||
|
<testcase name="testSnapshotRequest" time="0.022" classname="org.apache.pulsar.common.protocol.MarkersTest" />
|
||||||
|
<testcase name="testSnapshotResponse" time="0.015" classname="org.apache.pulsar.common.protocol.MarkersTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.protocol.PulsarDecoderTest" tests="1" errors="0" failures="0" skipped="0" time="3.69"><testcase name="testChannelRead" time="3.690" classname="org.apache.pulsar.common.protocol.PulsarDecoderTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.stats.JvmDefaultGCMetricsLoggerTest" tests="1" errors="0" failures="0" skipped="0" time="0.082"><testcase name="testInvokeJVMInternals" time="0.082" classname="org.apache.pulsar.common.stats.JvmDefaultGCMetricsLoggerTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.util.FieldParserTest" tests="1" errors="0" failures="0" skipped="0" time="0.242"><testcase name="testMap" time="0.242" classname="org.apache.pulsar.common.util.FieldParserTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.util.FileModifiedTimeUpdaterTest" tests="6" errors="0" failures="0" skipped="0" time="6.1610000000000005"><testcase name="testFileNotModified" time="0.021" classname="org.apache.pulsar.common.util.FileModifiedTimeUpdaterTest" />
|
||||||
|
<testcase name="testFileModified" time="2.036" classname="org.apache.pulsar.common.util.FileModifiedTimeUpdaterTest" />
|
||||||
|
<testcase name="testFileModified" time="2.014" classname="org.apache.pulsar.common.util.FileModifiedTimeUpdaterTest" />
|
||||||
|
<testcase name="testFileNotModified" time="0.037" classname="org.apache.pulsar.common.util.FileModifiedTimeUpdaterTest" />
|
||||||
|
<testcase name="testFileModified" time="2.020" classname="org.apache.pulsar.common.util.FileModifiedTimeUpdaterTest" />
|
||||||
|
<testcase name="testFileNotModified" time="0.033" classname="org.apache.pulsar.common.util.FileModifiedTimeUpdaterTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.util.RateLimiterTest" tests="11" errors="0" failures="0" skipped="0" time="7.199999999999998"><testcase name="testMultipleTryAcquire" time="0.014" classname="org.apache.pulsar.common.util.RateLimiterTest" />
|
||||||
|
<testcase name="testRateLimiterWithPermitUpdater" time="3.023" classname="org.apache.pulsar.common.util.RateLimiterTest" />
|
||||||
|
<testcase name="testTryAcquire" time="0.020" classname="org.apache.pulsar.common.util.RateLimiterTest" />
|
||||||
|
<testcase name="testTryAcquireNoPermits" time="0.002" classname="org.apache.pulsar.common.util.RateLimiterTest" />
|
||||||
|
<testcase name="testClose" time="0.012" classname="org.apache.pulsar.common.util.RateLimiterTest" />
|
||||||
|
<testcase name="testResetRate" time="3.024" classname="org.apache.pulsar.common.util.RateLimiterTest" />
|
||||||
|
<testcase name="testMultipleAcquire" time="0.021" classname="org.apache.pulsar.common.util.RateLimiterTest" />
|
||||||
|
<testcase name="testAcquire" time="0.044" classname="org.apache.pulsar.common.util.RateLimiterTest" />
|
||||||
|
<testcase name="testInvalidRenewTime" time="0.015" classname="org.apache.pulsar.common.util.RateLimiterTest" />
|
||||||
|
<testcase name="testRateLimiterWithFunction" time="0.007" classname="org.apache.pulsar.common.util.RateLimiterTest" />
|
||||||
|
<testcase name="testAcquireBlock" time="1.018" classname="org.apache.pulsar.common.util.RateLimiterTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.util.ReflectionsTest" tests="12" errors="0" failures="0" skipped="0" time="0.17200000000000001"><testcase name="testCreateInstanceNoNoArgConstructor" time="0.012" classname="org.apache.pulsar.common.util.ReflectionsTest" />
|
||||||
|
<testcase name="testCreateInstanceConstructorThrowsException" time="0.040" classname="org.apache.pulsar.common.util.ReflectionsTest" />
|
||||||
|
<testcase name="testCreateInstanceAbstractClass" time="0.013" classname="org.apache.pulsar.common.util.ReflectionsTest" />
|
||||||
|
<testcase name="testCreateTypedInstanceUnassignableClass" time="0.012" classname="org.apache.pulsar.common.util.ReflectionsTest" />
|
||||||
|
<testcase name="testCreateInstanceClassNotFound" time="0.010" classname="org.apache.pulsar.common.util.ReflectionsTest" />
|
||||||
|
<testcase name="testCreateTypedInstanceConstructorThrowsException" time="0.012" classname="org.apache.pulsar.common.util.ReflectionsTest" />
|
||||||
|
<testcase name="testClassExists" time="0.022" classname="org.apache.pulsar.common.util.ReflectionsTest" />
|
||||||
|
<testcase name="testCreateTypedInstanceAbstractClass" time="0.003" classname="org.apache.pulsar.common.util.ReflectionsTest" />
|
||||||
|
<testcase name="testCreateTypedInstanceClassNotFound" time="0.014" classname="org.apache.pulsar.common.util.ReflectionsTest" />
|
||||||
|
<testcase name="testCreateTypedInstanceNoNoArgConstructor" time="0.004" classname="org.apache.pulsar.common.util.ReflectionsTest" />
|
||||||
|
<testcase name="testLoadClass" time="0.021" classname="org.apache.pulsar.common.util.ReflectionsTest" />
|
||||||
|
<testcase name="testClassInJarImplementsIface" time="0.009" classname="org.apache.pulsar.common.util.ReflectionsTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.util.RelativeTimeUtilTest" tests="1" errors="0" failures="0" skipped="0" time="0.039"><testcase name="testParseRelativeTime" time="0.039" classname="org.apache.pulsar.common.util.RelativeTimeUtilTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.util.collections.BitSetRecyclableRecyclableTest" tests="2" errors="0" failures="0" skipped="0" time="0.013000000000000001"><testcase name="testResetWords" time="0.001" classname="org.apache.pulsar.common.util.collections.BitSetRecyclableRecyclableTest" />
|
||||||
|
<testcase name="testRecycle" time="0.012" classname="org.apache.pulsar.common.util.collections.BitSetRecyclableRecyclableTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.util.collections.ConcurrentBitSetRecyclableTest" tests="2" errors="0" failures="0" skipped="0" time="0.063"><testcase name="testRecycle" time="0.044" classname="org.apache.pulsar.common.util.collections.ConcurrentBitSetRecyclableTest" />
|
||||||
|
<testcase name="testGenerateByBitSet" time="0.019" classname="org.apache.pulsar.common.util.collections.ConcurrentBitSetRecyclableTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.util.collections.ConcurrentLongHashMapTest" tests="13" errors="0" failures="0" skipped="0" time="28.351000000000003"><testcase name="testRehashingWithDeletes" time="0.010" classname="org.apache.pulsar.common.util.collections.ConcurrentLongHashMapTest" />
|
||||||
|
<testcase name="concurrentInsertionsAndReads" time="1.487" classname="org.apache.pulsar.common.util.collections.ConcurrentLongHashMapTest" />
|
||||||
|
<testcase name="testRemove" time="0.017" classname="org.apache.pulsar.common.util.collections.ConcurrentLongHashMapTest" />
|
||||||
|
<testcase name="testRehashing" time="0.014" classname="org.apache.pulsar.common.util.collections.ConcurrentLongHashMapTest" />
|
||||||
|
<testcase name="simpleInsertions" time="0.014" classname="org.apache.pulsar.common.util.collections.ConcurrentLongHashMapTest" />
|
||||||
|
<testcase name="testComputeIfAbsent" time="0.008" classname="org.apache.pulsar.common.util.collections.ConcurrentLongHashMapTest" />
|
||||||
|
<testcase name="testConstructor" time="0.001" classname="org.apache.pulsar.common.util.collections.ConcurrentLongHashMapTest" />
|
||||||
|
<testcase name="testPutIfAbsent" time="0.006" classname="org.apache.pulsar.common.util.collections.ConcurrentLongHashMapTest" />
|
||||||
|
<testcase name="testIteration" time="0.006" classname="org.apache.pulsar.common.util.collections.ConcurrentLongHashMapTest" />
|
||||||
|
<testcase name="testHashConflictWithDeletion" time="0.002" classname="org.apache.pulsar.common.util.collections.ConcurrentLongHashMapTest" />
|
||||||
|
<testcase name="concurrentInsertions" time="1.329" classname="org.apache.pulsar.common.util.collections.ConcurrentLongHashMapTest" />
|
||||||
|
<testcase name="stressConcurrentInsertionsAndReads" time="25.447" classname="org.apache.pulsar.common.util.collections.ConcurrentLongHashMapTest" />
|
||||||
|
<testcase name="testNegativeUsedBucketCount" time="0.010" classname="org.apache.pulsar.common.util.collections.ConcurrentLongHashMapTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.util.collections.ConcurrentLongPairSetTest" tests="15" errors="0" failures="0" skipped="0" time="1.5190000000000001"><testcase name="concurrentInsertionsAndReads" time="0.674" classname="org.apache.pulsar.common.util.collections.ConcurrentLongPairSetTest" />
|
||||||
|
<testcase name="testEqualsObjects" time="0.005" classname="org.apache.pulsar.common.util.collections.ConcurrentLongPairSetTest" />
|
||||||
|
<testcase name="testIfRemoval" time="0.010" classname="org.apache.pulsar.common.util.collections.ConcurrentLongPairSetTest" />
|
||||||
|
<testcase name="testRehashing" time="0.007" classname="org.apache.pulsar.common.util.collections.ConcurrentLongPairSetTest" />
|
||||||
|
<testcase name="testToString" time="0.008" classname="org.apache.pulsar.common.util.collections.ConcurrentLongPairSetTest" />
|
||||||
|
<testcase name="testRemove" time="0.005" classname="org.apache.pulsar.common.util.collections.ConcurrentLongPairSetTest" />
|
||||||
|
<testcase name="testItems" time="0.019" classname="org.apache.pulsar.common.util.collections.ConcurrentLongPairSetTest" />
|
||||||
|
<testcase name="testRehashingWithDeletes" time="0.007" classname="org.apache.pulsar.common.util.collections.ConcurrentLongPairSetTest" />
|
||||||
|
<testcase name="testHashConflictWithDeletion" time="0.003" classname="org.apache.pulsar.common.util.collections.ConcurrentLongPairSetTest" />
|
||||||
|
<testcase name="testIteration" time="0.008" classname="org.apache.pulsar.common.util.collections.ConcurrentLongPairSetTest" />
|
||||||
|
<testcase name="simpleInsertions" time="0.014" classname="org.apache.pulsar.common.util.collections.ConcurrentLongPairSetTest" />
|
||||||
|
<testcase name="testRehashingRemoval" time="0.036" classname="org.apache.pulsar.common.util.collections.ConcurrentLongPairSetTest" />
|
||||||
|
<testcase name="testRemoval" time="0.021" classname="org.apache.pulsar.common.util.collections.ConcurrentLongPairSetTest" />
|
||||||
|
<testcase name="testConstructor" time="0.003" classname="org.apache.pulsar.common.util.collections.ConcurrentLongPairSetTest" />
|
||||||
|
<testcase name="concurrentInsertions" time="0.699" classname="org.apache.pulsar.common.util.collections.ConcurrentLongPairSetTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.util.collections.ConcurrentOpenHashMapTest" tests="12" errors="0" failures="0" skipped="0" time="9.241"><testcase name="testRemove" time="0.019" classname="org.apache.pulsar.common.util.collections.ConcurrentOpenHashMapTest" />
|
||||||
|
<testcase name="simpleInsertions" time="0.038" classname="org.apache.pulsar.common.util.collections.ConcurrentOpenHashMapTest" />
|
||||||
|
<testcase name="testPutIfAbsent" time="0.009" classname="org.apache.pulsar.common.util.collections.ConcurrentOpenHashMapTest" />
|
||||||
|
<testcase name="concurrentInsertions" time="3.153" classname="org.apache.pulsar.common.util.collections.ConcurrentOpenHashMapTest" />
|
||||||
|
<testcase name="testHashConflictWithDeletion" time="0.013" classname="org.apache.pulsar.common.util.collections.ConcurrentOpenHashMapTest" />
|
||||||
|
<testcase name="testRehashingWithDeletes" time="0.023" classname="org.apache.pulsar.common.util.collections.ConcurrentOpenHashMapTest" />
|
||||||
|
<testcase name="testComputeIfAbsent" time="0.019" classname="org.apache.pulsar.common.util.collections.ConcurrentOpenHashMapTest" />
|
||||||
|
<testcase name="testRehashing" time="0.025" classname="org.apache.pulsar.common.util.collections.ConcurrentOpenHashMapTest" />
|
||||||
|
<testcase name="testIteration" time="0.016" classname="org.apache.pulsar.common.util.collections.ConcurrentOpenHashMapTest" />
|
||||||
|
<testcase name="testEqualsKeys" time="0.001" classname="org.apache.pulsar.common.util.collections.ConcurrentOpenHashMapTest" />
|
||||||
|
<testcase name="concurrentInsertionsAndReads" time="5.909" classname="org.apache.pulsar.common.util.collections.ConcurrentOpenHashMapTest" />
|
||||||
|
<testcase name="testConstructor" time="0.016" classname="org.apache.pulsar.common.util.collections.ConcurrentOpenHashMapTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.util.collections.ConcurrentOpenHashSetTest" tests="11" errors="0" failures="0" skipped="0" time="7.114999999999999"><testcase name="concurrentInsertions" time="5.262" classname="org.apache.pulsar.common.util.collections.ConcurrentOpenHashSetTest" />
|
||||||
|
<testcase name="testRehashing" time="0.009" classname="org.apache.pulsar.common.util.collections.ConcurrentOpenHashSetTest" />
|
||||||
|
<testcase name="testRemoval" time="0.024" classname="org.apache.pulsar.common.util.collections.ConcurrentOpenHashSetTest" />
|
||||||
|
<testcase name="testEqualsObjects" time="0.009" classname="org.apache.pulsar.common.util.collections.ConcurrentOpenHashSetTest" />
|
||||||
|
<testcase name="testHashConflictWithDeletion" time="0.014" classname="org.apache.pulsar.common.util.collections.ConcurrentOpenHashSetTest" />
|
||||||
|
<testcase name="testConstructor" time="0.004" classname="org.apache.pulsar.common.util.collections.ConcurrentOpenHashSetTest" />
|
||||||
|
<testcase name="concurrentInsertionsAndReads" time="1.736" classname="org.apache.pulsar.common.util.collections.ConcurrentOpenHashSetTest" />
|
||||||
|
<testcase name="testIteration" time="0.010" classname="org.apache.pulsar.common.util.collections.ConcurrentOpenHashSetTest" />
|
||||||
|
<testcase name="simpleInsertions" time="0.015" classname="org.apache.pulsar.common.util.collections.ConcurrentOpenHashSetTest" />
|
||||||
|
<testcase name="testRehashingWithDeletes" time="0.016" classname="org.apache.pulsar.common.util.collections.ConcurrentOpenHashSetTest" />
|
||||||
|
<testcase name="testRemove" time="0.016" classname="org.apache.pulsar.common.util.collections.ConcurrentOpenHashSetTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.util.collections.ConcurrentOpenLongPairRangeSetTest" tests="13" errors="0" failures="0" skipped="0" time="1.3559999999999999"><testcase name="testAddForDifferentKey" time="0.019" classname="org.apache.pulsar.common.util.collections.ConcurrentOpenLongPairRangeSetTest" />
|
||||||
|
<testcase name="testToString" time="0.016" classname="org.apache.pulsar.common.util.collections.ConcurrentOpenLongPairRangeSetTest" />
|
||||||
|
<testcase name="testCacheFlagConflict" time="0.084" classname="org.apache.pulsar.common.util.collections.ConcurrentOpenLongPairRangeSetTest" />
|
||||||
|
<testcase name="testDeleteWithLeastMost" time="0.011" classname="org.apache.pulsar.common.util.collections.ConcurrentOpenLongPairRangeSetTest" />
|
||||||
|
<testcase name="testDeleteForDifferentKey" time="0.069" classname="org.apache.pulsar.common.util.collections.ConcurrentOpenLongPairRangeSetTest" />
|
||||||
|
<testcase name="testLastRange" time="0.009" classname="org.apache.pulsar.common.util.collections.ConcurrentOpenLongPairRangeSetTest" />
|
||||||
|
<testcase name="testAddCompareCompareWithGuava" time="0.585" classname="org.apache.pulsar.common.util.collections.ConcurrentOpenLongPairRangeSetTest" />
|
||||||
|
<testcase name="testSpanWithGuava" time="0.020" classname="org.apache.pulsar.common.util.collections.ConcurrentOpenLongPairRangeSetTest" />
|
||||||
|
<testcase name="testDeleteCompareWithGuava" time="0.473" classname="org.apache.pulsar.common.util.collections.ConcurrentOpenLongPairRangeSetTest" />
|
||||||
|
<testcase name="testFirstRange" time="0.011" classname="org.apache.pulsar.common.util.collections.ConcurrentOpenLongPairRangeSetTest" />
|
||||||
|
<testcase name="testAddForSameKey" time="0.037" classname="org.apache.pulsar.common.util.collections.ConcurrentOpenLongPairRangeSetTest" />
|
||||||
|
<testcase name="testDeleteWithAtMost" time="0.008" classname="org.apache.pulsar.common.util.collections.ConcurrentOpenLongPairRangeSetTest" />
|
||||||
|
<testcase name="testRangeContaining" time="0.014" classname="org.apache.pulsar.common.util.collections.ConcurrentOpenLongPairRangeSetTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.util.collections.ConcurrentSortedLongPairSetTest" tests="9" errors="0" failures="0" skipped="0" time="0.342"><testcase name="concurrentInsertions" time="0.101" classname="org.apache.pulsar.common.util.collections.ConcurrentSortedLongPairSetTest" />
|
||||||
|
<testcase name="testIfRemoval" time="0.041" classname="org.apache.pulsar.common.util.collections.ConcurrentSortedLongPairSetTest" />
|
||||||
|
<testcase name="testRemoval" time="0.057" classname="org.apache.pulsar.common.util.collections.ConcurrentSortedLongPairSetTest" />
|
||||||
|
<testcase name="testRemove" time="0.016" classname="org.apache.pulsar.common.util.collections.ConcurrentSortedLongPairSetTest" />
|
||||||
|
<testcase name="testItems" time="0.022" classname="org.apache.pulsar.common.util.collections.ConcurrentSortedLongPairSetTest" />
|
||||||
|
<testcase name="testEqualsObjects" time="0.007" classname="org.apache.pulsar.common.util.collections.ConcurrentSortedLongPairSetTest" />
|
||||||
|
<testcase name="simpleInsertions" time="0.016" classname="org.apache.pulsar.common.util.collections.ConcurrentSortedLongPairSetTest" />
|
||||||
|
<testcase name="testIteration" time="0.035" classname="org.apache.pulsar.common.util.collections.ConcurrentSortedLongPairSetTest" />
|
||||||
|
<testcase name="testToString" time="0.047" classname="org.apache.pulsar.common.util.collections.ConcurrentSortedLongPairSetTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.util.collections.FieldParserTest" tests="2" errors="0" failures="0" skipped="0" time="0.064"><testcase name="testUpdateObject" time="0.023" classname="org.apache.pulsar.common.util.collections.FieldParserTest" />
|
||||||
|
<testcase name="testConversion" time="0.041" classname="org.apache.pulsar.common.util.collections.FieldParserTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.util.collections.GrowableArrayBlockingQueueTest" tests="6" errors="0" failures="0" skipped="0" time="0.35"><testcase name="removeTest" time="0.014" classname="org.apache.pulsar.common.util.collections.GrowableArrayBlockingQueueTest" />
|
||||||
|
<testcase name="growArray" time="0.032" classname="org.apache.pulsar.common.util.collections.GrowableArrayBlockingQueueTest" />
|
||||||
|
<testcase name="pollTimeout" time="0.039" classname="org.apache.pulsar.common.util.collections.GrowableArrayBlockingQueueTest" />
|
||||||
|
<testcase name="simple" time="0.029" classname="org.apache.pulsar.common.util.collections.GrowableArrayBlockingQueueTest" />
|
||||||
|
<testcase name="pollTimeout2" time="0.111" classname="org.apache.pulsar.common.util.collections.GrowableArrayBlockingQueueTest" />
|
||||||
|
<testcase name="blockingTake" time="0.125" classname="org.apache.pulsar.common.util.collections.GrowableArrayBlockingQueueTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.util.collections.GrowablePriorityLongPairQueueTest" tests="15" errors="0" failures="0" skipped="0" time="3.0929999999999995"><testcase name="testItems" time="0.014" classname="org.apache.pulsar.common.util.collections.GrowablePriorityLongPairQueueTest" />
|
||||||
|
<testcase name="testRemove" time="0.009" classname="org.apache.pulsar.common.util.collections.GrowablePriorityLongPairQueueTest" />
|
||||||
|
<testcase name="testExpandQueue" time="0.000" classname="org.apache.pulsar.common.util.collections.GrowablePriorityLongPairQueueTest" />
|
||||||
|
<testcase name="testInsertAndRemove" time="0.018" classname="org.apache.pulsar.common.util.collections.GrowablePriorityLongPairQueueTest" />
|
||||||
|
<testcase name="testEqualsObjects" time="0.010" classname="org.apache.pulsar.common.util.collections.GrowablePriorityLongPairQueueTest" />
|
||||||
|
<testcase name="testExpandRemoval" time="1.711" classname="org.apache.pulsar.common.util.collections.GrowablePriorityLongPairQueueTest" />
|
||||||
|
<testcase name="testIteration" time="0.019" classname="org.apache.pulsar.common.util.collections.GrowablePriorityLongPairQueueTest" />
|
||||||
|
<testcase name="simpleInsertions" time="0.117" classname="org.apache.pulsar.common.util.collections.GrowablePriorityLongPairQueueTest" />
|
||||||
|
<testcase name="concurrentInsertions" time="0.679" classname="org.apache.pulsar.common.util.collections.GrowablePriorityLongPairQueueTest" />
|
||||||
|
<testcase name="testConstructor" time="0.020" classname="org.apache.pulsar.common.util.collections.GrowablePriorityLongPairQueueTest" />
|
||||||
|
<testcase name="testSetWithDuplicateInsert" time="0.010" classname="org.apache.pulsar.common.util.collections.GrowablePriorityLongPairQueueTest" />
|
||||||
|
<testcase name="testExpandWithDeletes" time="0.018" classname="org.apache.pulsar.common.util.collections.GrowablePriorityLongPairQueueTest" />
|
||||||
|
<testcase name="concurrentInsertionsAndReads" time="0.401" classname="org.apache.pulsar.common.util.collections.GrowablePriorityLongPairQueueTest" />
|
||||||
|
<testcase name="testRemoval" time="0.010" classname="org.apache.pulsar.common.util.collections.GrowablePriorityLongPairQueueTest" />
|
||||||
|
<testcase name="testIfRemoval" time="0.057" classname="org.apache.pulsar.common.util.collections.GrowablePriorityLongPairQueueTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.util.collections.TripleLongPriorityQueueTest" tests="3" errors="0" failures="0" skipped="0" time="0.238"><testcase name="testQueue" time="0.096" classname="org.apache.pulsar.common.util.collections.TripleLongPriorityQueueTest" />
|
||||||
|
<testcase name="testCheckForEmpty" time="0.118" classname="org.apache.pulsar.common.util.collections.TripleLongPriorityQueueTest" />
|
||||||
|
<testcase name="testCompareWithSamePrefix" time="0.024" classname="org.apache.pulsar.common.util.collections.TripleLongPriorityQueueTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.common.util.netty.ChannelFuturesTest" tests="5" errors="0" failures="0" skipped="0" time="1.5490000000000002"><testcase name="toCompletableFuture_shouldCompleteExceptionally_channelFutureCompletedAfter" time="0.050" classname="org.apache.pulsar.common.util.netty.ChannelFuturesTest" />
|
||||||
|
<testcase name="toCompletableFuture_shouldCompleteSuccessfully_channelFutureCompletedAfter" time="0.031" classname="org.apache.pulsar.common.util.netty.ChannelFuturesTest" />
|
||||||
|
<testcase name="toCompletableFuture_shouldCompleteSuccessfully_channelFutureCompletedBefore" time="0.008" classname="org.apache.pulsar.common.util.netty.ChannelFuturesTest" />
|
||||||
|
<testcase name="toCompletableFuture_shouldCompleteExceptionally_channelFutureCompletedBefore" time="0.009" classname="org.apache.pulsar.common.util.netty.ChannelFuturesTest" />
|
||||||
|
<testcase name="toCompletableFuture_shouldRequireNonNullArgument" time="1.451" classname="org.apache.pulsar.common.util.netty.ChannelFuturesTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.discovery.service.web.DiscoveryServiceWebTest" tests="1" errors="0" failures="0" skipped="0" time="4.904"><testcase name="testRedirectUrlWithServerStarted" time="4.904" classname="org.apache.pulsar.discovery.service.web.DiscoveryServiceWebTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.functions.worker.PulsarFunctionE2ESecurityTest" tests="2" errors="0" failures="0" skipped="0" time="27.527"><testcase name="testAuthorizationWithAnonymousUser" time="10.923" classname="org.apache.pulsar.functions.worker.PulsarFunctionE2ESecurityTest" />
|
||||||
|
<testcase name="testAuthorization" time="16.604" classname="org.apache.pulsar.functions.worker.PulsarFunctionE2ESecurityTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.functions.worker.PulsarFunctionPublishTest" tests="3" errors="0" failures="0" skipped="0" time="42.238"><testcase name="testPulsarFunctionState" time="10.642" classname="org.apache.pulsar.functions.worker.PulsarFunctionPublishTest" />
|
||||||
|
<testcase name="testMultipleAddress" time="12.951" classname="org.apache.pulsar.functions.worker.PulsarFunctionPublishTest" />
|
||||||
|
<testcase name="testPulsarFunctionBKCleanup" time="18.645" classname="org.apache.pulsar.functions.worker.PulsarFunctionPublishTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.functions.worker.PulsarFunctionTlsTest" tests="1" errors="0" failures="0" skipped="0" time="12.012"><testcase name="testFunctionsCreation" time="12.012" classname="org.apache.pulsar.functions.worker.PulsarFunctionTlsTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.io.PulsarFunctionTlsTest" tests="1" errors="0" failures="0" skipped="0" time="30.213"><testcase name="testAuthorization" time="30.213" classname="org.apache.pulsar.io.PulsarFunctionTlsTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.proxy.server.AdminProxyHandlerTest" tests="1" errors="0" failures="0" skipped="0" time="0.474"><testcase name="replayableProxyContentProviderTest" time="0.474" classname="org.apache.pulsar.proxy.server.AdminProxyHandlerTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.proxy.server.AuthedAdminProxyHandlerTest" tests="1" errors="0" failures="0" skipped="0" time="2.159"><testcase name="testAuthenticatedProxyAsNonAdmin" time="2.159" classname="org.apache.pulsar.proxy.server.AuthedAdminProxyHandlerTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.proxy.server.FunctionWorkerRoutingTest" tests="1" errors="0" failures="0" skipped="0" time="0.01"><testcase name="testFunctionWorkerRedirect" time="0.010" classname="org.apache.pulsar.proxy.server.FunctionWorkerRoutingTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.proxy.server.ProxyAdditionalServletTest" tests="1" errors="0" failures="0" skipped="0" time="0.125"><testcase name="test" time="0.125" classname="org.apache.pulsar.proxy.server.ProxyAdditionalServletTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.proxy.server.ProxyAuthenticatedProducerConsumerTest" tests="1" errors="0" failures="0" skipped="0" time="2.279"><testcase name="testTlsSyncProducerAndConsumer" time="2.279" classname="org.apache.pulsar.proxy.server.ProxyAuthenticatedProducerConsumerTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.proxy.server.ProxyAuthenticationTest" tests="1" errors="0" failures="0" skipped="0" time="16.696"><testcase name="testAuthentication" time="16.696" classname="org.apache.pulsar.proxy.server.ProxyAuthenticationTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.proxy.server.ProxyConnectionThrottlingTest" tests="1" errors="0" failures="0" skipped="0" time="1.792"><testcase name="testInboundConnection" time="1.792" classname="org.apache.pulsar.proxy.server.ProxyConnectionThrottlingTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.proxy.server.ProxyEnableHAProxyProtocolTest" tests="1" errors="0" failures="0" skipped="0" time="0.511"><testcase name="testSimpleProduceAndConsume" time="0.511" classname="org.apache.pulsar.proxy.server.ProxyEnableHAProxyProtocolTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.proxy.server.ProxyForwardAuthDataTest" tests="1" errors="0" failures="0" skipped="0" time="31.924"><testcase name="testForwardAuthData" time="31.924" classname="org.apache.pulsar.proxy.server.ProxyForwardAuthDataTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.proxy.server.ProxyIsAHttpProxyTest" tests="10" errors="0" failures="0" skipped="0" time="1.66"><testcase name="testProxyToEndsInSlash" time="0.232" classname="org.apache.pulsar.proxy.server.ProxyIsAHttpProxyTest" />
|
||||||
|
<testcase name="testStreaming" time="0.460" classname="org.apache.pulsar.proxy.server.ProxyIsAHttpProxyTest" />
|
||||||
|
<testcase name="testLongPath" time="0.230" classname="org.apache.pulsar.proxy.server.ProxyIsAHttpProxyTest" />
|
||||||
|
<testcase name="testLongPathInProxyTo" time="0.220" classname="org.apache.pulsar.proxy.server.ProxyIsAHttpProxyTest" />
|
||||||
|
<testcase name="testPathEndsInSlash" time="0.144" classname="org.apache.pulsar.proxy.server.ProxyIsAHttpProxyTest" />
|
||||||
|
<testcase name="testPathNotSpecified" time="0.002" classname="org.apache.pulsar.proxy.server.ProxyIsAHttpProxyTest" />
|
||||||
|
<testcase name="testTryingToUseExistingPath" time="0.025" classname="org.apache.pulsar.proxy.server.ProxyIsAHttpProxyTest" />
|
||||||
|
<testcase name="testMultipleRedirect" time="0.178" classname="org.apache.pulsar.proxy.server.ProxyIsAHttpProxyTest" />
|
||||||
|
<testcase name="testSingleRedirect" time="0.167" classname="org.apache.pulsar.proxy.server.ProxyIsAHttpProxyTest" />
|
||||||
|
<testcase name="testRedirectNotSpecified" time="0.002" classname="org.apache.pulsar.proxy.server.ProxyIsAHttpProxyTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.proxy.server.ProxyKeyStoreTlsTestWithAuth" tests="3" errors="0" failures="0" skipped="0" time="6.7010000000000005"><testcase name="testProducerFailed" time="3.049" classname="org.apache.pulsar.proxy.server.ProxyKeyStoreTlsTestWithAuth" />
|
||||||
|
<testcase name="testPartitions" time="1.856" classname="org.apache.pulsar.proxy.server.ProxyKeyStoreTlsTestWithAuth" />
|
||||||
|
<testcase name="testProducer" time="1.796" classname="org.apache.pulsar.proxy.server.ProxyKeyStoreTlsTestWithAuth" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.proxy.server.ProxyKeyStoreTlsTestWithoutAuth" tests="3" errors="0" failures="0" skipped="0" time="7.220000000000001"><testcase name="testPartitions" time="2.438" classname="org.apache.pulsar.proxy.server.ProxyKeyStoreTlsTestWithoutAuth" />
|
||||||
|
<testcase name="testProducerFailed" time="2.837" classname="org.apache.pulsar.proxy.server.ProxyKeyStoreTlsTestWithoutAuth" />
|
||||||
|
<testcase name="testProducer" time="1.945" classname="org.apache.pulsar.proxy.server.ProxyKeyStoreTlsTestWithoutAuth" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.proxy.server.ProxyLookupThrottlingTest" tests="1" errors="0" failures="0" skipped="0" time="2.568"><testcase name="testLookup" time="2.568" classname="org.apache.pulsar.proxy.server.ProxyLookupThrottlingTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.proxy.server.ProxyParserTest" tests="5" errors="0" failures="0" skipped="0" time="1.3459999999999999"><testcase name="testRegexSubscription" time="0.300" classname="org.apache.pulsar.proxy.server.ProxyParserTest" />
|
||||||
|
<testcase name="testProducerConsumer" time="0.147" classname="org.apache.pulsar.proxy.server.ProxyParserTest" />
|
||||||
|
<testcase name="testProducer" time="0.111" classname="org.apache.pulsar.proxy.server.ProxyParserTest" />
|
||||||
|
<testcase name="testPartitions" time="0.641" classname="org.apache.pulsar.proxy.server.ProxyParserTest" />
|
||||||
|
<testcase name="testProtocolVersionAdvertisement" time="0.147" classname="org.apache.pulsar.proxy.server.ProxyParserTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.proxy.server.ProxyRolesEnforcementTest" tests="1" errors="0" failures="0" skipped="0" time="10.403"><testcase name="testIncorrectRoles" time="10.403" classname="org.apache.pulsar.proxy.server.ProxyRolesEnforcementTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.proxy.server.ProxyStatsTest" tests="3" errors="0" failures="0" skipped="0" time="0.533"><testcase name="testChangeLogLevel" time="0.031" classname="org.apache.pulsar.proxy.server.ProxyStatsTest" />
|
||||||
|
<testcase name="testConnectionsStats" time="0.268" classname="org.apache.pulsar.proxy.server.ProxyStatsTest" />
|
||||||
|
<testcase name="testTopicStats" time="0.234" classname="org.apache.pulsar.proxy.server.ProxyStatsTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.proxy.server.ProxyTest" tests="6" errors="0" failures="0" skipped="0" time="2.9469999999999996"><testcase name="testPartitions" time="1.162" classname="org.apache.pulsar.proxy.server.ProxyTest" />
|
||||||
|
<testcase name="testRegexSubscription" time="0.336" classname="org.apache.pulsar.proxy.server.ProxyTest" />
|
||||||
|
<testcase name="testProtocolVersionAdvertisement" time="0.158" classname="org.apache.pulsar.proxy.server.ProxyTest" />
|
||||||
|
<testcase name="testGetSchema" time="0.982" classname="org.apache.pulsar.proxy.server.ProxyTest" />
|
||||||
|
<testcase name="testProducer" time="0.151" classname="org.apache.pulsar.proxy.server.ProxyTest" />
|
||||||
|
<testcase name="testProducerConsumer" time="0.158" classname="org.apache.pulsar.proxy.server.ProxyTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.proxy.server.ProxyTlsTest" tests="2" errors="0" failures="0" skipped="0" time="0.41400000000000003"><testcase name="testProducer" time="0.100" classname="org.apache.pulsar.proxy.server.ProxyTlsTest" />
|
||||||
|
<testcase name="testPartitions" time="0.314" classname="org.apache.pulsar.proxy.server.ProxyTlsTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.proxy.server.ProxyTlsTestWithAuth" tests="1" errors="0" failures="0" skipped="0" time="0.004"><testcase name="testServiceStartup" time="0.004" classname="org.apache.pulsar.proxy.server.ProxyTlsTestWithAuth" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.proxy.server.ProxyWithAuthorizationNegTest" tests="1" errors="0" failures="0" skipped="0" time="2.128"><testcase name="testProxyAuthorization" time="2.128" classname="org.apache.pulsar.proxy.server.ProxyWithAuthorizationNegTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.proxy.server.ProxyWithAuthorizationTest" tests="13" errors="0" failures="0" skipped="0" time="32.897"><testcase name="tlsCiphersAndProtocols" time="3.181" classname="org.apache.pulsar.proxy.server.ProxyWithAuthorizationTest" />
|
||||||
|
<testcase name="testTlsHostVerificationProxyToClient" time="3.092" classname="org.apache.pulsar.proxy.server.ProxyWithAuthorizationTest" />
|
||||||
|
<testcase name="tlsCiphersAndProtocols" time="2.974" classname="org.apache.pulsar.proxy.server.ProxyWithAuthorizationTest" />
|
||||||
|
<testcase name="testProxyAuthorization" time="2.294" classname="org.apache.pulsar.proxy.server.ProxyWithAuthorizationTest" />
|
||||||
|
<testcase name="tlsCiphersAndProtocols" time="1.998" classname="org.apache.pulsar.proxy.server.ProxyWithAuthorizationTest" />
|
||||||
|
<testcase name="testTlsHostVerificationProxyToBroker" time="2.446" classname="org.apache.pulsar.proxy.server.ProxyWithAuthorizationTest" />
|
||||||
|
<testcase name="tlsCiphersAndProtocols" time="2.990" classname="org.apache.pulsar.proxy.server.ProxyWithAuthorizationTest" />
|
||||||
|
<testcase name="tlsCiphersAndProtocols" time="2.056" classname="org.apache.pulsar.proxy.server.ProxyWithAuthorizationTest" />
|
||||||
|
<testcase name="tlsCiphersAndProtocols" time="2.104" classname="org.apache.pulsar.proxy.server.ProxyWithAuthorizationTest" />
|
||||||
|
<testcase name="testTlsHostVerificationProxyToBroker" time="3.554" classname="org.apache.pulsar.proxy.server.ProxyWithAuthorizationTest" />
|
||||||
|
<testcase name="tlsCiphersAndProtocols" time="1.921" classname="org.apache.pulsar.proxy.server.ProxyWithAuthorizationTest" />
|
||||||
|
<testcase name="testTlsHostVerificationProxyToClient" time="2.164" classname="org.apache.pulsar.proxy.server.ProxyWithAuthorizationTest" />
|
||||||
|
<testcase name="tlsCiphersAndProtocols" time="2.123" classname="org.apache.pulsar.proxy.server.ProxyWithAuthorizationTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.proxy.server.ProxyWithoutServiceDiscoveryTest" tests="1" errors="0" failures="0" skipped="0" time="2.045"><testcase name="testDiscoveryService" time="2.045" classname="org.apache.pulsar.proxy.server.ProxyWithoutServiceDiscoveryTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.proxy.server.SuperUserAuthedAdminProxyHandlerTest" tests="3" errors="0" failures="0" skipped="0" time="8.235"><testcase name="testAuthWithRandoCert" time="3.184" classname="org.apache.pulsar.proxy.server.SuperUserAuthedAdminProxyHandlerTest" />
|
||||||
|
<testcase name="testAuthenticatedProxyAsAdmin" time="2.549" classname="org.apache.pulsar.proxy.server.SuperUserAuthedAdminProxyHandlerTest" />
|
||||||
|
<testcase name="testAuthenticatedProxyAsNonAdmin" time="2.502" classname="org.apache.pulsar.proxy.server.SuperUserAuthedAdminProxyHandlerTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.proxy.server.UnauthedAdminProxyHandlerTest" tests="2" errors="0" failures="0" skipped="0" time="0.11399999999999999"><testcase name="testUnauthenticatedProxy" time="0.072" classname="org.apache.pulsar.proxy.server.UnauthedAdminProxyHandlerTest" />
|
||||||
|
<testcase name="testVipStatus" time="0.042" classname="org.apache.pulsar.proxy.server.UnauthedAdminProxyHandlerTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.schema.PartitionedTopicSchemaTest" tests="1" errors="0" failures="0" skipped="0" time="29.041"><testcase name="test" time="29.041" classname="org.apache.pulsar.schema.PartitionedTopicSchemaTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.schema.SchemaTest" tests="3" errors="0" failures="0" skipped="0" time="30.858999999999998"><testcase name="testIsUsingAvroSchemaParser" time="15.549" classname="org.apache.pulsar.schema.SchemaTest" />
|
||||||
|
<testcase name="testBytesSchemaDeserialize" time="9.226" classname="org.apache.pulsar.schema.SchemaTest" />
|
||||||
|
<testcase name="testMultiTopicSetSchemaProvider" time="6.084" classname="org.apache.pulsar.schema.SchemaTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.schema.compatibility.SchemaCompatibilityCheckTest" tests="23" errors="0" failures="0" skipped="0" time="107.43700000000001"><testcase name="testConsumerCompatibilityCheckCanReadLastTest" time="2.532" classname="org.apache.pulsar.schema.compatibility.SchemaCompatibilityCheckTest" />
|
||||||
|
<testcase name="testConsumerWithNotCompatibilitySchema" time="3.386" classname="org.apache.pulsar.schema.compatibility.SchemaCompatibilityCheckTest" />
|
||||||
|
<testcase name="testProducerSendWithOldSchemaAndConsumerCanRead" time="4.159" classname="org.apache.pulsar.schema.compatibility.SchemaCompatibilityCheckTest" />
|
||||||
|
<testcase name="testConsumerCompatibilityCheckCanReadLastTest" time="8.513" classname="org.apache.pulsar.schema.compatibility.SchemaCompatibilityCheckTest" />
|
||||||
|
<testcase name="testProducerSendWithOldSchemaAndConsumerCanRead" time="4.927" classname="org.apache.pulsar.schema.compatibility.SchemaCompatibilityCheckTest" />
|
||||||
|
<testcase name="testSchemaComparison" time="5.111" classname="org.apache.pulsar.schema.compatibility.SchemaCompatibilityCheckTest" />
|
||||||
|
<testcase name="testConsumerCompatibilityCheckCanReadLastTest" time="2.560" classname="org.apache.pulsar.schema.compatibility.SchemaCompatibilityCheckTest" />
|
||||||
|
<testcase name="testConsumerCompatibilityReadAllCheckTest" time="4.842" classname="org.apache.pulsar.schema.compatibility.SchemaCompatibilityCheckTest" />
|
||||||
|
<testcase name="testConsumerWithNotCompatibilitySchema" time="5.097" classname="org.apache.pulsar.schema.compatibility.SchemaCompatibilityCheckTest" />
|
||||||
|
<testcase name="testIsAutoUpdateSchema" time="4.996" classname="org.apache.pulsar.schema.compatibility.SchemaCompatibilityCheckTest" />
|
||||||
|
<testcase name="testProducerSendWithOldSchemaAndConsumerCanRead" time="3.708" classname="org.apache.pulsar.schema.compatibility.SchemaCompatibilityCheckTest" />
|
||||||
|
<testcase name="testConsumerCompatibilityReadAllCheckTest" time="5.646" classname="org.apache.pulsar.schema.compatibility.SchemaCompatibilityCheckTest" />
|
||||||
|
<testcase name="testIsAutoUpdateSchema" time="5.362" classname="org.apache.pulsar.schema.compatibility.SchemaCompatibilityCheckTest" />
|
||||||
|
<testcase name="testProducerSendWithOldSchemaAndConsumerCanRead" time="3.960" classname="org.apache.pulsar.schema.compatibility.SchemaCompatibilityCheckTest" />
|
||||||
|
<testcase name="testConsumerWithNotCompatibilitySchema" time="7.686" classname="org.apache.pulsar.schema.compatibility.SchemaCompatibilityCheckTest" />
|
||||||
|
<testcase name="testIsAutoUpdateSchema" time="3.021" classname="org.apache.pulsar.schema.compatibility.SchemaCompatibilityCheckTest" />
|
||||||
|
<testcase name="testProducerSendWithOldSchemaAndConsumerCanRead" time="3.654" classname="org.apache.pulsar.schema.compatibility.SchemaCompatibilityCheckTest" />
|
||||||
|
<testcase name="testConsumerWithNotCompatibilitySchema" time="4.217" classname="org.apache.pulsar.schema.compatibility.SchemaCompatibilityCheckTest" />
|
||||||
|
<testcase name="testProducerSendWithOldSchemaAndConsumerCanRead" time="4.805" classname="org.apache.pulsar.schema.compatibility.SchemaCompatibilityCheckTest" />
|
||||||
|
<testcase name="testIsAutoUpdateSchema" time="4.487" classname="org.apache.pulsar.schema.compatibility.SchemaCompatibilityCheckTest" />
|
||||||
|
<testcase name="testIsAutoUpdateSchema" time="5.471" classname="org.apache.pulsar.schema.compatibility.SchemaCompatibilityCheckTest" />
|
||||||
|
<testcase name="testConsumerCompatibilityCheckCanReadLastTest" time="3.544" classname="org.apache.pulsar.schema.compatibility.SchemaCompatibilityCheckTest" />
|
||||||
|
<testcase name="testIsAutoUpdateSchema" time="5.753" classname="org.apache.pulsar.schema.compatibility.SchemaCompatibilityCheckTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.stats.client.PulsarBrokerStatsClientTest" tests="2" errors="0" failures="0" skipped="0" time="40.751999999999995"><testcase name="testServiceException" time="8.855" classname="org.apache.pulsar.stats.client.PulsarBrokerStatsClientTest" />
|
||||||
|
<testcase name="testTopicInternalStats" time="31.897" classname="org.apache.pulsar.stats.client.PulsarBrokerStatsClientTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.tests.EnumValuesDataProviderTest" tests="6" errors="0" failures="0" skipped="0" time="0.023"><testcase name="shouldFailIfEnumParameterIsMissing" time="0.002" classname="org.apache.pulsar.tests.EnumValuesDataProviderTest" />
|
||||||
|
<testcase name="testEnumValuesProvider" time="0.001" classname="org.apache.pulsar.tests.EnumValuesDataProviderTest" />
|
||||||
|
<testcase name="testEnumValuesProvider" time="0.001" classname="org.apache.pulsar.tests.EnumValuesDataProviderTest" />
|
||||||
|
<testcase name="shouldDetermineEnumValuesFromMethod" time="0.005" classname="org.apache.pulsar.tests.EnumValuesDataProviderTest" />
|
||||||
|
<testcase name="shouldContainAllEnumValues" time="0.014" classname="org.apache.pulsar.tests.EnumValuesDataProviderTest" />
|
||||||
|
<testcase name="testEnumValuesProvider" time="0.000" classname="org.apache.pulsar.tests.EnumValuesDataProviderTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.tests.TestRetrySupportBeforeMethodRetryTest" tests="5" errors="0" failures="0" skipped="4" time="0.036000000000000004"><testcase name="shouldNotDoAnythingWhenThereIsBeforeAndAfterMethod" time="0.005" classname="org.apache.pulsar.tests.TestRetrySupportBeforeMethodRetryTest" />
|
||||||
|
<testcase name="shouldNotDoAnythingWhenThereIsBeforeAndAfterMethod" time="0.006" classname="org.apache.pulsar.tests.TestRetrySupportBeforeMethodRetryTest">
|
||||||
|
<skipped />
|
||||||
|
</testcase>
|
||||||
|
<testcase name="shouldNotDoAnythingWhenThereIsBeforeAndAfterMethod" time="0.012" classname="org.apache.pulsar.tests.TestRetrySupportBeforeMethodRetryTest">
|
||||||
|
<skipped />
|
||||||
|
</testcase>
|
||||||
|
<testcase name="shouldNotDoAnythingWhenThereIsBeforeAndAfterMethod" time="0.005" classname="org.apache.pulsar.tests.TestRetrySupportBeforeMethodRetryTest">
|
||||||
|
<skipped />
|
||||||
|
</testcase>
|
||||||
|
<testcase name="shouldNotDoAnythingWhenThereIsBeforeAndAfterMethod" time="0.008" classname="org.apache.pulsar.tests.TestRetrySupportBeforeMethodRetryTest">
|
||||||
|
<skipped />
|
||||||
|
</testcase>
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.tests.TestRetrySupportRetryTest" tests="5" errors="0" failures="0" skipped="4" time="0.027"><testcase name="shouldCallSetupBeforeRetrying" time="0.004" classname="org.apache.pulsar.tests.TestRetrySupportRetryTest">
|
||||||
|
<skipped />
|
||||||
|
</testcase>
|
||||||
|
<testcase name="shouldCallSetupBeforeRetrying" time="0.001" classname="org.apache.pulsar.tests.TestRetrySupportRetryTest" />
|
||||||
|
<testcase name="shouldCallSetupBeforeRetrying" time="0.006" classname="org.apache.pulsar.tests.TestRetrySupportRetryTest">
|
||||||
|
<skipped />
|
||||||
|
</testcase>
|
||||||
|
<testcase name="shouldCallSetupBeforeRetrying" time="0.012" classname="org.apache.pulsar.tests.TestRetrySupportRetryTest">
|
||||||
|
<skipped />
|
||||||
|
</testcase>
|
||||||
|
<testcase name="shouldCallSetupBeforeRetrying" time="0.004" classname="org.apache.pulsar.tests.TestRetrySupportRetryTest">
|
||||||
|
<skipped />
|
||||||
|
</testcase>
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.tests.TestRetrySupportSuccessTest" tests="3" errors="0" failures="0" skipped="0" time="0.001"><testcase name="shouldCallSetupOnce1" time="0.000" classname="org.apache.pulsar.tests.TestRetrySupportSuccessTest" />
|
||||||
|
<testcase name="shouldCallSetupOnce3" time="0.001" classname="org.apache.pulsar.tests.TestRetrySupportSuccessTest" />
|
||||||
|
<testcase name="shouldCallSetupOnce2" time="0.000" classname="org.apache.pulsar.tests.TestRetrySupportSuccessTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.tests.ThreadDumpUtilTest" tests="2" errors="0" failures="0" skipped="0" time="0.017"><testcase name="testHelp" time="0.002" classname="org.apache.pulsar.tests.ThreadDumpUtilTest" />
|
||||||
|
<testcase name="testThreadDump" time="0.015" classname="org.apache.pulsar.tests.ThreadDumpUtilTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.utils.SimpleTextOutputStreamTest" tests="4" errors="0" failures="0" skipped="0" time="0.049999999999999996"><testcase name="testBooleanFormat" time="0.006" classname="org.apache.pulsar.utils.SimpleTextOutputStreamTest" />
|
||||||
|
<testcase name="testDoubleFormat" time="0.023" classname="org.apache.pulsar.utils.SimpleTextOutputStreamTest" />
|
||||||
|
<testcase name="testLongFormat" time="0.008" classname="org.apache.pulsar.utils.SimpleTextOutputStreamTest" />
|
||||||
|
<testcase name="testString" time="0.013" classname="org.apache.pulsar.utils.SimpleTextOutputStreamTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.utils.StatsOutputStreamTest" tests="6" errors="0" failures="0" skipped="0" time="0.059"><testcase name="testLists" time="0.013" classname="org.apache.pulsar.utils.StatsOutputStreamTest" />
|
||||||
|
<testcase name="testNamedObjects" time="0.009" classname="org.apache.pulsar.utils.StatsOutputStreamTest" />
|
||||||
|
<testcase name="testNestedObjects" time="0.006" classname="org.apache.pulsar.utils.StatsOutputStreamTest" />
|
||||||
|
<testcase name="testNamedLists" time="0.012" classname="org.apache.pulsar.utils.StatsOutputStreamTest" />
|
||||||
|
<testcase name="testPairs" time="0.008" classname="org.apache.pulsar.utils.StatsOutputStreamTest" />
|
||||||
|
<testcase name="testObjects" time="0.011" classname="org.apache.pulsar.utils.StatsOutputStreamTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.websocket.proxy.ProxyAuthenticationTest" tests="4" errors="0" failures="0" skipped="0" time="28.904000000000003"><testcase name="unauthenticatedSocketTest" time="6.510" classname="org.apache.pulsar.websocket.proxy.ProxyAuthenticationTest" />
|
||||||
|
<testcase name="authenticatedSocketTest" time="7.780" classname="org.apache.pulsar.websocket.proxy.ProxyAuthenticationTest" />
|
||||||
|
<testcase name="statsTest" time="6.682" classname="org.apache.pulsar.websocket.proxy.ProxyAuthenticationTest" />
|
||||||
|
<testcase name="anonymousSocketTest" time="7.932" classname="org.apache.pulsar.websocket.proxy.ProxyAuthenticationTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.websocket.proxy.ProxyAuthorizationTest" tests="1" errors="0" failures="0" skipped="0" time="1.263"><testcase name="test" time="1.263" classname="org.apache.pulsar.websocket.proxy.ProxyAuthorizationTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.websocket.proxy.ProxyConfigurationTest" tests="2" errors="0" failures="0" skipped="0" time="8.943"><testcase name="configTest" time="4.667" classname="org.apache.pulsar.websocket.proxy.ProxyConfigurationTest" />
|
||||||
|
<testcase name="configTest" time="4.276" classname="org.apache.pulsar.websocket.proxy.ProxyConfigurationTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.websocket.proxy.ProxyPublishConsumeTlsTest" tests="1" errors="0" failures="0" skipped="0" time="10.821"><testcase name="socketTest" time="10.821" classname="org.apache.pulsar.websocket.proxy.ProxyPublishConsumeTlsTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.websocket.proxy.ProxyPublishConsumeWithoutZKTest" tests="1" errors="0" failures="0" skipped="0" time="7.28"><testcase name="socketTest" time="7.280" classname="org.apache.pulsar.websocket.proxy.ProxyPublishConsumeWithoutZKTest" />
|
||||||
|
</testsuite><testsuite name="org.apache.pulsar.websocket.proxy.v1.V1_ProxyAuthenticationTest" tests="4" errors="0" failures="0" skipped="0" time="29.941000000000003"><testcase name="anonymousSocketTest" time="8.880" classname="org.apache.pulsar.websocket.proxy.v1.V1_ProxyAuthenticationTest" />
|
||||||
|
<testcase name="authenticatedSocketTest" time="8.345" classname="org.apache.pulsar.websocket.proxy.v1.V1_ProxyAuthenticationTest" />
|
||||||
|
<testcase name="statsTest" time="5.366" classname="org.apache.pulsar.websocket.proxy.v1.V1_ProxyAuthenticationTest" />
|
||||||
|
<testcase name="unauthenticatedSocketTest" time="7.350" classname="org.apache.pulsar.websocket.proxy.v1.V1_ProxyAuthenticationTest" />
|
||||||
|
</testsuite></testsuites>
|
||||||
516
__tests__/fixtures/external/mocha/files.txt
vendored
Normal file
516
__tests__/fixtures/external/mocha/files.txt
vendored
Normal file
@@ -0,0 +1,516 @@
|
|||||||
|
.browserslistrc
|
||||||
|
.editorconfig
|
||||||
|
.eleventy.js
|
||||||
|
.eslintignore
|
||||||
|
.eslintrc.yml
|
||||||
|
.fossaignore
|
||||||
|
.gitattributes
|
||||||
|
.github/CODE_OF_CONDUCT.md
|
||||||
|
.github/CONTRIBUTING.md
|
||||||
|
.github/FUNDING.yml
|
||||||
|
.github/ISSUE_TEMPLATE/bug_report.md
|
||||||
|
.github/ISSUE_TEMPLATE/feature_request.md
|
||||||
|
.github/ISSUE_TEMPLATE/support-question.md
|
||||||
|
.github/PULL_REQUEST_TEMPLATE.md
|
||||||
|
.github/stale.yml
|
||||||
|
.github/workflows/mocha.yml
|
||||||
|
.github/workflows/nightly-site-deploy.yml
|
||||||
|
.github/workflows/purge-expired-artifacts.yml
|
||||||
|
.gitignore
|
||||||
|
.lintstagedrc.json
|
||||||
|
.mailmap
|
||||||
|
.markdownlint.json
|
||||||
|
.mocharc.yml
|
||||||
|
.npmrc
|
||||||
|
.nycrc
|
||||||
|
.wallaby.js
|
||||||
|
AUTHORS
|
||||||
|
CHANGELOG.md
|
||||||
|
LICENSE
|
||||||
|
MAINTAINERS.md
|
||||||
|
PROJECT_CHARTER.md
|
||||||
|
README.md
|
||||||
|
assets/growl/error.png
|
||||||
|
assets/growl/ok.png
|
||||||
|
assets/mocha-banner-192.png
|
||||||
|
assets/mocha-banner.svg
|
||||||
|
assets/mocha-fixture-wizard.sketch
|
||||||
|
assets/mocha-logo-128.png
|
||||||
|
assets/mocha-logo-192.png
|
||||||
|
assets/mocha-logo-64.png
|
||||||
|
assets/mocha-logo-96.png
|
||||||
|
assets/mocha-logo.svg
|
||||||
|
assets/opencollective-header.png
|
||||||
|
bin/_mocha
|
||||||
|
bin/mocha
|
||||||
|
browser-entry.js
|
||||||
|
docs/.browserslistrc
|
||||||
|
docs/.eleventyignore
|
||||||
|
docs/API.md
|
||||||
|
docs/CNAME
|
||||||
|
docs/LICENSE-CC-BY-4.0
|
||||||
|
docs/README.md
|
||||||
|
docs/_data/blocklist.json
|
||||||
|
docs/_data/files.js
|
||||||
|
docs/_data/supporters.js
|
||||||
|
docs/_data/toc.js
|
||||||
|
docs/_data/usage.js
|
||||||
|
docs/_headers
|
||||||
|
docs/_includes/default.liquid
|
||||||
|
docs/_includes/fixture-wizard.html
|
||||||
|
docs/_includes/supporters.md
|
||||||
|
docs/api-tutorials/custom-reporter.md
|
||||||
|
docs/api-tutorials/jsdoc.tutorials.json
|
||||||
|
docs/changelogs/CHANGELOG_V3_older.md
|
||||||
|
docs/changelogs/CHANGELOG_V4.md
|
||||||
|
docs/changelogs/README.md
|
||||||
|
docs/css/normalize.css
|
||||||
|
docs/css/prism.css
|
||||||
|
docs/css/style.css
|
||||||
|
docs/css/supporters.css
|
||||||
|
docs/example/Array.js
|
||||||
|
docs/example/async-dump.js
|
||||||
|
docs/example/debug-hanging-mocha.js
|
||||||
|
docs/example/tests.html
|
||||||
|
docs/favicon.ico
|
||||||
|
docs/images/emacs.png
|
||||||
|
docs/images/jetbrains-plugin.png
|
||||||
|
docs/images/join-chat.svg
|
||||||
|
docs/images/link-icon.svg
|
||||||
|
docs/images/matomo-logo.png
|
||||||
|
docs/images/mocha-logo.svg
|
||||||
|
docs/images/mocha_side_bar.png
|
||||||
|
docs/images/openjsf-logo.svg
|
||||||
|
docs/images/reporter-doc.png
|
||||||
|
docs/images/reporter-dot.png
|
||||||
|
docs/images/reporter-html.png
|
||||||
|
docs/images/reporter-json-stream.png
|
||||||
|
docs/images/reporter-json.png
|
||||||
|
docs/images/reporter-landing-fail.png
|
||||||
|
docs/images/reporter-landing.png
|
||||||
|
docs/images/reporter-list.png
|
||||||
|
docs/images/reporter-min.png
|
||||||
|
docs/images/reporter-nyan.png
|
||||||
|
docs/images/reporter-progress.png
|
||||||
|
docs/images/reporter-spec-duration.png
|
||||||
|
docs/images/reporter-spec-fail.png
|
||||||
|
docs/images/reporter-spec.png
|
||||||
|
docs/images/reporter-string-diffs.png
|
||||||
|
docs/images/reporter-tap.png
|
||||||
|
docs/images/test-duration-range.png
|
||||||
|
docs/images/wallaby-logo.png
|
||||||
|
docs/images/wallaby.png
|
||||||
|
docs/index.md
|
||||||
|
docs/js/html5shiv.min.js
|
||||||
|
example/config/.mocharc.js
|
||||||
|
example/config/.mocharc.json
|
||||||
|
example/config/.mocharc.jsonc
|
||||||
|
example/config/.mocharc.yml
|
||||||
|
example/config/README.md
|
||||||
|
index.js
|
||||||
|
jsdoc.conf.json
|
||||||
|
karma.conf.js
|
||||||
|
lib/browser/growl.js
|
||||||
|
lib/browser/highlight-tags.js
|
||||||
|
lib/browser/parse-query.js
|
||||||
|
lib/browser/progress.js
|
||||||
|
lib/browser/template.html
|
||||||
|
lib/cli/cli.js
|
||||||
|
lib/cli/collect-files.js
|
||||||
|
lib/cli/commands.js
|
||||||
|
lib/cli/config.js
|
||||||
|
lib/cli/index.js
|
||||||
|
lib/cli/init.js
|
||||||
|
lib/cli/lookup-files.js
|
||||||
|
lib/cli/node-flags.js
|
||||||
|
lib/cli/one-and-dones.js
|
||||||
|
lib/cli/options.js
|
||||||
|
lib/cli/run-helpers.js
|
||||||
|
lib/cli/run-option-metadata.js
|
||||||
|
lib/cli/run.js
|
||||||
|
lib/cli/watch-run.js
|
||||||
|
lib/context.js
|
||||||
|
lib/errors.js
|
||||||
|
lib/esm-utils.js
|
||||||
|
lib/hook.js
|
||||||
|
lib/interfaces/bdd.js
|
||||||
|
lib/interfaces/common.js
|
||||||
|
lib/interfaces/exports.js
|
||||||
|
lib/interfaces/index.js
|
||||||
|
lib/interfaces/qunit.js
|
||||||
|
lib/interfaces/tdd.js
|
||||||
|
lib/mocha.js
|
||||||
|
lib/mocharc.json
|
||||||
|
lib/nodejs/buffered-worker-pool.js
|
||||||
|
lib/nodejs/file-unloader.js
|
||||||
|
lib/nodejs/growl.js
|
||||||
|
lib/nodejs/parallel-buffered-runner.js
|
||||||
|
lib/nodejs/reporters/parallel-buffered.js
|
||||||
|
lib/nodejs/serializer.js
|
||||||
|
lib/nodejs/worker.js
|
||||||
|
lib/pending.js
|
||||||
|
lib/plugin-loader.js
|
||||||
|
lib/reporters/base.js
|
||||||
|
lib/reporters/doc.js
|
||||||
|
lib/reporters/dot.js
|
||||||
|
lib/reporters/html.js
|
||||||
|
lib/reporters/index.js
|
||||||
|
lib/reporters/json-stream.js
|
||||||
|
lib/reporters/json.js
|
||||||
|
lib/reporters/landing.js
|
||||||
|
lib/reporters/list.js
|
||||||
|
lib/reporters/markdown.js
|
||||||
|
lib/reporters/min.js
|
||||||
|
lib/reporters/nyan.js
|
||||||
|
lib/reporters/progress.js
|
||||||
|
lib/reporters/spec.js
|
||||||
|
lib/reporters/tap.js
|
||||||
|
lib/reporters/xunit.js
|
||||||
|
lib/runnable.js
|
||||||
|
lib/runner.js
|
||||||
|
lib/stats-collector.js
|
||||||
|
lib/suite.js
|
||||||
|
lib/test.js
|
||||||
|
lib/utils.js
|
||||||
|
mocha.css
|
||||||
|
netlify.toml
|
||||||
|
package-lock.json
|
||||||
|
package-scripts.js
|
||||||
|
package.json
|
||||||
|
rollup.config.js
|
||||||
|
scripts/karma-rollup-plugin.js
|
||||||
|
scripts/linkify-changelog.js
|
||||||
|
scripts/netlify-headers.js
|
||||||
|
scripts/pick-from-package-json.js
|
||||||
|
scripts/update-authors.js
|
||||||
|
test/README.md
|
||||||
|
test/assertions.js
|
||||||
|
test/browser-specific/esm.spec.mjs
|
||||||
|
test/browser-specific/fixtures/esm.fixture.mjs
|
||||||
|
test/browser-specific/fixtures/requirejs/lib.fixture.js
|
||||||
|
test/browser-specific/fixtures/requirejs/main.fixture.js
|
||||||
|
test/browser-specific/fixtures/webpack/webpack.config.js
|
||||||
|
test/browser-specific/fixtures/webpack/webpack.fixture.mjs
|
||||||
|
test/browser-specific/requirejs-setup.js
|
||||||
|
test/browser-specific/setup.js
|
||||||
|
test/compiler-fixtures/foo.fixture.js
|
||||||
|
test/compiler/test.coffee
|
||||||
|
test/compiler/test.foo
|
||||||
|
test/integration/README.md
|
||||||
|
test/integration/color.spec.js
|
||||||
|
test/integration/common-js-require.spec.js
|
||||||
|
test/integration/compiler-globbing.spec.js
|
||||||
|
test/integration/config.spec.js
|
||||||
|
test/integration/deprecate.spec.js
|
||||||
|
test/integration/diffs.spec.js
|
||||||
|
test/integration/duplicate-arguments.spec.js
|
||||||
|
test/integration/esm.spec.js
|
||||||
|
test/integration/events.spec.js
|
||||||
|
test/integration/file-utils.spec.js
|
||||||
|
test/integration/fixtures/__default__.fixture.js
|
||||||
|
test/integration/fixtures/cascade.fixture.js
|
||||||
|
test/integration/fixtures/common-js-require.fixture.js
|
||||||
|
test/integration/fixtures/config/mocha-config/index.js
|
||||||
|
test/integration/fixtures/config/mocha-config/package.json
|
||||||
|
test/integration/fixtures/config/mocharc.cjs
|
||||||
|
test/integration/fixtures/config/mocharc.js
|
||||||
|
test/integration/fixtures/config/mocharc.json
|
||||||
|
test/integration/fixtures/config/mocharc.yaml
|
||||||
|
test/integration/fixtures/current-test-title.fixture.js
|
||||||
|
test/integration/fixtures/deprecate.fixture.js
|
||||||
|
test/integration/fixtures/diffs/diffs.css.in
|
||||||
|
test/integration/fixtures/diffs/diffs.css.out
|
||||||
|
test/integration/fixtures/diffs/diffs.fixture.js
|
||||||
|
test/integration/fixtures/diffs/output
|
||||||
|
test/integration/fixtures/esm/add.mjs
|
||||||
|
test/integration/fixtures/esm/esm-failure.fixture.mjs
|
||||||
|
test/integration/fixtures/esm/esm-success.fixture.mjs
|
||||||
|
test/integration/fixtures/esm/js-folder/add.js
|
||||||
|
test/integration/fixtures/esm/js-folder/esm-in-js.fixture.js
|
||||||
|
test/integration/fixtures/esm/js-folder/package.json
|
||||||
|
test/integration/fixtures/esm/syntax-error/esm-syntax-error.fixture.mjs
|
||||||
|
test/integration/fixtures/exit.fixture.js
|
||||||
|
test/integration/fixtures/glob/glob.spec.js
|
||||||
|
test/integration/fixtures/glob/nested/glob.spec.js
|
||||||
|
test/integration/fixtures/hooks/after-each-hook-async-error.fixture.js
|
||||||
|
test/integration/fixtures/hooks/after-each-hook-error.fixture.js
|
||||||
|
test/integration/fixtures/hooks/after-each-this-test-error.fixture.js
|
||||||
|
test/integration/fixtures/hooks/after-hook-async-error.fixture.js
|
||||||
|
test/integration/fixtures/hooks/after-hook-deepnested-error.fixture.js
|
||||||
|
test/integration/fixtures/hooks/after-hook-error.fixture.js
|
||||||
|
test/integration/fixtures/hooks/after-hook-nested-error.fixture.js
|
||||||
|
test/integration/fixtures/hooks/before-each-hook-async-error.fixture.js
|
||||||
|
test/integration/fixtures/hooks/before-each-hook-error.fixture.js
|
||||||
|
test/integration/fixtures/hooks/before-hook-async-error-tip.fixture.js
|
||||||
|
test/integration/fixtures/hooks/before-hook-async-error.fixture.js
|
||||||
|
test/integration/fixtures/hooks/before-hook-deepnested-error.fixture.js
|
||||||
|
test/integration/fixtures/hooks/before-hook-error-tip.fixture.js
|
||||||
|
test/integration/fixtures/hooks/before-hook-error.fixture.js
|
||||||
|
test/integration/fixtures/hooks/before-hook-nested-error.fixture.js
|
||||||
|
test/integration/fixtures/hooks/before-hook-root-error.fixture.js
|
||||||
|
test/integration/fixtures/hooks/multiple-hook-async-error.fixture.js
|
||||||
|
test/integration/fixtures/hooks/multiple-hook-error.fixture.js
|
||||||
|
test/integration/fixtures/multiple-done-async.fixture.js
|
||||||
|
test/integration/fixtures/multiple-done-before-each.fixture.js
|
||||||
|
test/integration/fixtures/multiple-done-before.fixture.js
|
||||||
|
test/integration/fixtures/multiple-done-specs.fixture.js
|
||||||
|
test/integration/fixtures/multiple-done-with-error.fixture.js
|
||||||
|
test/integration/fixtures/multiple-done.fixture.js
|
||||||
|
test/integration/fixtures/multiple-runs/clean-references.fixture.js
|
||||||
|
test/integration/fixtures/multiple-runs/dispose.fixture.js
|
||||||
|
test/integration/fixtures/multiple-runs/multiple-runs-with-different-output-suite.fixture.js
|
||||||
|
test/integration/fixtures/multiple-runs/multiple-runs-with-flaky-before-each-suite.fixture.js
|
||||||
|
test/integration/fixtures/multiple-runs/multiple-runs-with-flaky-before-each.fixture.js
|
||||||
|
test/integration/fixtures/multiple-runs/run-thrice-helper.js
|
||||||
|
test/integration/fixtures/multiple-runs/run-thrice.fixture.js
|
||||||
|
test/integration/fixtures/multiple-runs/start-second-run-if-previous-is-still-running-suite.fixture.js
|
||||||
|
test/integration/fixtures/multiple-runs/start-second-run-if-previous-is-still-running.fixture.js
|
||||||
|
test/integration/fixtures/no-diff.fixture.js
|
||||||
|
test/integration/fixtures/options/allow-uncaught/propagate.fixture.js
|
||||||
|
test/integration/fixtures/options/allow-uncaught/this-skip-it.fixture.js
|
||||||
|
test/integration/fixtures/options/async-only-async.fixture.js
|
||||||
|
test/integration/fixtures/options/async-only-sync.fixture.js
|
||||||
|
test/integration/fixtures/options/bail-async.fixture.js
|
||||||
|
test/integration/fixtures/options/bail-with-after.fixture.js
|
||||||
|
test/integration/fixtures/options/bail-with-afterEach.fixture.js
|
||||||
|
test/integration/fixtures/options/bail-with-before.fixture.js
|
||||||
|
test/integration/fixtures/options/bail-with-beforeEach.fixture.js
|
||||||
|
test/integration/fixtures/options/bail-with-test.fixture.js
|
||||||
|
test/integration/fixtures/options/bail.fixture.js
|
||||||
|
test/integration/fixtures/options/delay-fail.fixture.js
|
||||||
|
test/integration/fixtures/options/delay-only.fixture.js
|
||||||
|
test/integration/fixtures/options/delay.fixture.js
|
||||||
|
test/integration/fixtures/options/extension/test1.fixture.js
|
||||||
|
test/integration/fixtures/options/extension/test2.fixture.coffee
|
||||||
|
test/integration/fixtures/options/file-alpha.fixture.js
|
||||||
|
test/integration/fixtures/options/file-beta.fixture.js
|
||||||
|
test/integration/fixtures/options/file-theta.fixture.js
|
||||||
|
test/integration/fixtures/options/forbid-only/only-before-each.fixture.js
|
||||||
|
test/integration/fixtures/options/forbid-only/only-before.fixture.js
|
||||||
|
test/integration/fixtures/options/forbid-only/only-empty-suite.fixture.js
|
||||||
|
test/integration/fixtures/options/forbid-only/only-suite.fixture.js
|
||||||
|
test/integration/fixtures/options/forbid-only/only.fixture.js
|
||||||
|
test/integration/fixtures/options/forbid-only/passed.fixture.js
|
||||||
|
test/integration/fixtures/options/forbid-pending/before-this-skip.fixture.js
|
||||||
|
test/integration/fixtures/options/forbid-pending/beforeEach-this-skip.fixture.js
|
||||||
|
test/integration/fixtures/options/forbid-pending/passed.fixture.js
|
||||||
|
test/integration/fixtures/options/forbid-pending/pending.fixture.js
|
||||||
|
test/integration/fixtures/options/forbid-pending/skip-empty-suite.fixture.js
|
||||||
|
test/integration/fixtures/options/forbid-pending/skip-suite.fixture.js
|
||||||
|
test/integration/fixtures/options/forbid-pending/skip.fixture.js
|
||||||
|
test/integration/fixtures/options/forbid-pending/this-skip.fixture.js
|
||||||
|
test/integration/fixtures/options/grep.fixture.js
|
||||||
|
test/integration/fixtures/options/ignore/fail.fixture.js
|
||||||
|
test/integration/fixtures/options/ignore/nested/fail.fixture.js
|
||||||
|
test/integration/fixtures/options/ignore/nested/pass.fixture.js
|
||||||
|
test/integration/fixtures/options/ignore/pass.fixture.js
|
||||||
|
test/integration/fixtures/options/jobs/fail-in-parallel.fixture.js
|
||||||
|
test/integration/fixtures/options/only/bdd.fixture.js
|
||||||
|
test/integration/fixtures/options/only/qunit.fixture.js
|
||||||
|
test/integration/fixtures/options/only/tdd.fixture.js
|
||||||
|
test/integration/fixtures/options/parallel/bail.fixture.js
|
||||||
|
test/integration/fixtures/options/parallel/exclusive-test-a.fixture.js
|
||||||
|
test/integration/fixtures/options/parallel/exclusive-test-b.fixture.js
|
||||||
|
test/integration/fixtures/options/parallel/retries-a.fixture.js
|
||||||
|
test/integration/fixtures/options/parallel/retries-b.fixture.js
|
||||||
|
test/integration/fixtures/options/parallel/syntax-err.fixture.js
|
||||||
|
test/integration/fixtures/options/parallel/test-a.fixture.js
|
||||||
|
test/integration/fixtures/options/parallel/test-b.fixture.js
|
||||||
|
test/integration/fixtures/options/parallel/test-c.fixture.js
|
||||||
|
test/integration/fixtures/options/parallel/test-d.fixture.js
|
||||||
|
test/integration/fixtures/options/parallel/uncaught.fixture.js
|
||||||
|
test/integration/fixtures/options/reporter-with-options.fixture.js
|
||||||
|
test/integration/fixtures/options/retries.fixture.js
|
||||||
|
test/integration/fixtures/options/slow-test.fixture.js
|
||||||
|
test/integration/fixtures/options/sort-alpha.fixture.js
|
||||||
|
test/integration/fixtures/options/sort-beta.fixture.js
|
||||||
|
test/integration/fixtures/options/watch/dependency.fixture.js
|
||||||
|
test/integration/fixtures/options/watch/hook.fixture.js
|
||||||
|
test/integration/fixtures/options/watch/test-file-change.fixture.js
|
||||||
|
test/integration/fixtures/options/watch/test-with-dependency.fixture.js
|
||||||
|
test/integration/fixtures/parallel/test1.mjs
|
||||||
|
test/integration/fixtures/parallel/test2.mjs
|
||||||
|
test/integration/fixtures/parallel/test3.mjs
|
||||||
|
test/integration/fixtures/passing-async.fixture.js
|
||||||
|
test/integration/fixtures/passing-sync.fixture.js
|
||||||
|
test/integration/fixtures/passing.fixture.js
|
||||||
|
test/integration/fixtures/pending/programmatic.fixture.js
|
||||||
|
test/integration/fixtures/pending/skip-async-before-hooks.fixture.js
|
||||||
|
test/integration/fixtures/pending/skip-async-before-nested.fixture.js
|
||||||
|
test/integration/fixtures/pending/skip-async-before.fixture.js
|
||||||
|
test/integration/fixtures/pending/skip-async-beforeEach.fixture.js
|
||||||
|
test/integration/fixtures/pending/skip-async-spec.fixture.js
|
||||||
|
test/integration/fixtures/pending/skip-hierarchy.fixture.js
|
||||||
|
test/integration/fixtures/pending/skip-shorthand.fixture.js
|
||||||
|
test/integration/fixtures/pending/skip-sync-after.fixture.js
|
||||||
|
test/integration/fixtures/pending/skip-sync-before-hooks.fixture.js
|
||||||
|
test/integration/fixtures/pending/skip-sync-before-inner.fixture.js
|
||||||
|
test/integration/fixtures/pending/skip-sync-before-nested.fixture.js
|
||||||
|
test/integration/fixtures/pending/skip-sync-before.fixture.js
|
||||||
|
test/integration/fixtures/pending/skip-sync-beforeEach-cond.fixture.js
|
||||||
|
test/integration/fixtures/pending/skip-sync-beforeEach.fixture.js
|
||||||
|
test/integration/fixtures/pending/skip-sync-spec.fixture.js
|
||||||
|
test/integration/fixtures/pending/spec.fixture.js
|
||||||
|
test/integration/fixtures/plugins/global-fixtures/global-setup-teardown-multiple.fixture.js
|
||||||
|
test/integration/fixtures/plugins/global-fixtures/global-setup-teardown.fixture.js
|
||||||
|
test/integration/fixtures/plugins/global-fixtures/global-setup.fixture.js
|
||||||
|
test/integration/fixtures/plugins/global-fixtures/global-teardown.fixture.js
|
||||||
|
test/integration/fixtures/plugins/root-hooks/esm/package.json
|
||||||
|
test/integration/fixtures/plugins/root-hooks/esm/root-hook-defs-esm.fixture.js
|
||||||
|
test/integration/fixtures/plugins/root-hooks/root-hook-defs-a.fixture.js
|
||||||
|
test/integration/fixtures/plugins/root-hooks/root-hook-defs-b.fixture.js
|
||||||
|
test/integration/fixtures/plugins/root-hooks/root-hook-defs-c.fixture.js
|
||||||
|
test/integration/fixtures/plugins/root-hooks/root-hook-defs-d.fixture.js
|
||||||
|
test/integration/fixtures/plugins/root-hooks/root-hook-defs-esm-broken.fixture.js
|
||||||
|
test/integration/fixtures/plugins/root-hooks/root-hook-defs-esm.fixture.mjs
|
||||||
|
test/integration/fixtures/plugins/root-hooks/root-hook-test-2.fixture.js
|
||||||
|
test/integration/fixtures/plugins/root-hooks/root-hook-test.fixture.js
|
||||||
|
test/integration/fixtures/regression/issue-1991.fixture.js
|
||||||
|
test/integration/fixtures/regression/issue-2315.fixture.js
|
||||||
|
test/integration/fixtures/regression/issue-2406.fixture.js
|
||||||
|
test/integration/fixtures/regression/issue-2417.fixture.js
|
||||||
|
test/integration/fixtures/reporters.fixture.js
|
||||||
|
test/integration/fixtures/retries/async.fixture.js
|
||||||
|
test/integration/fixtures/retries/early-pass.fixture.js
|
||||||
|
test/integration/fixtures/retries/hooks.fixture.js
|
||||||
|
test/integration/fixtures/retries/nested.fixture.js
|
||||||
|
test/integration/fixtures/runner/events-bail-retries.fixture.js
|
||||||
|
test/integration/fixtures/runner/events-bail.fixture.js
|
||||||
|
test/integration/fixtures/runner/events-basic.fixture.js
|
||||||
|
test/integration/fixtures/runner/events-delay.fixture.js
|
||||||
|
test/integration/fixtures/runner/events-retries.fixture.js
|
||||||
|
test/integration/fixtures/simple-reporter.js
|
||||||
|
test/integration/fixtures/simple-ui.fixture.js
|
||||||
|
test/integration/fixtures/suite/suite-no-callback.fixture.js
|
||||||
|
test/integration/fixtures/suite/suite-returning-value.fixture.js
|
||||||
|
test/integration/fixtures/suite/suite-skipped-callback.fixture.js
|
||||||
|
test/integration/fixtures/suite/suite-skipped-no-callback.fixture.js
|
||||||
|
test/integration/fixtures/test-for-simple-ui.fixture.js
|
||||||
|
test/integration/fixtures/timeout-override.fixture.js
|
||||||
|
test/integration/fixtures/timeout.fixture.js
|
||||||
|
test/integration/fixtures/uncaught/after-runner.fixture.js
|
||||||
|
test/integration/fixtures/uncaught/double.fixture.js
|
||||||
|
test/integration/fixtures/uncaught/fatal.fixture.js
|
||||||
|
test/integration/fixtures/uncaught/hook.fixture.js
|
||||||
|
test/integration/fixtures/uncaught/issue-1327.fixture.js
|
||||||
|
test/integration/fixtures/uncaught/issue-1417.fixture.js
|
||||||
|
test/integration/fixtures/uncaught/listeners.fixture.js
|
||||||
|
test/integration/fixtures/uncaught/pending.fixture.js
|
||||||
|
test/integration/fixtures/uncaught/recover.fixture.js
|
||||||
|
test/integration/fixtures/uncaught/unhandled.fixture.js
|
||||||
|
test/integration/glob.spec.js
|
||||||
|
test/integration/helpers.js
|
||||||
|
test/integration/hook-err.spec.js
|
||||||
|
test/integration/hooks.spec.js
|
||||||
|
test/integration/init.spec.js
|
||||||
|
test/integration/invalid-arguments.spec.js
|
||||||
|
test/integration/multiple-done.spec.js
|
||||||
|
test/integration/multiple-runs.spec.js
|
||||||
|
test/integration/no-diff.spec.js
|
||||||
|
test/integration/only.spec.js
|
||||||
|
test/integration/options/allowUncaught.spec.js
|
||||||
|
test/integration/options/asyncOnly.spec.js
|
||||||
|
test/integration/options/bail.spec.js
|
||||||
|
test/integration/options/compilers.spec.js
|
||||||
|
test/integration/options/delay.spec.js
|
||||||
|
test/integration/options/exit.spec.js
|
||||||
|
test/integration/options/extension.spec.js
|
||||||
|
test/integration/options/file.spec.js
|
||||||
|
test/integration/options/forbidOnly.spec.js
|
||||||
|
test/integration/options/forbidPending.spec.js
|
||||||
|
test/integration/options/grep.spec.js
|
||||||
|
test/integration/options/ignore.spec.js
|
||||||
|
test/integration/options/invert.spec.js
|
||||||
|
test/integration/options/jobs.spec.js
|
||||||
|
test/integration/options/listInterfaces.spec.js
|
||||||
|
test/integration/options/listReporters.spec.js
|
||||||
|
test/integration/options/node-flags.spec.js
|
||||||
|
test/integration/options/opts.spec.js
|
||||||
|
test/integration/options/parallel.spec.js
|
||||||
|
test/integration/options/reporter-option.spec.js
|
||||||
|
test/integration/options/retries.spec.js
|
||||||
|
test/integration/options/sort.spec.js
|
||||||
|
test/integration/options/timeout.spec.js
|
||||||
|
test/integration/options/ui.spec.js
|
||||||
|
test/integration/options/watch.spec.js
|
||||||
|
test/integration/parallel.spec.js
|
||||||
|
test/integration/pending.spec.js
|
||||||
|
test/integration/plugins/global-fixtures.spec.js
|
||||||
|
test/integration/plugins/root-hooks.spec.js
|
||||||
|
test/integration/regression.spec.js
|
||||||
|
test/integration/reporters.spec.js
|
||||||
|
test/integration/retries.spec.js
|
||||||
|
test/integration/suite.spec.js
|
||||||
|
test/integration/timeout.spec.js
|
||||||
|
test/integration/uncaught.spec.js
|
||||||
|
test/interfaces/bdd.spec.js
|
||||||
|
test/interfaces/exports.spec.js
|
||||||
|
test/interfaces/qunit.spec.js
|
||||||
|
test/interfaces/tdd.spec.js
|
||||||
|
test/jsapi/index.js
|
||||||
|
test/node-unit/buffered-worker-pool.spec.js
|
||||||
|
test/node-unit/cli/config.spec.js
|
||||||
|
test/node-unit/cli/fixtures/bad-module.fixture.js
|
||||||
|
test/node-unit/cli/node-flags.spec.js
|
||||||
|
test/node-unit/cli/options.spec.js
|
||||||
|
test/node-unit/cli/run-helpers.spec.js
|
||||||
|
test/node-unit/cli/run.spec.js
|
||||||
|
test/node-unit/fixtures/dumb-module.fixture.js
|
||||||
|
test/node-unit/fixtures/dumber-module.fixture.js
|
||||||
|
test/node-unit/fixtures/wonky-reporter.fixture.js
|
||||||
|
test/node-unit/mocha.spec.js
|
||||||
|
test/node-unit/parallel-buffered-runner.spec.js
|
||||||
|
test/node-unit/reporters/parallel-buffered.spec.js
|
||||||
|
test/node-unit/serializer.spec.js
|
||||||
|
test/node-unit/stack-trace-filter.spec.js
|
||||||
|
test/node-unit/utils.spec.js
|
||||||
|
test/node-unit/worker.spec.js
|
||||||
|
test/only/bdd-require.spec.js
|
||||||
|
test/only/global/bdd.spec.js
|
||||||
|
test/only/global/qunit.spec.js
|
||||||
|
test/only/global/tdd.spec.js
|
||||||
|
test/reporters/base.spec.js
|
||||||
|
test/reporters/doc.spec.js
|
||||||
|
test/reporters/dot.spec.js
|
||||||
|
test/reporters/helpers.js
|
||||||
|
test/reporters/json-stream.spec.js
|
||||||
|
test/reporters/json.spec.js
|
||||||
|
test/reporters/landing.spec.js
|
||||||
|
test/reporters/list.spec.js
|
||||||
|
test/reporters/markdown.spec.js
|
||||||
|
test/reporters/min.spec.js
|
||||||
|
test/reporters/nyan.spec.js
|
||||||
|
test/reporters/progress.spec.js
|
||||||
|
test/reporters/spec.spec.js
|
||||||
|
test/reporters/tap.spec.js
|
||||||
|
test/reporters/xunit.spec.js
|
||||||
|
test/require/a.js
|
||||||
|
test/require/b.coffee
|
||||||
|
test/require/c.js
|
||||||
|
test/require/d.coffee
|
||||||
|
test/require/require.spec.js
|
||||||
|
test/setup.js
|
||||||
|
test/smoke/smoke.spec.js
|
||||||
|
test/unit/context.spec.js
|
||||||
|
test/unit/duration.spec.js
|
||||||
|
test/unit/errors.spec.js
|
||||||
|
test/unit/globals.spec.js
|
||||||
|
test/unit/grep.spec.js
|
||||||
|
test/unit/hook-async.spec.js
|
||||||
|
test/unit/hook-sync-nested.spec.js
|
||||||
|
test/unit/hook-sync.spec.js
|
||||||
|
test/unit/hook-timeout.spec.js
|
||||||
|
test/unit/hook.spec.js
|
||||||
|
test/unit/mocha.spec.js
|
||||||
|
test/unit/overspecified-async.spec.js
|
||||||
|
test/unit/parse-query.spec.js
|
||||||
|
test/unit/plugin-loader.spec.js
|
||||||
|
test/unit/required-tokens.spec.js
|
||||||
|
test/unit/root.spec.js
|
||||||
|
test/unit/runnable.spec.js
|
||||||
|
test/unit/runner.spec.js
|
||||||
|
test/unit/suite.spec.js
|
||||||
|
test/unit/test.spec.js
|
||||||
|
test/unit/throw.spec.js
|
||||||
|
test/unit/timeout.spec.js
|
||||||
|
test/unit/utils.spec.js
|
||||||
15097
__tests__/fixtures/external/mocha/mocha-test-results.json
vendored
Normal file
15097
__tests__/fixtures/external/mocha/mocha-test-results.json
vendored
Normal file
File diff suppressed because it is too large
Load Diff
125
__tests__/fixtures/external/nunit-sample.xml
vendored
Normal file
125
__tests__/fixtures/external/nunit-sample.xml
vendored
Normal file
@@ -0,0 +1,125 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8" standalone="no"?>
|
||||||
|
<test-run id="2" name="mock-assembly.dll" fullname="D:\Dev\NUnit\nunit-3.0\work\bin\vs2008\Debug\mock-assembly.dll" testcasecount="25" result="Failed" time="0.154" total="18" passed="12" failed="2" inconclusive="1" skipped="3" asserts="2" run-date="2011-07-26" start-time="11:34:27">
|
||||||
|
<environment nunit-version="1.0.0.0" clr-version="2.0.50727.4961" os-version="Microsoft Windows NT 6.1.7600.0" platform="Win32NT" cwd="D:\Dev\NUnit\nunit-3.0\work\bin\vs2008\Debug" machine-name="CHARLIE-LAPTOP" user="charlie" user-domain="charlie-laptop" culture="en-US" uiculture="en-US" />
|
||||||
|
<test-suite type="Assembly" id="1036" name="mock-assembly.dll" fullname="D:\Dev\NUnit\nunit-3.0\work\bin\vs2008\Debug\mock-assembly.dll" testcasecount="25" result="Failed" time="0.154" total="18" passed="12" failed="2" inconclusive="1" skipped="3" asserts="2">
|
||||||
|
<properties>
|
||||||
|
<property name="_PID" value="11928" />
|
||||||
|
<property name="_APPDOMAIN" value="test-domain-mock-assembly.dll" />
|
||||||
|
</properties>
|
||||||
|
<failure>
|
||||||
|
<message><![CDATA[Child test failed]]></message>
|
||||||
|
</failure>
|
||||||
|
<test-suite type="TestFixture" id="1000" name="MockTestFixture" fullname="NUnit.Tests.Assemblies.MockTestFixture" testcasecount="11" result="Failed" time="0.119" total="10" passed="4" failed="2" inconclusive="1" skipped="3" asserts="0">
|
||||||
|
<properties>
|
||||||
|
<property name="Category" value="FixtureCategory" />
|
||||||
|
<property name="Description" value="Fake Test Fixture" />
|
||||||
|
</properties>
|
||||||
|
<failure>
|
||||||
|
<message><![CDATA[Child test failed]]></message>
|
||||||
|
</failure>
|
||||||
|
<test-case id="1005" name="FailingTest" fullname="NUnit.Tests.Assemblies.MockTestFixture.FailingTest" result="Failed" time="0.023" asserts="0">
|
||||||
|
<failure>
|
||||||
|
<message><![CDATA[Intentional failure]]></message>
|
||||||
|
<stack-trace><![CDATA[ at NUnit.Framework.Assert.Fail(String message, Object[] args) in D:\Dev\NUnit\nunit-3.0\work\NUnitFramework\src\framework\Assert.cs:line 142
|
||||||
|
at NUnit.Framework.Assert.Fail(String message) in D:\Dev\NUnit\nunit-3.0\work\NUnitFramework\src\framework\Assert.cs:line 152
|
||||||
|
at NUnit.Tests.Assemblies.MockTestFixture.FailingTest() in D:\Dev\NUnit\nunit-3.0\work\NUnitFramework\src\mock-assembly\MockAssembly.cs:line 121]]></stack-trace>
|
||||||
|
</failure>
|
||||||
|
</test-case>
|
||||||
|
<test-case id="1010" name="InconclusiveTest" fullname="NUnit.Tests.Assemblies.MockTestFixture.InconclusiveTest" result="Inconclusive" time="0.001" asserts="0" />
|
||||||
|
<test-case id="1001" name="MockTest1" fullname="NUnit.Tests.Assemblies.MockTestFixture.MockTest1" result="Passed" time="0.000" asserts="0">
|
||||||
|
<properties>
|
||||||
|
<property name="Description" value="Mock Test #1" />
|
||||||
|
</properties>
|
||||||
|
</test-case>
|
||||||
|
<test-case id="1002" name="MockTest2" fullname="NUnit.Tests.Assemblies.MockTestFixture.MockTest2" result="Passed" time="0.000" asserts="0">
|
||||||
|
<properties>
|
||||||
|
<property name="Severity" value="Critical" />
|
||||||
|
<property name="Description" value="This is a really, really, really, really, really, really, really, really, really, really, really, really, really, really, really, really, really, really, really, really, really, really, really, really, really long description" />
|
||||||
|
<property name="Category" value="MockCategory" />
|
||||||
|
</properties>
|
||||||
|
</test-case>
|
||||||
|
<test-case id="1003" name="MockTest3" fullname="NUnit.Tests.Assemblies.MockTestFixture.MockTest3" result="Passed" time="0.000" asserts="0">
|
||||||
|
<properties>
|
||||||
|
<property name="Category" value="AnotherCategory" />
|
||||||
|
<property name="Category" value="MockCategory" />
|
||||||
|
</properties>
|
||||||
|
</test-case>
|
||||||
|
<test-case id="1007" name="MockTest4" fullname="NUnit.Tests.Assemblies.MockTestFixture.MockTest4" result="Skipped" label="Ignored" time="0.000" asserts="0">
|
||||||
|
<properties>
|
||||||
|
<property name="Category" value="Foo" />
|
||||||
|
<property name="_SKIPREASON" value="ignoring this test method for now" />
|
||||||
|
</properties>
|
||||||
|
<reason>
|
||||||
|
<message><![CDATA[ignoring this test method for now]]></message>
|
||||||
|
</reason>
|
||||||
|
</test-case>
|
||||||
|
<test-case id="1004" name="MockTest5" fullname="NUnit.Tests.Assemblies.MockTestFixture.MockTest5" result="Skipped" label="Invalid" time="0.000" asserts="0">
|
||||||
|
<properties>
|
||||||
|
<property name="_SKIPREASON" value="Method is not public" />
|
||||||
|
</properties>
|
||||||
|
<reason>
|
||||||
|
<message><![CDATA[Method is not public]]></message>
|
||||||
|
</reason>
|
||||||
|
</test-case>
|
||||||
|
<test-case id="1009" name="NotRunnableTest" fullname="NUnit.Tests.Assemblies.MockTestFixture.NotRunnableTest" result="Skipped" label="Invalid" time="0.000" asserts="0">
|
||||||
|
<properties>
|
||||||
|
<property name="_SKIPREASON" value="No arguments were provided" />
|
||||||
|
</properties>
|
||||||
|
<reason>
|
||||||
|
<message><![CDATA[No arguments were provided]]></message>
|
||||||
|
</reason>
|
||||||
|
</test-case>
|
||||||
|
<test-case id="1011" name="TestWithException" fullname="NUnit.Tests.Assemblies.MockTestFixture.TestWithException" result="Failed" label="Error" time="0.002" asserts="0">
|
||||||
|
<failure>
|
||||||
|
<message><![CDATA[System.ApplicationException : Intentional Exception]]></message>
|
||||||
|
<stack-trace><![CDATA[ at NUnit.Tests.Assemblies.MockTestFixture.MethodThrowsException() in D:\Dev\NUnit\nunit-3.0\work\NUnitFramework\src\mock-assembly\MockAssembly.cs:line 158
|
||||||
|
at NUnit.Tests.Assemblies.MockTestFixture.TestWithException() in D:\Dev\NUnit\nunit-3.0\work\NUnitFramework\src\mock-assembly\MockAssembly.cs:line 153]]></stack-trace>
|
||||||
|
</failure>
|
||||||
|
</test-case>
|
||||||
|
<test-case id="1006" name="TestWithManyProperties" fullname="NUnit.Tests.Assemblies.MockTestFixture.TestWithManyProperties" result="Passed" time="0.000" asserts="0">
|
||||||
|
<properties>
|
||||||
|
<property name="TargetMethod" value="SomeClassName" />
|
||||||
|
<property name="Size" value="5" />
|
||||||
|
</properties>
|
||||||
|
</test-case>
|
||||||
|
</test-suite>
|
||||||
|
<test-suite type="TestFixture" id="1023" name="BadFixture" fullname="NUnit.Tests.BadFixture" testcasecount="1" result="Skipped" label="Invalid" time="0.000" total="0" passed="0" failed="0" inconclusive="0" skipped="0" asserts="0">
|
||||||
|
<properties>
|
||||||
|
<property name="_SKIPREASON" value="No suitable constructor was found" />
|
||||||
|
</properties>
|
||||||
|
<reason>
|
||||||
|
<message><![CDATA[No suitable constructor was found]]></message>
|
||||||
|
</reason>
|
||||||
|
</test-suite>
|
||||||
|
<test-suite type="TestFixture" id="1025" name="FixtureWithTestCases" fullname="NUnit.Tests.FixtureWithTestCases" testcasecount="2" result="Passed" time="0.010" total="2" passed="2" failed="0" inconclusive="0" skipped="0" asserts="2">
|
||||||
|
<test-suite type="ParameterizedMethod" id="1026" name="MethodWithParameters" fullname="NUnit.Tests.FixtureWithTestCases.MethodWithParameters" testcasecount="2" result="Passed" time="0.009" total="2" passed="2" failed="0" inconclusive="0" skipped="0" asserts="2">
|
||||||
|
<test-case id="1027" name="MethodWithParameters(2,2)" fullname="NUnit.Tests.FixtureWithTestCases.MethodWithParameters(2,2)" result="Passed" time="0.006" asserts="1" />
|
||||||
|
<test-case id="1028" name="MethodWithParameters(9,11)" fullname="NUnit.Tests.FixtureWithTestCases.MethodWithParameters(9,11)" result="Passed" time="0.000" asserts="1" />
|
||||||
|
</test-suite>
|
||||||
|
</test-suite>
|
||||||
|
<test-suite type="TestFixture" id="1016" name="IgnoredFixture" fullname="NUnit.Tests.IgnoredFixture" testcasecount="3" result="Skipped" label="Ignored" time="0.000" total="0" passed="0" failed="0" inconclusive="0" skipped="0" asserts="0">
|
||||||
|
<properties>
|
||||||
|
<property name="_SKIPREASON" value="" />
|
||||||
|
</properties>
|
||||||
|
<reason>
|
||||||
|
<message><![CDATA[]]></message>
|
||||||
|
</reason>
|
||||||
|
</test-suite>
|
||||||
|
<test-suite type="ParameterizedFixture" id="1029" name="ParameterizedFixture" fullname="NUnit.Tests.ParameterizedFixture" testcasecount="4" result="Passed" time="0.007" total="4" passed="4" failed="0" inconclusive="0" skipped="0" asserts="0">
|
||||||
|
<test-suite type="TestFixture" id="1030" name="ParameterizedFixture(42)" fullname="NUnit.Tests.ParameterizedFixture(42)" testcasecount="2" result="Passed" time="0.003" total="2" passed="2" failed="0" inconclusive="0" skipped="0" asserts="0">
|
||||||
|
<test-case id="1031" name="Test1" fullname="NUnit.Tests.ParameterizedFixture(42).Test1" result="Passed" time="0.000" asserts="0" />
|
||||||
|
<test-case id="1032" name="Test2" fullname="NUnit.Tests.ParameterizedFixture(42).Test2" result="Passed" time="0.000" asserts="0" />
|
||||||
|
</test-suite>
|
||||||
|
<test-suite type="TestFixture" id="1033" name="ParameterizedFixture(5)" fullname="NUnit.Tests.ParameterizedFixture(5)" testcasecount="2" result="Passed" time="0.002" total="2" passed="2" failed="0" inconclusive="0" skipped="0" asserts="0">
|
||||||
|
<test-case id="1034" name="Test1" fullname="NUnit.Tests.ParameterizedFixture(5).Test1" result="Passed" time="0.000" asserts="0" />
|
||||||
|
<test-case id="1035" name="Test2" fullname="NUnit.Tests.ParameterizedFixture(5).Test2" result="Passed" time="0.000" asserts="0" />
|
||||||
|
</test-suite>
|
||||||
|
</test-suite>
|
||||||
|
<test-suite type="TestFixture" id="1012" name="OneTestCase" fullname="NUnit.Tests.Singletons.OneTestCase" testcasecount="1" result="Passed" time="0.001" total="1" passed="1" failed="0" inconclusive="0" skipped="0" asserts="0">
|
||||||
|
<test-case id="1013" name="TestCase" fullname="NUnit.Tests.Singletons.OneTestCase.TestCase" result="Passed" time="0.000" asserts="0" />
|
||||||
|
</test-suite>
|
||||||
|
<test-suite type="TestFixture" id="1014" name="MockTestFixture" fullname="NUnit.Tests.TestAssembly.MockTestFixture" testcasecount="1" result="Passed" time="0.001" total="1" passed="1" failed="0" inconclusive="0" skipped="0" asserts="0">
|
||||||
|
<test-case id="1015" name="MyTest" fullname="NUnit.Tests.TestAssembly.MockTestFixture.MyTest" result="Passed" time="0.001" asserts="0" />
|
||||||
|
</test-suite>
|
||||||
|
</test-suite>
|
||||||
|
</test-run>
|
||||||
158
__tests__/fixtures/mocha-json.json
Normal file
158
__tests__/fixtures/mocha-json.json
Normal file
@@ -0,0 +1,158 @@
|
|||||||
|
{
|
||||||
|
"stats": {
|
||||||
|
"suites": 3,
|
||||||
|
"tests": 6,
|
||||||
|
"passes": 1,
|
||||||
|
"pending": 1,
|
||||||
|
"failures": 4,
|
||||||
|
"start": "2021-02-24T20:26:09.297Z",
|
||||||
|
"end": "2021-02-24T20:26:09.309Z",
|
||||||
|
"duration": 12
|
||||||
|
},
|
||||||
|
"tests": [
|
||||||
|
{
|
||||||
|
"title": "Timeout test",
|
||||||
|
"fullTitle": "Timeout test",
|
||||||
|
"file": "C:\\Users\\Michal\\Workspace\\dorny\\test-reporter\\reports\\mocha\\test\\second.test.js",
|
||||||
|
"duration": 8,
|
||||||
|
"currentRetry": 0,
|
||||||
|
"err": {
|
||||||
|
"stack": "Error: Timeout of 1ms exceeded. For async tests and hooks, ensure \"done()\" is called; if returning a Promise, ensure it resolves. (C:\\Users\\Michal\\Workspace\\dorny\\test-reporter\\reports\\mocha\\test\\second.test.js)\n at listOnTimeout (internal/timers.js:554:17)\n at processTimers (internal/timers.js:497:7)",
|
||||||
|
"message": "Timeout of 1ms exceeded. For async tests and hooks, ensure \"done()\" is called; if returning a Promise, ensure it resolves. (C:\\Users\\Michal\\Workspace\\dorny\\test-reporter\\reports\\mocha\\test\\second.test.js)",
|
||||||
|
"code": "ERR_MOCHA_TIMEOUT",
|
||||||
|
"timeout": 1,
|
||||||
|
"file": "C:\\Users\\Michal\\Workspace\\dorny\\test-reporter\\reports\\mocha\\test\\second.test.js"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Skipped test",
|
||||||
|
"fullTitle": "Skipped test",
|
||||||
|
"file": "C:\\Users\\Michal\\Workspace\\dorny\\test-reporter\\reports\\mocha\\test\\second.test.js",
|
||||||
|
"currentRetry": 0,
|
||||||
|
"err": {}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Passing test",
|
||||||
|
"fullTitle": "Test 1 Passing test",
|
||||||
|
"file": "C:\\Users\\Michal\\Workspace\\dorny\\test-reporter\\reports\\mocha\\test\\main.test.js",
|
||||||
|
"duration": 0,
|
||||||
|
"currentRetry": 0,
|
||||||
|
"speed": "fast",
|
||||||
|
"err": {}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Failing test",
|
||||||
|
"fullTitle": "Test 1 Test 1.1 Failing test",
|
||||||
|
"file": "C:\\Users\\Michal\\Workspace\\dorny\\test-reporter\\reports\\mocha\\test\\main.test.js",
|
||||||
|
"duration": 1,
|
||||||
|
"currentRetry": 0,
|
||||||
|
"err": {
|
||||||
|
"stack": "AssertionError [ERR_ASSERTION]: Expected values to be strictly equal:\n\nfalse !== true\n\n at Context.<anonymous> (test\\main.test.js:11:14)\n at processImmediate (internal/timers.js:461:21)",
|
||||||
|
"message": "Expected values to be strictly equal:\n\nfalse !== true\n",
|
||||||
|
"generatedMessage": true,
|
||||||
|
"name": "AssertionError",
|
||||||
|
"code": "ERR_ASSERTION",
|
||||||
|
"actual": "false",
|
||||||
|
"expected": "true",
|
||||||
|
"operator": "strictEqual"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Exception in target unit",
|
||||||
|
"fullTitle": "Test 1 Test 1.1 Exception in target unit",
|
||||||
|
"file": "C:\\Users\\Michal\\Workspace\\dorny\\test-reporter\\reports\\mocha\\test\\main.test.js",
|
||||||
|
"duration": 0,
|
||||||
|
"currentRetry": 0,
|
||||||
|
"err": {
|
||||||
|
"stack": "Error: Some error\n at Object.throwError (lib\\main.js:2:9)\n at Context.<anonymous> (test\\main.test.js:15:11)\n at processImmediate (internal/timers.js:461:21)",
|
||||||
|
"message": "Some error"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Exception in test",
|
||||||
|
"fullTitle": "Test 2 Exception in test",
|
||||||
|
"file": "C:\\Users\\Michal\\Workspace\\dorny\\test-reporter\\reports\\mocha\\test\\main.test.js",
|
||||||
|
"duration": 0,
|
||||||
|
"currentRetry": 0,
|
||||||
|
"err": {
|
||||||
|
"stack": "Error: Some error\n at Context.<anonymous> (test\\main.test.js:22:11)\n at processImmediate (internal/timers.js:461:21)",
|
||||||
|
"message": "Some error"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"pending": [
|
||||||
|
{
|
||||||
|
"title": "Skipped test",
|
||||||
|
"fullTitle": "Skipped test",
|
||||||
|
"file": "C:\\Users\\Michal\\Workspace\\dorny\\test-reporter\\reports\\mocha\\test\\second.test.js",
|
||||||
|
"currentRetry": 0,
|
||||||
|
"err": {}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"failures": [
|
||||||
|
{
|
||||||
|
"title": "Timeout test",
|
||||||
|
"fullTitle": "Timeout test",
|
||||||
|
"file": "C:\\Users\\Michal\\Workspace\\dorny\\test-reporter\\reports\\mocha\\test\\second.test.js",
|
||||||
|
"duration": 8,
|
||||||
|
"currentRetry": 0,
|
||||||
|
"err": {
|
||||||
|
"stack": "Error: Timeout of 1ms exceeded. For async tests and hooks, ensure \"done()\" is called; if returning a Promise, ensure it resolves. (C:\\Users\\Michal\\Workspace\\dorny\\test-reporter\\reports\\mocha\\test\\second.test.js)\n at listOnTimeout (internal/timers.js:554:17)\n at processTimers (internal/timers.js:497:7)",
|
||||||
|
"message": "Timeout of 1ms exceeded. For async tests and hooks, ensure \"done()\" is called; if returning a Promise, ensure it resolves. (C:\\Users\\Michal\\Workspace\\dorny\\test-reporter\\reports\\mocha\\test\\second.test.js)",
|
||||||
|
"code": "ERR_MOCHA_TIMEOUT",
|
||||||
|
"timeout": 1,
|
||||||
|
"file": "C:\\Users\\Michal\\Workspace\\dorny\\test-reporter\\reports\\mocha\\test\\second.test.js"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Failing test",
|
||||||
|
"fullTitle": "Test 1 Test 1.1 Failing test",
|
||||||
|
"file": "C:\\Users\\Michal\\Workspace\\dorny\\test-reporter\\reports\\mocha\\test\\main.test.js",
|
||||||
|
"duration": 1,
|
||||||
|
"currentRetry": 0,
|
||||||
|
"err": {
|
||||||
|
"stack": "AssertionError [ERR_ASSERTION]: Expected values to be strictly equal:\n\nfalse !== true\n\n at Context.<anonymous> (test\\main.test.js:11:14)\n at processImmediate (internal/timers.js:461:21)",
|
||||||
|
"message": "Expected values to be strictly equal:\n\nfalse !== true\n",
|
||||||
|
"generatedMessage": true,
|
||||||
|
"name": "AssertionError",
|
||||||
|
"code": "ERR_ASSERTION",
|
||||||
|
"actual": "false",
|
||||||
|
"expected": "true",
|
||||||
|
"operator": "strictEqual"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Exception in target unit",
|
||||||
|
"fullTitle": "Test 1 Test 1.1 Exception in target unit",
|
||||||
|
"file": "C:\\Users\\Michal\\Workspace\\dorny\\test-reporter\\reports\\mocha\\test\\main.test.js",
|
||||||
|
"duration": 0,
|
||||||
|
"currentRetry": 0,
|
||||||
|
"err": {
|
||||||
|
"stack": "Error: Some error\n at Object.throwError (lib\\main.js:2:9)\n at Context.<anonymous> (test\\main.test.js:15:11)\n at processImmediate (internal/timers.js:461:21)",
|
||||||
|
"message": "Some error"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Exception in test",
|
||||||
|
"fullTitle": "Test 2 Exception in test",
|
||||||
|
"file": "C:\\Users\\Michal\\Workspace\\dorny\\test-reporter\\reports\\mocha\\test\\main.test.js",
|
||||||
|
"duration": 0,
|
||||||
|
"currentRetry": 0,
|
||||||
|
"err": {
|
||||||
|
"stack": "Error: Some error\n at Context.<anonymous> (test\\main.test.js:22:11)\n at processImmediate (internal/timers.js:461:21)",
|
||||||
|
"message": "Some error"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"passes": [
|
||||||
|
{
|
||||||
|
"title": "Passing test",
|
||||||
|
"fullTitle": "Test 1 Passing test",
|
||||||
|
"file": "C:\\Users\\Michal\\Workspace\\dorny\\test-reporter\\reports\\mocha\\test\\main.test.js",
|
||||||
|
"duration": 0,
|
||||||
|
"currentRetry": 0,
|
||||||
|
"speed": "fast",
|
||||||
|
"err": {}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
75
__tests__/java-junit.test.ts
Normal file
75
__tests__/java-junit.test.ts
Normal file
@@ -0,0 +1,75 @@
|
|||||||
|
import * as fs from 'fs'
|
||||||
|
import * as path from 'path'
|
||||||
|
|
||||||
|
import {JavaJunitParser} from '../src/parsers/java-junit/java-junit-parser'
|
||||||
|
import {ParseOptions} from '../src/test-parser'
|
||||||
|
import {getReport} from '../src/report/get-report'
|
||||||
|
import {normalizeFilePath} from '../src/utils/path-utils'
|
||||||
|
|
||||||
|
describe('java-junit tests', () => {
|
||||||
|
it('produces empty test run result when there are no test cases', async () => {
|
||||||
|
const fixturePath = path.join(__dirname, 'fixtures', 'empty', 'java-junit.xml')
|
||||||
|
const filePath = normalizeFilePath(path.relative(__dirname, fixturePath))
|
||||||
|
const fileContent = fs.readFileSync(fixturePath, {encoding: 'utf8'})
|
||||||
|
|
||||||
|
const opts: ParseOptions = {
|
||||||
|
parseErrors: true,
|
||||||
|
trackedFiles: []
|
||||||
|
}
|
||||||
|
|
||||||
|
const parser = new JavaJunitParser(opts)
|
||||||
|
const result = await parser.parse(filePath, fileContent)
|
||||||
|
expect(result.tests).toBe(0)
|
||||||
|
expect(result.result).toBe('success')
|
||||||
|
})
|
||||||
|
|
||||||
|
it('report from apache/pulsar single suite test results matches snapshot', async () => {
|
||||||
|
const fixturePath = path.join(
|
||||||
|
__dirname,
|
||||||
|
'fixtures',
|
||||||
|
'external',
|
||||||
|
'java',
|
||||||
|
'TEST-org.apache.pulsar.AddMissingPatchVersionTest.xml'
|
||||||
|
)
|
||||||
|
const trackedFilesPath = path.join(__dirname, 'fixtures', 'external', 'java', 'files.txt')
|
||||||
|
const outputPath = path.join(__dirname, '__outputs__', 'pulsar-test-results-no-merge.md')
|
||||||
|
const filePath = normalizeFilePath(path.relative(__dirname, fixturePath))
|
||||||
|
const fileContent = fs.readFileSync(fixturePath, {encoding: 'utf8'})
|
||||||
|
|
||||||
|
const trackedFiles = fs.readFileSync(trackedFilesPath, {encoding: 'utf8'}).split(/\n\r?/g)
|
||||||
|
const opts: ParseOptions = {
|
||||||
|
parseErrors: true,
|
||||||
|
trackedFiles
|
||||||
|
}
|
||||||
|
|
||||||
|
const parser = new JavaJunitParser(opts)
|
||||||
|
const result = await parser.parse(filePath, fileContent)
|
||||||
|
expect(result).toMatchSnapshot()
|
||||||
|
|
||||||
|
const report = getReport([result])
|
||||||
|
fs.mkdirSync(path.dirname(outputPath), {recursive: true})
|
||||||
|
fs.writeFileSync(outputPath, report)
|
||||||
|
})
|
||||||
|
|
||||||
|
it('report from apache/pulsar test results matches snapshot', async () => {
|
||||||
|
const fixturePath = path.join(__dirname, 'fixtures', 'external', 'java', 'pulsar-test-report.xml')
|
||||||
|
const trackedFilesPath = path.join(__dirname, 'fixtures', 'external', 'java', 'files.txt')
|
||||||
|
const outputPath = path.join(__dirname, '__outputs__', 'pulsar-test-results.md')
|
||||||
|
const filePath = normalizeFilePath(path.relative(__dirname, fixturePath))
|
||||||
|
const fileContent = fs.readFileSync(fixturePath, {encoding: 'utf8'})
|
||||||
|
|
||||||
|
const trackedFiles = fs.readFileSync(trackedFilesPath, {encoding: 'utf8'}).split(/\n\r?/g)
|
||||||
|
const opts: ParseOptions = {
|
||||||
|
parseErrors: true,
|
||||||
|
trackedFiles
|
||||||
|
}
|
||||||
|
|
||||||
|
const parser = new JavaJunitParser(opts)
|
||||||
|
const result = await parser.parse(filePath, fileContent)
|
||||||
|
expect(result).toMatchSnapshot()
|
||||||
|
|
||||||
|
const report = getReport([result])
|
||||||
|
fs.mkdirSync(path.dirname(outputPath), {recursive: true})
|
||||||
|
fs.writeFileSync(outputPath, report)
|
||||||
|
})
|
||||||
|
})
|
||||||
@@ -7,6 +7,22 @@ import {getReport} from '../src/report/get-report'
|
|||||||
import {normalizeFilePath} from '../src/utils/path-utils'
|
import {normalizeFilePath} from '../src/utils/path-utils'
|
||||||
|
|
||||||
describe('jest-junit tests', () => {
|
describe('jest-junit tests', () => {
|
||||||
|
it('produces empty test run result when there are no test cases', async () => {
|
||||||
|
const fixturePath = path.join(__dirname, 'fixtures', 'empty', 'jest-junit.xml')
|
||||||
|
const filePath = normalizeFilePath(path.relative(__dirname, fixturePath))
|
||||||
|
const fileContent = fs.readFileSync(fixturePath, {encoding: 'utf8'})
|
||||||
|
|
||||||
|
const opts: ParseOptions = {
|
||||||
|
parseErrors: true,
|
||||||
|
trackedFiles: []
|
||||||
|
}
|
||||||
|
|
||||||
|
const parser = new JestJunitParser(opts)
|
||||||
|
const result = await parser.parse(filePath, fileContent)
|
||||||
|
expect(result.tests).toBe(0)
|
||||||
|
expect(result.result).toBe('success')
|
||||||
|
})
|
||||||
|
|
||||||
it('report from ./reports/jest test results matches snapshot', async () => {
|
it('report from ./reports/jest test results matches snapshot', async () => {
|
||||||
const fixturePath = path.join(__dirname, 'fixtures', 'jest-junit.xml')
|
const fixturePath = path.join(__dirname, 'fixtures', 'jest-junit.xml')
|
||||||
const outputPath = path.join(__dirname, '__outputs__', 'jest-junit.md')
|
const outputPath = path.join(__dirname, '__outputs__', 'jest-junit.md')
|
||||||
|
|||||||
67
__tests__/mocha-json.test.ts
Normal file
67
__tests__/mocha-json.test.ts
Normal file
@@ -0,0 +1,67 @@
|
|||||||
|
import * as fs from 'fs'
|
||||||
|
import * as path from 'path'
|
||||||
|
|
||||||
|
import {MochaJsonParser} from '../src/parsers/mocha-json/mocha-json-parser'
|
||||||
|
import {ParseOptions} from '../src/test-parser'
|
||||||
|
import {getReport} from '../src/report/get-report'
|
||||||
|
import {normalizeFilePath} from '../src/utils/path-utils'
|
||||||
|
|
||||||
|
describe('mocha-json tests', () => {
|
||||||
|
it('produces empty test run result when there are no test cases', async () => {
|
||||||
|
const fixturePath = path.join(__dirname, 'fixtures', 'empty', 'mocha-json.json')
|
||||||
|
const filePath = normalizeFilePath(path.relative(__dirname, fixturePath))
|
||||||
|
const fileContent = fs.readFileSync(fixturePath, {encoding: 'utf8'})
|
||||||
|
|
||||||
|
const opts: ParseOptions = {
|
||||||
|
parseErrors: true,
|
||||||
|
trackedFiles: []
|
||||||
|
}
|
||||||
|
|
||||||
|
const parser = new MochaJsonParser(opts)
|
||||||
|
const result = await parser.parse(filePath, fileContent)
|
||||||
|
expect(result.tests).toBe(0)
|
||||||
|
expect(result.result).toBe('success')
|
||||||
|
})
|
||||||
|
|
||||||
|
it('report from ./reports/mocha-json test results matches snapshot', async () => {
|
||||||
|
const fixturePath = path.join(__dirname, 'fixtures', 'mocha-json.json')
|
||||||
|
const outputPath = path.join(__dirname, '__outputs__', 'mocha-json.md')
|
||||||
|
const filePath = normalizeFilePath(path.relative(__dirname, fixturePath))
|
||||||
|
const fileContent = fs.readFileSync(fixturePath, {encoding: 'utf8'})
|
||||||
|
|
||||||
|
const opts: ParseOptions = {
|
||||||
|
parseErrors: true,
|
||||||
|
trackedFiles: ['test/main.test.js', 'test/second.test.js', 'lib/main.js']
|
||||||
|
}
|
||||||
|
|
||||||
|
const parser = new MochaJsonParser(opts)
|
||||||
|
const result = await parser.parse(filePath, fileContent)
|
||||||
|
expect(result).toMatchSnapshot()
|
||||||
|
|
||||||
|
const report = getReport([result])
|
||||||
|
fs.mkdirSync(path.dirname(outputPath), {recursive: true})
|
||||||
|
fs.writeFileSync(outputPath, report)
|
||||||
|
})
|
||||||
|
|
||||||
|
it('report from mochajs/mocha test results matches snapshot', async () => {
|
||||||
|
const fixturePath = path.join(__dirname, 'fixtures', 'external', 'mocha', 'mocha-test-results.json')
|
||||||
|
const trackedFilesPath = path.join(__dirname, 'fixtures', 'external', 'mocha', 'files.txt')
|
||||||
|
const outputPath = path.join(__dirname, '__outputs__', 'mocha-test-results.md')
|
||||||
|
const filePath = normalizeFilePath(path.relative(__dirname, fixturePath))
|
||||||
|
const fileContent = fs.readFileSync(fixturePath, {encoding: 'utf8'})
|
||||||
|
|
||||||
|
const trackedFiles = fs.readFileSync(trackedFilesPath, {encoding: 'utf8'}).split(/\n\r?/g)
|
||||||
|
const opts: ParseOptions = {
|
||||||
|
parseErrors: true,
|
||||||
|
trackedFiles
|
||||||
|
}
|
||||||
|
|
||||||
|
const parser = new MochaJsonParser(opts)
|
||||||
|
const result = await parser.parse(filePath, fileContent)
|
||||||
|
expect(result).toMatchSnapshot()
|
||||||
|
|
||||||
|
const report = getReport([result])
|
||||||
|
fs.mkdirSync(path.dirname(outputPath), {recursive: true})
|
||||||
|
fs.writeFileSync(outputPath, report)
|
||||||
|
})
|
||||||
|
})
|
||||||
37
__tests__/utils/parse-utils.test.ts
Normal file
37
__tests__/utils/parse-utils.test.ts
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
import {parseNetDuration} from '../../src/utils/parse-utils'
|
||||||
|
|
||||||
|
describe('parseNetDuration', () => {
|
||||||
|
it('returns 0 for 00:00:00', () => {
|
||||||
|
const ms = parseNetDuration('00:00:00')
|
||||||
|
expect(ms).toBe(0)
|
||||||
|
})
|
||||||
|
|
||||||
|
it('returns 0 for 00:00:00.0000000', () => {
|
||||||
|
const ms = parseNetDuration('00:00:00.0000000')
|
||||||
|
expect(ms).toBe(0)
|
||||||
|
})
|
||||||
|
|
||||||
|
it('returns 123 for 00:00:00.123', () => {
|
||||||
|
const ms = parseNetDuration('00:00:00.123')
|
||||||
|
expect(ms).toBe(123)
|
||||||
|
})
|
||||||
|
|
||||||
|
it('returns 12 * 1000 for 00:00:12', () => {
|
||||||
|
const ms = parseNetDuration('00:00:12')
|
||||||
|
expect(ms).toBe(12 * 1000)
|
||||||
|
})
|
||||||
|
|
||||||
|
it('returns 12 * 60 * 1000 for 00:12:00', () => {
|
||||||
|
const ms = parseNetDuration('00:12:00')
|
||||||
|
expect(ms).toBe(12 * 60 * 1000)
|
||||||
|
})
|
||||||
|
|
||||||
|
it('returns 12 * 60 * 60 * 1000 for 12:00:00', () => {
|
||||||
|
const ms = parseNetDuration('12:00:00')
|
||||||
|
expect(ms).toBe(12 * 60 * 60 * 1000)
|
||||||
|
})
|
||||||
|
|
||||||
|
it('throws when string has invalid format', () => {
|
||||||
|
expect(() => parseNetDuration('12:34:56 not a duration')).toThrowError(/^Invalid format/)
|
||||||
|
})
|
||||||
|
})
|
||||||
18
action.yml
18
action.yml
@@ -1,6 +1,6 @@
|
|||||||
name: Test Reporter
|
name: Test Reporter
|
||||||
description: |
|
description: |
|
||||||
Displays test results directly in GitHub. Supports .NET (xUnit, NUnit, MSTest), Dart, Flutter and JavaScript (JEST).
|
Shows test results in GitHub UI: .NET (xUnit, NUnit, MSTest), Dart, Flutter, Java (JUnit), JavaScript (JEST, Mocha)
|
||||||
author: Michal Dorner <dorner.michal@gmail.com>
|
author: Michal Dorner <dorner.michal@gmail.com>
|
||||||
inputs:
|
inputs:
|
||||||
artifact:
|
artifact:
|
||||||
@@ -15,13 +15,22 @@ inputs:
|
|||||||
Supports wildcards via [fast-glob](https://github.com/mrmlnc/fast-glob)
|
Supports wildcards via [fast-glob](https://github.com/mrmlnc/fast-glob)
|
||||||
All matched result files must be of same format
|
All matched result files must be of same format
|
||||||
required: true
|
required: true
|
||||||
|
path-replace-backslashes:
|
||||||
|
description: |
|
||||||
|
The fast-glob library that is internally used interprets backslashes as escape characters.
|
||||||
|
If enabled, all backslashes in provided path will be replaced by forward slashes and act as directory separators.
|
||||||
|
It might be useful when path input variable is composed dynamically from existing directory paths on Windows.
|
||||||
|
default: 'false'
|
||||||
|
required: false
|
||||||
reporter:
|
reporter:
|
||||||
description: |
|
description: |
|
||||||
Format of test results. Supported options:
|
Format of test results. Supported options:
|
||||||
- dart-json
|
- dart-json
|
||||||
- dotnet-trx
|
- dotnet-trx
|
||||||
- flutter-json
|
- flutter-json
|
||||||
|
- java-junit
|
||||||
- jest-junit
|
- jest-junit
|
||||||
|
- mocha-json
|
||||||
required: true
|
required: true
|
||||||
list-suites:
|
list-suites:
|
||||||
description: |
|
description: |
|
||||||
@@ -51,6 +60,13 @@ inputs:
|
|||||||
working-directory:
|
working-directory:
|
||||||
description: Relative path under $GITHUB_WORKSPACE where the repository was checked out
|
description: Relative path under $GITHUB_WORKSPACE where the repository was checked out
|
||||||
required: false
|
required: false
|
||||||
|
only-summary:
|
||||||
|
description: |
|
||||||
|
Allows you to generate only the summary.
|
||||||
|
If enabled, the report will contain a table listing each test results file and the number of passed, failed, and skipped tests.
|
||||||
|
Detailed listing of test suites and test cases will be skipped.
|
||||||
|
default: 'false'
|
||||||
|
required: false
|
||||||
token:
|
token:
|
||||||
description: GitHub Access Token
|
description: GitHub Access Token
|
||||||
required: false
|
required: false
|
||||||
|
|||||||
BIN
assets/mocha-groups.png
Normal file
BIN
assets/mocha-groups.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 41 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 56 KiB After Width: | Height: | Size: 53 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 34 KiB |
711
dist/index.js
generated
vendored
711
dist/index.js
generated
vendored
File diff suppressed because it is too large
Load Diff
2
dist/index.js.map
generated
vendored
2
dist/index.js.map
generated
vendored
File diff suppressed because one or more lines are too long
36
dist/licenses.txt
generated
vendored
36
dist/licenses.txt
generated
vendored
@@ -341,27 +341,27 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
|
|||||||
|
|
||||||
adm-zip
|
adm-zip
|
||||||
MIT
|
MIT
|
||||||
Copyright (c) 2012 Another-D-Mention Software and other contributors,
|
MIT License
|
||||||
http://www.another-d-mention.ro/
|
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining
|
Copyright (c) 2012 Another-D-Mention Software and other contributors
|
||||||
a copy of this software and associated documentation files (the
|
|
||||||
"Software"), to deal in the Software without restriction, including
|
|
||||||
without limitation the rights to use, copy, modify, merge, publish,
|
|
||||||
distribute, sublicense, and/or sell copies of the Software, and to
|
|
||||||
permit persons to whom the Software is furnished to do so, subject to
|
|
||||||
the following conditions:
|
|
||||||
|
|
||||||
The above copyright notice and this permission notice shall be
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
included in all copies or substantial portions of the Software.
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
in the Software without restriction, including without limitation the rights
|
||||||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
The above copyright notice and this permission notice shall be included in all
|
||||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
copies or substantial portions of the Software.
|
||||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
||||||
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||||
|
SOFTWARE.
|
||||||
|
|
||||||
|
|
||||||
before-after-hook
|
before-after-hook
|
||||||
|
|||||||
833
package-lock.json
generated
833
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
24
package.json
24
package.json
@@ -14,7 +14,9 @@
|
|||||||
"all": "npm run build && npm run format && npm run lint && npm run package && npm test",
|
"all": "npm run build && npm run format && npm run lint && npm run package && npm test",
|
||||||
"dart-fixture": "cd \"reports/dart\" && dart test --file-reporter=\"json:../../__tests__/fixtures/dart-json.json\"",
|
"dart-fixture": "cd \"reports/dart\" && dart test --file-reporter=\"json:../../__tests__/fixtures/dart-json.json\"",
|
||||||
"dotnet-fixture": "dotnet test reports/dotnet/DotnetTests.XUnitTests --logger \"trx;LogFileName=../../../../__tests__/fixtures/dotnet-trx.trx\"",
|
"dotnet-fixture": "dotnet test reports/dotnet/DotnetTests.XUnitTests --logger \"trx;LogFileName=../../../../__tests__/fixtures/dotnet-trx.trx\"",
|
||||||
"jest-fixture": "cd \"reports/jest\" && npm test"
|
"dotnet-nunit-fixture": "nunit.exe reports/dotnet/DotnetTests.NUnitV3Tests/bin/Debug/netcoreapp3.1/DotnetTests.NUnitV3Tests.dll --result=__tests__/fixtures/dotnet-nunit.xml",
|
||||||
|
"jest-fixture": "cd \"reports/jest\" && npm test",
|
||||||
|
"mocha-fixture": "cd \"reports/mocha\" && npm test"
|
||||||
},
|
},
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
@@ -32,14 +34,14 @@
|
|||||||
"@actions/core": "^1.2.6",
|
"@actions/core": "^1.2.6",
|
||||||
"@actions/exec": "^1.0.4",
|
"@actions/exec": "^1.0.4",
|
||||||
"@actions/github": "^4.0.0",
|
"@actions/github": "^4.0.0",
|
||||||
"adm-zip": "^0.5.2",
|
"adm-zip": "^0.5.3",
|
||||||
"fast-glob": "^3.2.5",
|
"fast-glob": "^3.2.5",
|
||||||
"got": "^11.8.1",
|
"got": "^11.8.2",
|
||||||
"picomatch": "^2.2.2",
|
"picomatch": "^2.2.2",
|
||||||
"xml2js": "^0.4.23"
|
"xml2js": "^0.4.23"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@octokit/types": "^6.7.0",
|
"@octokit/types": "^6.12.0",
|
||||||
"@octokit/webhooks": "^7.21.0",
|
"@octokit/webhooks": "^7.21.0",
|
||||||
"@types/adm-zip": "^0.4.33",
|
"@types/adm-zip": "^0.4.33",
|
||||||
"@types/github-slugger": "^1.3.0",
|
"@types/github-slugger": "^1.3.0",
|
||||||
@@ -47,19 +49,19 @@
|
|||||||
"@types/node": "^14.14.20",
|
"@types/node": "^14.14.20",
|
||||||
"@types/picomatch": "^2.2.1",
|
"@types/picomatch": "^2.2.1",
|
||||||
"@types/xml2js": "^0.4.8",
|
"@types/xml2js": "^0.4.8",
|
||||||
"@typescript-eslint/eslint-plugin": "^4.14.1",
|
"@typescript-eslint/eslint-plugin": "^4.16.1",
|
||||||
"@typescript-eslint/parser": "^4.14.1",
|
"@typescript-eslint/parser": "^4.16.1",
|
||||||
"@vercel/ncc": "^0.27.0",
|
"@vercel/ncc": "^0.27.0",
|
||||||
"eslint": "^7.19.0",
|
"eslint": "^7.21.0",
|
||||||
"eslint-plugin-github": "^4.1.1",
|
"eslint-plugin-github": "^4.1.2",
|
||||||
"eslint-plugin-jest": "^24.1.3",
|
"eslint-plugin-jest": "^24.1.7",
|
||||||
"jest": "^26.6.3",
|
"jest": "^26.6.3",
|
||||||
"jest-circus": "^26.6.3",
|
"jest-circus": "^26.6.3",
|
||||||
"jest-junit": "^12.0.0",
|
"jest-junit": "^12.0.0",
|
||||||
"js-yaml": "^4.0.0",
|
"js-yaml": "^4.0.0",
|
||||||
"prettier": "2.2.1",
|
"prettier": "2.2.1",
|
||||||
"ts-jest": "^26.5.0",
|
"ts-jest": "^26.5.3",
|
||||||
"typescript": "^4.1.2"
|
"typescript": "^4.2.3"
|
||||||
},
|
},
|
||||||
"jest-junit": {
|
"jest-junit": {
|
||||||
"suiteName": "jest tests",
|
"suiteName": "jest tests",
|
||||||
|
|||||||
@@ -24,4 +24,6 @@ void main() {
|
|||||||
throw Exception('Some error');
|
throw Exception('Some error');
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
print('Hello from the test');
|
||||||
}
|
}
|
||||||
|
|||||||
64
reports/dotnet/DotnetTests.NUnitV3Tests/CalculatorTests.cs
Normal file
64
reports/dotnet/DotnetTests.NUnitV3Tests/CalculatorTests.cs
Normal file
@@ -0,0 +1,64 @@
|
|||||||
|
using System;
|
||||||
|
using System.Threading;
|
||||||
|
using DotnetTests.Unit;
|
||||||
|
using NUnit.Framework;
|
||||||
|
|
||||||
|
namespace DotnetTests.XUnitTests
|
||||||
|
{
|
||||||
|
public class CalculatorTests
|
||||||
|
{
|
||||||
|
private readonly Calculator _calculator = new Calculator();
|
||||||
|
|
||||||
|
[Test]
|
||||||
|
public void Passing_Test()
|
||||||
|
{
|
||||||
|
Assert.That(_calculator.Sum(1, 1), Is.EqualTo(2));
|
||||||
|
}
|
||||||
|
|
||||||
|
[Test(Description = "Some description")]
|
||||||
|
public void Passing_Test_With_Description()
|
||||||
|
{
|
||||||
|
Assert.That(2, Is.EqualTo(2));
|
||||||
|
}
|
||||||
|
|
||||||
|
[Test]
|
||||||
|
public void Failing_Test()
|
||||||
|
{
|
||||||
|
Assert.That(_calculator.Sum(1, 1), Is.EqualTo(3));
|
||||||
|
}
|
||||||
|
|
||||||
|
[Test]
|
||||||
|
public void Exception_In_TargetTest()
|
||||||
|
{
|
||||||
|
_calculator.Div(1, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
[Test]
|
||||||
|
public void Exception_In_Test()
|
||||||
|
{
|
||||||
|
throw new Exception("Test");
|
||||||
|
}
|
||||||
|
|
||||||
|
[Test]
|
||||||
|
[Timeout(1)]
|
||||||
|
public void Timeout_Test()
|
||||||
|
{
|
||||||
|
Thread.Sleep(100);
|
||||||
|
}
|
||||||
|
|
||||||
|
[Test]
|
||||||
|
[Ignore("Skipped")]
|
||||||
|
public void Skipped_Test()
|
||||||
|
{
|
||||||
|
throw new Exception("Test");
|
||||||
|
}
|
||||||
|
|
||||||
|
[Theory]
|
||||||
|
[TestCase(2)]
|
||||||
|
[TestCase(3)]
|
||||||
|
public void Is_Even_Number(int i)
|
||||||
|
{
|
||||||
|
Assert.True(i % 2 == 0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,18 @@
|
|||||||
|
<Project Sdk="Microsoft.NET.Sdk">
|
||||||
|
|
||||||
|
<PropertyGroup>
|
||||||
|
<TargetFramework>netcoreapp3.1</TargetFramework>
|
||||||
|
|
||||||
|
<IsPackable>false</IsPackable>
|
||||||
|
</PropertyGroup>
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<PackageReference Include="NUnit" Version="3.13.2" />
|
||||||
|
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.5.0" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<ProjectReference Include="..\DotnetTests.Unit\DotnetTests.Unit.csproj" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
</Project>
|
||||||
@@ -50,5 +50,21 @@ namespace DotnetTests.XUnitTests
|
|||||||
{
|
{
|
||||||
throw new Exception("Test");
|
throw new Exception("Test");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[Theory]
|
||||||
|
[InlineData(2)]
|
||||||
|
[InlineData(3)]
|
||||||
|
public void Is_Even_Number(int i)
|
||||||
|
{
|
||||||
|
Assert.True(i % 2 == 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
[Theory(DisplayName = "Should be even number")]
|
||||||
|
[InlineData(2)]
|
||||||
|
[InlineData(3)]
|
||||||
|
public void Theory_With_Custom_Name(int i)
|
||||||
|
{
|
||||||
|
Assert.True(i % 2 == 0);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -9,6 +9,8 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tests", "Tests", "{BCAC3B31
|
|||||||
EndProject
|
EndProject
|
||||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "DotnetTests.XUnitTests", "DotnetTests.XUnitTests\DotnetTests.XUnitTests.csproj", "{F8607EDB-D25D-47AA-8132-38ACA242E845}"
|
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "DotnetTests.XUnitTests", "DotnetTests.XUnitTests\DotnetTests.XUnitTests.csproj", "{F8607EDB-D25D-47AA-8132-38ACA242E845}"
|
||||||
EndProject
|
EndProject
|
||||||
|
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DotnetTests.NUnitV3Tests", "DotnetTests.NUnitV3Tests\DotnetTests.NUnitV3Tests.csproj", "{81023ED7-56CB-47E9-86C5-9125A0873C55}"
|
||||||
|
EndProject
|
||||||
Global
|
Global
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||||
Debug|Any CPU = Debug|Any CPU
|
Debug|Any CPU = Debug|Any CPU
|
||||||
@@ -23,12 +25,17 @@ Global
|
|||||||
{F8607EDB-D25D-47AA-8132-38ACA242E845}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
{F8607EDB-D25D-47AA-8132-38ACA242E845}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
{F8607EDB-D25D-47AA-8132-38ACA242E845}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
{F8607EDB-D25D-47AA-8132-38ACA242E845}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
{F8607EDB-D25D-47AA-8132-38ACA242E845}.Release|Any CPU.Build.0 = Release|Any CPU
|
{F8607EDB-D25D-47AA-8132-38ACA242E845}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||||
|
{81023ED7-56CB-47E9-86C5-9125A0873C55}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||||
|
{81023ED7-56CB-47E9-86C5-9125A0873C55}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
|
{81023ED7-56CB-47E9-86C5-9125A0873C55}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
|
{81023ED7-56CB-47E9-86C5-9125A0873C55}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||||
EndGlobalSection
|
EndGlobalSection
|
||||||
GlobalSection(SolutionProperties) = preSolution
|
GlobalSection(SolutionProperties) = preSolution
|
||||||
HideSolutionNode = FALSE
|
HideSolutionNode = FALSE
|
||||||
EndGlobalSection
|
EndGlobalSection
|
||||||
GlobalSection(NestedProjects) = preSolution
|
GlobalSection(NestedProjects) = preSolution
|
||||||
{F8607EDB-D25D-47AA-8132-38ACA242E845} = {BCAC3B31-ADB1-4221-9D5B-182EE868648C}
|
{F8607EDB-D25D-47AA-8132-38ACA242E845} = {BCAC3B31-ADB1-4221-9D5B-182EE868648C}
|
||||||
|
{81023ED7-56CB-47E9-86C5-9125A0873C55} = {BCAC3B31-ADB1-4221-9D5B-182EE868648C}
|
||||||
EndGlobalSection
|
EndGlobalSection
|
||||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||||
SolutionGuid = {6ED5543C-74AA-4B21-8050-943550F3F66E}
|
SolutionGuid = {6ED5543C-74AA-4B21-8050-943550F3F66E}
|
||||||
|
|||||||
5
reports/mocha/lib/main.js
Normal file
5
reports/mocha/lib/main.js
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
function throwError() {
|
||||||
|
throw new Error('Some error')
|
||||||
|
}
|
||||||
|
|
||||||
|
exports.throwError = throwError
|
||||||
761
reports/mocha/package-lock.json
generated
Normal file
761
reports/mocha/package-lock.json
generated
Normal file
@@ -0,0 +1,761 @@
|
|||||||
|
{
|
||||||
|
"name": "mocha-fixture",
|
||||||
|
"version": "0.0.0",
|
||||||
|
"lockfileVersion": 1,
|
||||||
|
"requires": true,
|
||||||
|
"dependencies": {
|
||||||
|
"@ungap/promise-all-settled": {
|
||||||
|
"version": "1.1.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/@ungap/promise-all-settled/-/promise-all-settled-1.1.2.tgz",
|
||||||
|
"integrity": "sha512-sL/cEvJWAnClXw0wHk85/2L0G6Sj8UB0Ctc1TEMbKSsmpRosqhwj9gWgFRZSrBr2f9tiXISwNhCPmlfqUqyb9Q==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"ansi-colors": {
|
||||||
|
"version": "4.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz",
|
||||||
|
"integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"ansi-regex": {
|
||||||
|
"version": "3.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz",
|
||||||
|
"integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"ansi-styles": {
|
||||||
|
"version": "4.3.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
|
||||||
|
"integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"color-convert": "^2.0.1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"anymatch": {
|
||||||
|
"version": "3.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz",
|
||||||
|
"integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"normalize-path": "^3.0.0",
|
||||||
|
"picomatch": "^2.0.4"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"argparse": {
|
||||||
|
"version": "2.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
|
||||||
|
"integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"balanced-match": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
|
||||||
|
"integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"binary-extensions": {
|
||||||
|
"version": "2.2.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz",
|
||||||
|
"integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"brace-expansion": {
|
||||||
|
"version": "1.1.11",
|
||||||
|
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
|
||||||
|
"integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"balanced-match": "^1.0.0",
|
||||||
|
"concat-map": "0.0.1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"braces": {
|
||||||
|
"version": "3.0.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
|
||||||
|
"integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"fill-range": "^7.0.1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"browser-stdout": {
|
||||||
|
"version": "1.3.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz",
|
||||||
|
"integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"camelcase": {
|
||||||
|
"version": "6.2.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.2.0.tgz",
|
||||||
|
"integrity": "sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"chalk": {
|
||||||
|
"version": "4.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz",
|
||||||
|
"integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"ansi-styles": "^4.1.0",
|
||||||
|
"supports-color": "^7.1.0"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"supports-color": {
|
||||||
|
"version": "7.2.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
|
||||||
|
"integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"has-flag": "^4.0.0"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"chokidar": {
|
||||||
|
"version": "3.5.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.1.tgz",
|
||||||
|
"integrity": "sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"anymatch": "~3.1.1",
|
||||||
|
"braces": "~3.0.2",
|
||||||
|
"fsevents": "~2.3.1",
|
||||||
|
"glob-parent": "~5.1.0",
|
||||||
|
"is-binary-path": "~2.1.0",
|
||||||
|
"is-glob": "~4.0.1",
|
||||||
|
"normalize-path": "~3.0.0",
|
||||||
|
"readdirp": "~3.5.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"cliui": {
|
||||||
|
"version": "7.0.4",
|
||||||
|
"resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz",
|
||||||
|
"integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"string-width": "^4.2.0",
|
||||||
|
"strip-ansi": "^6.0.0",
|
||||||
|
"wrap-ansi": "^7.0.0"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"ansi-regex": {
|
||||||
|
"version": "5.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz",
|
||||||
|
"integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"is-fullwidth-code-point": {
|
||||||
|
"version": "3.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
|
||||||
|
"integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"string-width": {
|
||||||
|
"version": "4.2.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz",
|
||||||
|
"integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"emoji-regex": "^8.0.0",
|
||||||
|
"is-fullwidth-code-point": "^3.0.0",
|
||||||
|
"strip-ansi": "^6.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"strip-ansi": {
|
||||||
|
"version": "6.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz",
|
||||||
|
"integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"ansi-regex": "^5.0.0"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"color-convert": {
|
||||||
|
"version": "2.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
|
||||||
|
"integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"color-name": "~1.1.4"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"color-name": {
|
||||||
|
"version": "1.1.4",
|
||||||
|
"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
|
||||||
|
"integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"concat-map": {
|
||||||
|
"version": "0.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
|
||||||
|
"integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"debug": {
|
||||||
|
"version": "4.3.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz",
|
||||||
|
"integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"ms": "2.1.2"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"ms": {
|
||||||
|
"version": "2.1.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
|
||||||
|
"integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
|
||||||
|
"dev": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"decamelize": {
|
||||||
|
"version": "4.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz",
|
||||||
|
"integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"diff": {
|
||||||
|
"version": "5.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz",
|
||||||
|
"integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"emoji-regex": {
|
||||||
|
"version": "8.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
|
||||||
|
"integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"escalade": {
|
||||||
|
"version": "3.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
|
||||||
|
"integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"escape-string-regexp": {
|
||||||
|
"version": "4.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
|
||||||
|
"integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"fill-range": {
|
||||||
|
"version": "7.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
|
||||||
|
"integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"to-regex-range": "^5.0.1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"find-up": {
|
||||||
|
"version": "5.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz",
|
||||||
|
"integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"locate-path": "^6.0.0",
|
||||||
|
"path-exists": "^4.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flat": {
|
||||||
|
"version": "5.0.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz",
|
||||||
|
"integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"fs.realpath": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
|
||||||
|
"integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"fsevents": {
|
||||||
|
"version": "2.3.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
|
||||||
|
"integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
|
||||||
|
"dev": true,
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
|
"get-caller-file": {
|
||||||
|
"version": "2.0.5",
|
||||||
|
"resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
|
||||||
|
"integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"glob": {
|
||||||
|
"version": "7.1.6",
|
||||||
|
"resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz",
|
||||||
|
"integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"fs.realpath": "^1.0.0",
|
||||||
|
"inflight": "^1.0.4",
|
||||||
|
"inherits": "2",
|
||||||
|
"minimatch": "^3.0.4",
|
||||||
|
"once": "^1.3.0",
|
||||||
|
"path-is-absolute": "^1.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"glob-parent": {
|
||||||
|
"version": "5.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz",
|
||||||
|
"integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"is-glob": "^4.0.1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"growl": {
|
||||||
|
"version": "1.10.5",
|
||||||
|
"resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz",
|
||||||
|
"integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"has-flag": {
|
||||||
|
"version": "4.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
|
||||||
|
"integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"he": {
|
||||||
|
"version": "1.2.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz",
|
||||||
|
"integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"inflight": {
|
||||||
|
"version": "1.0.6",
|
||||||
|
"resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
|
||||||
|
"integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"once": "^1.3.0",
|
||||||
|
"wrappy": "1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"inherits": {
|
||||||
|
"version": "2.0.4",
|
||||||
|
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
|
||||||
|
"integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"is-binary-path": {
|
||||||
|
"version": "2.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
|
||||||
|
"integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"binary-extensions": "^2.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"is-extglob": {
|
||||||
|
"version": "2.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
|
||||||
|
"integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"is-fullwidth-code-point": {
|
||||||
|
"version": "2.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
|
||||||
|
"integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"is-glob": {
|
||||||
|
"version": "4.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz",
|
||||||
|
"integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"is-extglob": "^2.1.1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"is-number": {
|
||||||
|
"version": "7.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
|
||||||
|
"integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"is-plain-obj": {
|
||||||
|
"version": "2.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz",
|
||||||
|
"integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"isexe": {
|
||||||
|
"version": "2.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
|
||||||
|
"integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"js-yaml": {
|
||||||
|
"version": "4.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.0.0.tgz",
|
||||||
|
"integrity": "sha512-pqon0s+4ScYUvX30wxQi3PogGFAlUyH0awepWvwkj4jD4v+ova3RiYw8bmA6x2rDrEaj8i/oWKoRxpVNW+Re8Q==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"argparse": "^2.0.1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"locate-path": {
|
||||||
|
"version": "6.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz",
|
||||||
|
"integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"p-locate": "^5.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"log-symbols": {
|
||||||
|
"version": "4.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.0.0.tgz",
|
||||||
|
"integrity": "sha512-FN8JBzLx6CzeMrB0tg6pqlGU1wCrXW+ZXGH481kfsBqer0hToTIiHdjH4Mq8xJUbvATujKCvaREGWpGUionraA==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"chalk": "^4.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"minimatch": {
|
||||||
|
"version": "3.0.4",
|
||||||
|
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
|
||||||
|
"integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"brace-expansion": "^1.1.7"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"mocha": {
|
||||||
|
"version": "8.3.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/mocha/-/mocha-8.3.0.tgz",
|
||||||
|
"integrity": "sha512-TQqyC89V1J/Vxx0DhJIXlq9gbbL9XFNdeLQ1+JsnZsVaSOV1z3tWfw0qZmQJGQRIfkvZcs7snQnZnOCKoldq1Q==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"@ungap/promise-all-settled": "1.1.2",
|
||||||
|
"ansi-colors": "4.1.1",
|
||||||
|
"browser-stdout": "1.3.1",
|
||||||
|
"chokidar": "3.5.1",
|
||||||
|
"debug": "4.3.1",
|
||||||
|
"diff": "5.0.0",
|
||||||
|
"escape-string-regexp": "4.0.0",
|
||||||
|
"find-up": "5.0.0",
|
||||||
|
"glob": "7.1.6",
|
||||||
|
"growl": "1.10.5",
|
||||||
|
"he": "1.2.0",
|
||||||
|
"js-yaml": "4.0.0",
|
||||||
|
"log-symbols": "4.0.0",
|
||||||
|
"minimatch": "3.0.4",
|
||||||
|
"ms": "2.1.3",
|
||||||
|
"nanoid": "3.1.20",
|
||||||
|
"serialize-javascript": "5.0.1",
|
||||||
|
"strip-json-comments": "3.1.1",
|
||||||
|
"supports-color": "8.1.1",
|
||||||
|
"which": "2.0.2",
|
||||||
|
"wide-align": "1.1.3",
|
||||||
|
"workerpool": "6.1.0",
|
||||||
|
"yargs": "16.2.0",
|
||||||
|
"yargs-parser": "20.2.4",
|
||||||
|
"yargs-unparser": "2.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"ms": {
|
||||||
|
"version": "2.1.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
|
||||||
|
"integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"nanoid": {
|
||||||
|
"version": "3.1.20",
|
||||||
|
"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.20.tgz",
|
||||||
|
"integrity": "sha512-a1cQNyczgKbLX9jwbS/+d7W8fX/RfgYR7lVWwWOGIPNgK2m0MWvrGF6/m4kk6U3QcFMnZf3RIhL0v2Jgh/0Uxw==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"normalize-path": {
|
||||||
|
"version": "3.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
|
||||||
|
"integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"once": {
|
||||||
|
"version": "1.4.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
|
||||||
|
"integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"wrappy": "1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"p-limit": {
|
||||||
|
"version": "3.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz",
|
||||||
|
"integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"yocto-queue": "^0.1.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"p-locate": {
|
||||||
|
"version": "5.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz",
|
||||||
|
"integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"p-limit": "^3.0.2"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"path-exists": {
|
||||||
|
"version": "4.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
|
||||||
|
"integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"path-is-absolute": {
|
||||||
|
"version": "1.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
|
||||||
|
"integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"picomatch": {
|
||||||
|
"version": "2.2.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz",
|
||||||
|
"integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"randombytes": {
|
||||||
|
"version": "2.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz",
|
||||||
|
"integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"safe-buffer": "^5.1.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"readdirp": {
|
||||||
|
"version": "3.5.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.5.0.tgz",
|
||||||
|
"integrity": "sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"picomatch": "^2.2.1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"require-directory": {
|
||||||
|
"version": "2.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
|
||||||
|
"integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"safe-buffer": {
|
||||||
|
"version": "5.2.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
|
||||||
|
"integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"serialize-javascript": {
|
||||||
|
"version": "5.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-5.0.1.tgz",
|
||||||
|
"integrity": "sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"randombytes": "^2.1.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"string-width": {
|
||||||
|
"version": "2.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz",
|
||||||
|
"integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"is-fullwidth-code-point": "^2.0.0",
|
||||||
|
"strip-ansi": "^4.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"strip-ansi": {
|
||||||
|
"version": "4.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz",
|
||||||
|
"integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"ansi-regex": "^3.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"strip-json-comments": {
|
||||||
|
"version": "3.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz",
|
||||||
|
"integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"supports-color": {
|
||||||
|
"version": "8.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz",
|
||||||
|
"integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"has-flag": "^4.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"to-regex-range": {
|
||||||
|
"version": "5.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
|
||||||
|
"integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"is-number": "^7.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"which": {
|
||||||
|
"version": "2.0.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
|
||||||
|
"integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"isexe": "^2.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"wide-align": {
|
||||||
|
"version": "1.1.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz",
|
||||||
|
"integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"string-width": "^1.0.2 || 2"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"workerpool": {
|
||||||
|
"version": "6.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.1.0.tgz",
|
||||||
|
"integrity": "sha512-toV7q9rWNYha963Pl/qyeZ6wG+3nnsyvolaNUS8+R5Wtw6qJPTxIlOP1ZSvcGhEJw+l3HMMmtiNo9Gl61G4GVg==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"wrap-ansi": {
|
||||||
|
"version": "7.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
|
||||||
|
"integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"ansi-styles": "^4.0.0",
|
||||||
|
"string-width": "^4.1.0",
|
||||||
|
"strip-ansi": "^6.0.0"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"ansi-regex": {
|
||||||
|
"version": "5.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz",
|
||||||
|
"integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"is-fullwidth-code-point": {
|
||||||
|
"version": "3.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
|
||||||
|
"integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"string-width": {
|
||||||
|
"version": "4.2.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz",
|
||||||
|
"integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"emoji-regex": "^8.0.0",
|
||||||
|
"is-fullwidth-code-point": "^3.0.0",
|
||||||
|
"strip-ansi": "^6.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"strip-ansi": {
|
||||||
|
"version": "6.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz",
|
||||||
|
"integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"ansi-regex": "^5.0.0"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"wrappy": {
|
||||||
|
"version": "1.0.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
|
||||||
|
"integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"y18n": {
|
||||||
|
"version": "5.0.5",
|
||||||
|
"resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.5.tgz",
|
||||||
|
"integrity": "sha512-hsRUr4FFrvhhRH12wOdfs38Gy7k2FFzB9qgN9v3aLykRq0dRcdcpz5C9FxdS2NuhOrI/628b/KSTJ3rwHysYSg==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"yargs": {
|
||||||
|
"version": "16.2.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz",
|
||||||
|
"integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"cliui": "^7.0.2",
|
||||||
|
"escalade": "^3.1.1",
|
||||||
|
"get-caller-file": "^2.0.5",
|
||||||
|
"require-directory": "^2.1.1",
|
||||||
|
"string-width": "^4.2.0",
|
||||||
|
"y18n": "^5.0.5",
|
||||||
|
"yargs-parser": "^20.2.2"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"ansi-regex": {
|
||||||
|
"version": "5.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz",
|
||||||
|
"integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"is-fullwidth-code-point": {
|
||||||
|
"version": "3.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
|
||||||
|
"integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"string-width": {
|
||||||
|
"version": "4.2.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz",
|
||||||
|
"integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"emoji-regex": "^8.0.0",
|
||||||
|
"is-fullwidth-code-point": "^3.0.0",
|
||||||
|
"strip-ansi": "^6.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"strip-ansi": {
|
||||||
|
"version": "6.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz",
|
||||||
|
"integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"ansi-regex": "^5.0.0"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"yargs-parser": {
|
||||||
|
"version": "20.2.4",
|
||||||
|
"resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz",
|
||||||
|
"integrity": "sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"yargs-unparser": {
|
||||||
|
"version": "2.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz",
|
||||||
|
"integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"camelcase": "^6.0.0",
|
||||||
|
"decamelize": "^4.0.0",
|
||||||
|
"flat": "^5.0.2",
|
||||||
|
"is-plain-obj": "^2.1.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"yocto-queue": {
|
||||||
|
"version": "0.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz",
|
||||||
|
"integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==",
|
||||||
|
"dev": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
14
reports/mocha/package.json
Normal file
14
reports/mocha/package.json
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
{
|
||||||
|
"name": "mocha-fixture",
|
||||||
|
"version": "0.0.0",
|
||||||
|
"private": true,
|
||||||
|
"description": "Generates test fixtures for test-reporter action",
|
||||||
|
"scripts": {
|
||||||
|
"test": "mocha --reporter json > ../../__tests__/fixtures/mocha-json.json"
|
||||||
|
},
|
||||||
|
"author": "Michal Dorner <dorner.michal@gmail.com>",
|
||||||
|
"license": "MIT",
|
||||||
|
"devDependencies": {
|
||||||
|
"mocha": "^8.3.0"
|
||||||
|
}
|
||||||
|
}
|
||||||
24
reports/mocha/test/main.test.js
Normal file
24
reports/mocha/test/main.test.js
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
const assert = require('assert').strict;
|
||||||
|
const lib = require('../lib/main')
|
||||||
|
|
||||||
|
describe('Test 1', () => {
|
||||||
|
it('Passing test', () => {
|
||||||
|
assert.equal(true, true)
|
||||||
|
});
|
||||||
|
|
||||||
|
describe('Test 1.1', () => {
|
||||||
|
it('Failing test', () => {
|
||||||
|
assert.equal(false, true)
|
||||||
|
});
|
||||||
|
|
||||||
|
it('Exception in target unit', () => {
|
||||||
|
lib.throwError();
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
describe('Test 2', () => {
|
||||||
|
it('Exception in test', () => {
|
||||||
|
throw new Error('Some error');
|
||||||
|
});
|
||||||
|
});
|
||||||
8
reports/mocha/test/second.test.js
Normal file
8
reports/mocha/test/second.test.js
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
it('Timeout test', async function(done) {
|
||||||
|
this.timeout(1);
|
||||||
|
setTimeout(done, 1000);
|
||||||
|
});
|
||||||
|
|
||||||
|
it.skip('Skipped test', () => {
|
||||||
|
// do nothing
|
||||||
|
});
|
||||||
40
src/main.ts
40
src/main.ts
@@ -12,9 +12,11 @@ import {getReport} from './report/get-report'
|
|||||||
|
|
||||||
import {DartJsonParser} from './parsers/dart-json/dart-json-parser'
|
import {DartJsonParser} from './parsers/dart-json/dart-json-parser'
|
||||||
import {DotnetTrxParser} from './parsers/dotnet-trx/dotnet-trx-parser'
|
import {DotnetTrxParser} from './parsers/dotnet-trx/dotnet-trx-parser'
|
||||||
|
import {JavaJunitParser} from './parsers/java-junit/java-junit-parser'
|
||||||
import {JestJunitParser} from './parsers/jest-junit/jest-junit-parser'
|
import {JestJunitParser} from './parsers/jest-junit/jest-junit-parser'
|
||||||
|
import {MochaJsonParser} from './parsers/mocha-json/mocha-json-parser'
|
||||||
|
|
||||||
import {normalizeDirPath} from './utils/path-utils'
|
import {normalizeDirPath, normalizeFilePath} from './utils/path-utils'
|
||||||
import {getCheckRunContext} from './utils/github-utils'
|
import {getCheckRunContext} from './utils/github-utils'
|
||||||
import {Icon} from './utils/markdown-utils'
|
import {Icon} from './utils/markdown-utils'
|
||||||
|
|
||||||
@@ -31,12 +33,14 @@ class TestReporter {
|
|||||||
readonly artifact = core.getInput('artifact', {required: false})
|
readonly artifact = core.getInput('artifact', {required: false})
|
||||||
readonly name = core.getInput('name', {required: true})
|
readonly name = core.getInput('name', {required: true})
|
||||||
readonly path = core.getInput('path', {required: true})
|
readonly path = core.getInput('path', {required: true})
|
||||||
|
readonly pathReplaceBackslashes = core.getInput('path-replace-backslashes', {required: false}) === 'true'
|
||||||
readonly reporter = core.getInput('reporter', {required: true})
|
readonly reporter = core.getInput('reporter', {required: true})
|
||||||
readonly listSuites = core.getInput('list-suites', {required: true}) as 'all' | 'failed'
|
readonly listSuites = core.getInput('list-suites', {required: true}) as 'all' | 'failed'
|
||||||
readonly listTests = core.getInput('list-tests', {required: true}) as 'all' | 'failed' | 'none'
|
readonly listTests = core.getInput('list-tests', {required: true}) as 'all' | 'failed' | 'none'
|
||||||
readonly maxAnnotations = parseInt(core.getInput('max-annotations', {required: true}))
|
readonly maxAnnotations = parseInt(core.getInput('max-annotations', {required: true}))
|
||||||
readonly failOnError = core.getInput('fail-on-error', {required: true}) === 'true'
|
readonly failOnError = core.getInput('fail-on-error', {required: true}) === 'true'
|
||||||
readonly workDirInput = core.getInput('working-directory', {required: false})
|
readonly workDirInput = core.getInput('working-directory', {required: false})
|
||||||
|
readonly onlySummary = core.getInput('only-summary', {required: false}) === 'true'
|
||||||
readonly token = core.getInput('token', {required: true})
|
readonly token = core.getInput('token', {required: true})
|
||||||
readonly octokit: InstanceType<typeof GitHub>
|
readonly octokit: InstanceType<typeof GitHub>
|
||||||
readonly context = getCheckRunContext()
|
readonly context = getCheckRunContext()
|
||||||
@@ -68,7 +72,11 @@ class TestReporter {
|
|||||||
|
|
||||||
core.info(`Check runs will be created with SHA=${this.context.sha}`)
|
core.info(`Check runs will be created with SHA=${this.context.sha}`)
|
||||||
|
|
||||||
const pattern = this.path.split(',')
|
// Split path pattern by ',' and optionally convert all backslashes to forward slashes
|
||||||
|
// fast-glob (micromatch) always interprets backslashes as escape characters instead of directory separators
|
||||||
|
const pathsList = this.path.split(',')
|
||||||
|
const pattern = this.pathReplaceBackslashes ? pathsList.map(normalizeFilePath) : pathsList
|
||||||
|
|
||||||
const inputProvider = this.artifact
|
const inputProvider = this.artifact
|
||||||
? new ArtifactProvider(
|
? new ArtifactProvider(
|
||||||
this.octokit,
|
this.octokit,
|
||||||
@@ -145,9 +153,22 @@ class TestReporter {
|
|||||||
results.push(tr)
|
results.push(tr)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
core.info(`Creating check run ${name}`)
|
||||||
|
const createResp = await this.octokit.checks.create({
|
||||||
|
head_sha: this.context.sha,
|
||||||
|
name,
|
||||||
|
status: 'in_progress',
|
||||||
|
output: {
|
||||||
|
title: name,
|
||||||
|
summary: ''
|
||||||
|
},
|
||||||
|
...github.context.repo
|
||||||
|
})
|
||||||
|
|
||||||
core.info('Creating report summary')
|
core.info('Creating report summary')
|
||||||
const {listSuites, listTests} = this
|
const {listSuites, listTests, onlySummary} = this
|
||||||
const summary = getReport(results, {listSuites, listTests})
|
const baseUrl = createResp.data.html_url
|
||||||
|
const summary = getReport(results, {listSuites, listTests, baseUrl, onlySummary})
|
||||||
|
|
||||||
core.info('Creating annotations')
|
core.info('Creating annotations')
|
||||||
const annotations = getAnnotations(results, this.maxAnnotations)
|
const annotations = getAnnotations(results, this.maxAnnotations)
|
||||||
@@ -156,10 +177,9 @@ class TestReporter {
|
|||||||
const conclusion = isFailed ? 'failure' : 'success'
|
const conclusion = isFailed ? 'failure' : 'success'
|
||||||
const icon = isFailed ? Icon.fail : Icon.success
|
const icon = isFailed ? Icon.fail : Icon.success
|
||||||
|
|
||||||
core.info(`Creating check run with conclusion ${conclusion}`)
|
core.info(`Updating check run conclusion (${conclusion}) and output`)
|
||||||
const resp = await this.octokit.checks.create({
|
const resp = await this.octokit.checks.update({
|
||||||
head_sha: this.context.sha,
|
check_run_id: createResp.data.id,
|
||||||
name,
|
|
||||||
conclusion,
|
conclusion,
|
||||||
status: 'completed',
|
status: 'completed',
|
||||||
output: {
|
output: {
|
||||||
@@ -184,8 +204,12 @@ class TestReporter {
|
|||||||
return new DotnetTrxParser(options)
|
return new DotnetTrxParser(options)
|
||||||
case 'flutter-json':
|
case 'flutter-json':
|
||||||
return new DartJsonParser(options, 'flutter')
|
return new DartJsonParser(options, 'flutter')
|
||||||
|
case 'java-junit':
|
||||||
|
return new JavaJunitParser(options)
|
||||||
case 'jest-junit':
|
case 'jest-junit':
|
||||||
return new JestJunitParser(options)
|
return new JestJunitParser(options)
|
||||||
|
case 'mocha-json':
|
||||||
|
return new MochaJsonParser(options)
|
||||||
default:
|
default:
|
||||||
throw new Error(`Input variable 'reporter' is set to invalid value '${reporter}'`)
|
throw new Error(`Input variable 'reporter' is set to invalid value '${reporter}'`)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -114,11 +114,11 @@ export class DartJsonParser implements TestParser {
|
|||||||
const group = suite.groups[evt.test.groupIDs[evt.test.groupIDs.length - 1]]
|
const group = suite.groups[evt.test.groupIDs[evt.test.groupIDs.length - 1]]
|
||||||
group.tests.push(test)
|
group.tests.push(test)
|
||||||
tests[evt.test.id] = test
|
tests[evt.test.id] = test
|
||||||
} else if (isTestDoneEvent(evt) && !evt.hidden) {
|
} else if (isTestDoneEvent(evt) && !evt.hidden && tests[evt.testID]) {
|
||||||
tests[evt.testID].testDone = evt
|
tests[evt.testID].testDone = evt
|
||||||
} else if (isErrorEvent(evt)) {
|
} else if (isErrorEvent(evt) && tests[evt.testID]) {
|
||||||
tests[evt.testID].error = evt
|
tests[evt.testID].error = evt
|
||||||
} else if (isMessageEvent(evt)) {
|
} else if (isMessageEvent(evt) && tests[evt.testID]) {
|
||||||
tests[evt.testID].print.push(evt)
|
tests[evt.testID].print.push(evt)
|
||||||
} else if (isDoneEvent(evt)) {
|
} else if (isDoneEvent(evt)) {
|
||||||
success = evt.success
|
success = evt.success
|
||||||
@@ -145,7 +145,11 @@ export class DartJsonParser implements TestParser {
|
|||||||
group.tests.sort((a, b) => (a.testStart.test.line ?? 0) - (b.testStart.test.line ?? 0))
|
group.tests.sort((a, b) => (a.testStart.test.line ?? 0) - (b.testStart.test.line ?? 0))
|
||||||
const tests = group.tests.map(tc => {
|
const tests = group.tests.map(tc => {
|
||||||
const error = this.getError(suite, tc)
|
const error = this.getError(suite, tc)
|
||||||
return new TestCaseResult(tc.testStart.test.name, tc.result, tc.time, error)
|
const testName =
|
||||||
|
group.group.name !== undefined && tc.testStart.test.name.startsWith(group.group.name)
|
||||||
|
? tc.testStart.test.name.slice(group.group.name.length).trim()
|
||||||
|
: tc.testStart.test.name.trim()
|
||||||
|
return new TestCaseResult(testName, tc.result, tc.time, error)
|
||||||
})
|
})
|
||||||
return new TestGroupResult(group.group.name, tests)
|
return new TestGroupResult(group.group.name, tests)
|
||||||
})
|
})
|
||||||
@@ -157,7 +161,6 @@ export class DartJsonParser implements TestParser {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const {trackedFiles} = this.options
|
const {trackedFiles} = this.options
|
||||||
const message = test.error?.error ?? ''
|
|
||||||
const stackTrace = test.error?.stackTrace ?? ''
|
const stackTrace = test.error?.stackTrace ?? ''
|
||||||
const print = test.print
|
const print = test.print
|
||||||
.filter(p => p.messageType === 'print')
|
.filter(p => p.messageType === 'print')
|
||||||
@@ -165,6 +168,7 @@ export class DartJsonParser implements TestParser {
|
|||||||
.join('\n')
|
.join('\n')
|
||||||
const details = [print, stackTrace].filter(str => str !== '').join('\n')
|
const details = [print, stackTrace].filter(str => str !== '').join('\n')
|
||||||
const src = this.exceptionThrowSource(details, trackedFiles)
|
const src = this.exceptionThrowSource(details, trackedFiles)
|
||||||
|
const message = this.getErrorMessage(test.error?.error ?? '', print)
|
||||||
let path
|
let path
|
||||||
let line
|
let line
|
||||||
|
|
||||||
@@ -187,6 +191,21 @@ export class DartJsonParser implements TestParser {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private getErrorMessage(message: string, print: string): string {
|
||||||
|
if (this.sdk === 'flutter') {
|
||||||
|
const uselessMessageRe = /^Test failed\. See exception logs above\.\nThe test description was:/m
|
||||||
|
const flutterPrintRe = /^══╡ EXCEPTION CAUGHT BY FLUTTER TEST FRAMEWORK ╞═+\s+(.*)\s+When the exception was thrown, this was the stack:/ms
|
||||||
|
if (uselessMessageRe.test(message)) {
|
||||||
|
const match = print.match(flutterPrintRe)
|
||||||
|
if (match !== null) {
|
||||||
|
return match[1]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return message || print
|
||||||
|
}
|
||||||
|
|
||||||
private exceptionThrowSource(ex: string, trackedFiles: string[]): {path: string; line: number} | undefined {
|
private exceptionThrowSource(ex: string, trackedFiles: string[]): {path: string; line: number} | undefined {
|
||||||
const lines = ex.split(/\r?\n/g)
|
const lines = ex.split(/\r?\n/g)
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import {parseStringPromise} from 'xml2js'
|
import {parseStringPromise} from 'xml2js'
|
||||||
|
|
||||||
import {ErrorInfo, Outcome, TestMethod, TrxReport} from './dotnet-trx-types'
|
import {ErrorInfo, Outcome, TrxReport, UnitTest, UnitTestResult} from './dotnet-trx-types'
|
||||||
import {ParseOptions, TestParser} from '../../test-parser'
|
import {ParseOptions, TestParser} from '../../test-parser'
|
||||||
|
|
||||||
import {getBasePath, normalizeFilePath} from '../../utils/path-utils'
|
import {getBasePath, normalizeFilePath} from '../../utils/path-utils'
|
||||||
@@ -49,6 +49,7 @@ export class DotnetTrxParser implements TestParser {
|
|||||||
const trx = await this.getTrxReport(path, content)
|
const trx = await this.getTrxReport(path, content)
|
||||||
const tc = this.getTestClasses(trx)
|
const tc = this.getTestClasses(trx)
|
||||||
const tr = this.getTestRunResult(path, trx, tc)
|
const tr = this.getTestRunResult(path, trx, tc)
|
||||||
|
tr.sort(true)
|
||||||
return tr
|
return tr
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -61,38 +62,45 @@ export class DotnetTrxParser implements TestParser {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private getTestClasses(trx: TrxReport): TestClass[] {
|
private getTestClasses(trx: TrxReport): TestClass[] {
|
||||||
const unitTests: {[id: string]: TestMethod} = {}
|
if (trx.TestRun.TestDefinitions === undefined || trx.TestRun.Results === undefined) {
|
||||||
|
return []
|
||||||
|
}
|
||||||
|
|
||||||
|
const unitTests: {[id: string]: UnitTest} = {}
|
||||||
for (const td of trx.TestRun.TestDefinitions) {
|
for (const td of trx.TestRun.TestDefinitions) {
|
||||||
for (const ut of td.UnitTest) {
|
for (const ut of td.UnitTest) {
|
||||||
unitTests[ut.$.id] = ut.TestMethod[0]
|
unitTests[ut.$.id] = ut
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
const unitTestsResults = trx.TestRun.Results.flatMap(r => r.UnitTestResult).flatMap(unitTestResult => ({
|
const unitTestsResults = trx.TestRun.Results.flatMap(r => r.UnitTestResult).flatMap(result => ({
|
||||||
unitTestResult,
|
result,
|
||||||
testMethod: unitTests[unitTestResult.$.testId]
|
test: unitTests[result.$.testId]
|
||||||
}))
|
}))
|
||||||
|
|
||||||
const testClasses: {[name: string]: TestClass} = {}
|
const testClasses: {[name: string]: TestClass} = {}
|
||||||
for (const r of unitTestsResults) {
|
for (const r of unitTestsResults) {
|
||||||
let tc = testClasses[r.testMethod.$.className]
|
const className = r.test.TestMethod[0].$.className
|
||||||
|
let tc = testClasses[className]
|
||||||
if (tc === undefined) {
|
if (tc === undefined) {
|
||||||
tc = new TestClass(r.testMethod.$.className)
|
tc = new TestClass(className)
|
||||||
testClasses[tc.name] = tc
|
testClasses[tc.name] = tc
|
||||||
}
|
}
|
||||||
const output = r.unitTestResult.Output
|
const error = this.getErrorInfo(r.result)
|
||||||
const error = output?.length > 0 && output[0].ErrorInfo?.length > 0 ? output[0].ErrorInfo[0] : undefined
|
const durationAttr = r.result.$.duration
|
||||||
const duration = parseNetDuration(r.unitTestResult.$.duration)
|
const duration = durationAttr ? parseNetDuration(durationAttr) : 0
|
||||||
const test = new Test(r.testMethod.$.name, r.unitTestResult.$.outcome, duration, error)
|
|
||||||
|
const resultTestName = r.result.$.testName
|
||||||
|
const testName =
|
||||||
|
resultTestName.startsWith(className) && resultTestName[className.length] === '.'
|
||||||
|
? resultTestName.substr(className.length + 1)
|
||||||
|
: resultTestName
|
||||||
|
|
||||||
|
const test = new Test(testName, r.result.$.outcome, duration, error)
|
||||||
tc.tests.push(test)
|
tc.tests.push(test)
|
||||||
}
|
}
|
||||||
|
|
||||||
const result = Object.values(testClasses)
|
const result = Object.values(testClasses)
|
||||||
result.sort((a, b) => a.name.localeCompare(b.name))
|
|
||||||
for (const tc of result) {
|
|
||||||
tc.tests.sort((a, b) => a.name.localeCompare(b.name))
|
|
||||||
}
|
|
||||||
|
|
||||||
return result
|
return result
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -112,11 +120,31 @@ export class DotnetTrxParser implements TestParser {
|
|||||||
return new TestRunResult(path, suites, totalTime)
|
return new TestRunResult(path, suites, totalTime)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private getErrorInfo(testResult: UnitTestResult): ErrorInfo | undefined {
|
||||||
|
if (testResult.$.outcome !== 'Failed') {
|
||||||
|
return undefined
|
||||||
|
}
|
||||||
|
|
||||||
|
const output = testResult.Output
|
||||||
|
const error = output?.length > 0 && output[0].ErrorInfo?.length > 0 ? output[0].ErrorInfo[0] : undefined
|
||||||
|
return error
|
||||||
|
}
|
||||||
|
|
||||||
private getError(test: Test): TestCaseError | undefined {
|
private getError(test: Test): TestCaseError | undefined {
|
||||||
if (!this.options.parseErrors || !test.error) {
|
if (!this.options.parseErrors || !test.error) {
|
||||||
return undefined
|
return undefined
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const error = test.error
|
||||||
|
if (
|
||||||
|
!Array.isArray(error.Message) ||
|
||||||
|
error.Message.length === 0 ||
|
||||||
|
!Array.isArray(error.StackTrace) ||
|
||||||
|
error.StackTrace.length === 0
|
||||||
|
) {
|
||||||
|
return undefined
|
||||||
|
}
|
||||||
|
|
||||||
const message = test.error.Message[0]
|
const message = test.error.Message[0]
|
||||||
const stackTrace = test.error.StackTrace[0]
|
const stackTrace = test.error.StackTrace[0]
|
||||||
let path
|
let path
|
||||||
|
|||||||
@@ -4,8 +4,8 @@ export interface TrxReport {
|
|||||||
|
|
||||||
export interface TestRun {
|
export interface TestRun {
|
||||||
Times: Times[]
|
Times: Times[]
|
||||||
Results: Results[]
|
Results?: Results[]
|
||||||
TestDefinitions: TestDefinitions[]
|
TestDefinitions?: TestDefinitions[]
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface Times {
|
export interface Times {
|
||||||
@@ -43,7 +43,7 @@ export interface UnitTestResult {
|
|||||||
$: {
|
$: {
|
||||||
testId: string
|
testId: string
|
||||||
testName: string
|
testName: string
|
||||||
duration: string
|
duration?: string
|
||||||
outcome: Outcome
|
outcome: Outcome
|
||||||
}
|
}
|
||||||
Output: Output[]
|
Output: Output[]
|
||||||
|
|||||||
206
src/parsers/java-junit/java-junit-parser.ts
Normal file
206
src/parsers/java-junit/java-junit-parser.ts
Normal file
@@ -0,0 +1,206 @@
|
|||||||
|
import * as path from 'path'
|
||||||
|
import {ParseOptions, TestParser} from '../../test-parser'
|
||||||
|
import {parseStringPromise} from 'xml2js'
|
||||||
|
|
||||||
|
import {JunitReport, SingleSuiteReport, TestCase, TestSuite} from './java-junit-types'
|
||||||
|
import {normalizeFilePath} from '../../utils/path-utils'
|
||||||
|
|
||||||
|
import {
|
||||||
|
TestExecutionResult,
|
||||||
|
TestRunResult,
|
||||||
|
TestSuiteResult,
|
||||||
|
TestGroupResult,
|
||||||
|
TestCaseResult,
|
||||||
|
TestCaseError
|
||||||
|
} from '../../test-results'
|
||||||
|
|
||||||
|
export class JavaJunitParser implements TestParser {
|
||||||
|
readonly trackedFiles: {[fileName: string]: string[]}
|
||||||
|
|
||||||
|
constructor(readonly options: ParseOptions) {
|
||||||
|
// Map to efficient lookup of all paths with given file name
|
||||||
|
this.trackedFiles = {}
|
||||||
|
for (const filePath of options.trackedFiles) {
|
||||||
|
const fileName = path.basename(filePath)
|
||||||
|
const files = this.trackedFiles[fileName] ?? (this.trackedFiles[fileName] = [])
|
||||||
|
files.push(normalizeFilePath(filePath))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
async parse(filePath: string, content: string): Promise<TestRunResult> {
|
||||||
|
const reportOrSuite = await this.getJunitReport(filePath, content)
|
||||||
|
const isReport = (reportOrSuite as JunitReport).testsuites !== undefined
|
||||||
|
|
||||||
|
// XML might contain:
|
||||||
|
// - multiple suites under <testsuites> root node
|
||||||
|
// - single <testsuite> as root node
|
||||||
|
let ju: JunitReport
|
||||||
|
if (isReport) {
|
||||||
|
ju = reportOrSuite as JunitReport
|
||||||
|
} else {
|
||||||
|
// Make it behave the same way as if suite was inside <testsuites> root node
|
||||||
|
const suite = (reportOrSuite as SingleSuiteReport).testsuite
|
||||||
|
ju = {
|
||||||
|
testsuites: {
|
||||||
|
$: {time: suite.$.time},
|
||||||
|
testsuite: [suite]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return this.getTestRunResult(filePath, ju)
|
||||||
|
}
|
||||||
|
|
||||||
|
private async getJunitReport(filePath: string, content: string): Promise<JunitReport | SingleSuiteReport> {
|
||||||
|
try {
|
||||||
|
return await parseStringPromise(content)
|
||||||
|
} catch (e) {
|
||||||
|
throw new Error(`Invalid XML at ${filePath}\n\n${e}`)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private getTestRunResult(filePath: string, junit: JunitReport): TestRunResult {
|
||||||
|
const suites =
|
||||||
|
junit.testsuites.testsuite === undefined
|
||||||
|
? []
|
||||||
|
: junit.testsuites.testsuite.map(ts => {
|
||||||
|
const name = ts.$.name.trim()
|
||||||
|
const time = parseFloat(ts.$.time) * 1000
|
||||||
|
const sr = new TestSuiteResult(name, this.getGroups(ts), time)
|
||||||
|
return sr
|
||||||
|
})
|
||||||
|
|
||||||
|
const seconds = parseFloat(junit.testsuites.$?.time)
|
||||||
|
const time = isNaN(seconds) ? undefined : seconds * 1000
|
||||||
|
return new TestRunResult(filePath, suites, time)
|
||||||
|
}
|
||||||
|
|
||||||
|
private getGroups(suite: TestSuite): TestGroupResult[] {
|
||||||
|
if (suite.testcase === undefined) {
|
||||||
|
return []
|
||||||
|
}
|
||||||
|
|
||||||
|
const groups: {name: string; tests: TestCase[]}[] = []
|
||||||
|
for (const tc of suite.testcase) {
|
||||||
|
// Normally classname is same as suite name - both refer to same Java class
|
||||||
|
// Therefore it doesn't make sense to process it as a group
|
||||||
|
// and tests will be added to default group with empty name
|
||||||
|
const className = tc.$.classname === suite.$.name ? '' : tc.$.classname
|
||||||
|
let grp = groups.find(g => g.name === className)
|
||||||
|
if (grp === undefined) {
|
||||||
|
grp = {name: className, tests: []}
|
||||||
|
groups.push(grp)
|
||||||
|
}
|
||||||
|
grp.tests.push(tc)
|
||||||
|
}
|
||||||
|
|
||||||
|
return groups.map(grp => {
|
||||||
|
const tests = grp.tests.map(tc => {
|
||||||
|
const name = tc.$.name.trim()
|
||||||
|
const result = this.getTestCaseResult(tc)
|
||||||
|
const time = parseFloat(tc.$.time) * 1000
|
||||||
|
const error = this.getTestCaseError(tc)
|
||||||
|
return new TestCaseResult(name, result, time, error)
|
||||||
|
})
|
||||||
|
return new TestGroupResult(grp.name, tests)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
private getTestCaseResult(test: TestCase): TestExecutionResult {
|
||||||
|
if (test.failure || test.error) return 'failed'
|
||||||
|
if (test.skipped) return 'skipped'
|
||||||
|
return 'success'
|
||||||
|
}
|
||||||
|
|
||||||
|
private getTestCaseError(tc: TestCase): TestCaseError | undefined {
|
||||||
|
if (!this.options.parseErrors) {
|
||||||
|
return undefined
|
||||||
|
}
|
||||||
|
|
||||||
|
// We process <error> and <failure> the same way
|
||||||
|
const failures = tc.failure ?? tc.error
|
||||||
|
if (!failures) {
|
||||||
|
return undefined
|
||||||
|
}
|
||||||
|
|
||||||
|
const failure = failures[0]
|
||||||
|
const details = typeof failure === 'object' ? failure._ : failure
|
||||||
|
let filePath
|
||||||
|
let line
|
||||||
|
|
||||||
|
const src = this.exceptionThrowSource(details)
|
||||||
|
if (src) {
|
||||||
|
filePath = src.filePath
|
||||||
|
line = src.line
|
||||||
|
}
|
||||||
|
|
||||||
|
return {
|
||||||
|
path: filePath,
|
||||||
|
line,
|
||||||
|
details,
|
||||||
|
message: typeof failure === 'object' ? failure.message : undefined
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private exceptionThrowSource(stackTrace: string): {filePath: string; line: number} | undefined {
|
||||||
|
const lines = stackTrace.split(/\r?\n/)
|
||||||
|
const re = /^at (.*)\((.*):(\d+)\)$/
|
||||||
|
|
||||||
|
for (const str of lines) {
|
||||||
|
const match = str.match(re)
|
||||||
|
if (match !== null) {
|
||||||
|
const [_, tracePath, fileName, lineStr] = match
|
||||||
|
const filePath = this.getFilePath(tracePath, fileName)
|
||||||
|
if (filePath !== undefined) {
|
||||||
|
const line = parseInt(lineStr)
|
||||||
|
return {filePath, line}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Stacktrace in Java doesn't contain full paths to source file.
|
||||||
|
// There are only package, file name and line.
|
||||||
|
// Assuming folder structure matches package name (as it should in Java),
|
||||||
|
// we can try to match tracked file.
|
||||||
|
private getFilePath(tracePath: string, fileName: string): string | undefined {
|
||||||
|
// Check if there is any tracked file with given name
|
||||||
|
const files = this.trackedFiles[fileName]
|
||||||
|
if (files === undefined) {
|
||||||
|
return undefined
|
||||||
|
}
|
||||||
|
|
||||||
|
// Remove class name and method name from trace.
|
||||||
|
// Take parts until first item with capital letter - package names are lowercase while class name is CamelCase.
|
||||||
|
const packageParts = tracePath.split(/\./g)
|
||||||
|
const packageIndex = packageParts.findIndex(part => part[0] <= 'Z')
|
||||||
|
if (packageIndex !== -1) {
|
||||||
|
packageParts.splice(packageIndex, packageParts.length - packageIndex)
|
||||||
|
}
|
||||||
|
|
||||||
|
if (packageParts.length === 0) {
|
||||||
|
return undefined
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get right file
|
||||||
|
// - file name matches
|
||||||
|
// - parent folders structure must reflect the package name
|
||||||
|
for (const filePath of files) {
|
||||||
|
const dirs = path.dirname(filePath).split(/\//g)
|
||||||
|
if (packageParts.length > dirs.length) {
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
// get only N parent folders, where N = length of package name parts
|
||||||
|
if (dirs.length > packageParts.length) {
|
||||||
|
dirs.splice(0, dirs.length - packageParts.length)
|
||||||
|
}
|
||||||
|
// check if parent folder structure matches package name
|
||||||
|
const isMatch = packageParts.every((part, i) => part === dirs[i])
|
||||||
|
if (isMatch) {
|
||||||
|
return filePath
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return undefined
|
||||||
|
}
|
||||||
|
}
|
||||||
45
src/parsers/java-junit/java-junit-types.ts
Normal file
45
src/parsers/java-junit/java-junit-types.ts
Normal file
@@ -0,0 +1,45 @@
|
|||||||
|
export interface JunitReport {
|
||||||
|
testsuites: TestSuites
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface SingleSuiteReport {
|
||||||
|
testsuite: TestSuite
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface TestSuites {
|
||||||
|
$: {
|
||||||
|
time: string
|
||||||
|
}
|
||||||
|
testsuite?: TestSuite[]
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface TestSuite {
|
||||||
|
$: {
|
||||||
|
name: string
|
||||||
|
tests: string
|
||||||
|
errors: string
|
||||||
|
failures: string
|
||||||
|
skipped: string
|
||||||
|
time: string
|
||||||
|
timestamp?: Date
|
||||||
|
}
|
||||||
|
testcase: TestCase[]
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface TestCase {
|
||||||
|
$: {
|
||||||
|
classname: string
|
||||||
|
file?: string
|
||||||
|
name: string
|
||||||
|
time: string
|
||||||
|
}
|
||||||
|
failure?: string | Failure[]
|
||||||
|
error?: string | Failure[]
|
||||||
|
skipped?: string[]
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface Failure {
|
||||||
|
_: string
|
||||||
|
type: string
|
||||||
|
message: string
|
||||||
|
}
|
||||||
@@ -2,6 +2,7 @@ import {ParseOptions, TestParser} from '../../test-parser'
|
|||||||
import {parseStringPromise} from 'xml2js'
|
import {parseStringPromise} from 'xml2js'
|
||||||
|
|
||||||
import {JunitReport, TestCase, TestSuite} from './jest-junit-types'
|
import {JunitReport, TestCase, TestSuite} from './jest-junit-types'
|
||||||
|
import {getExceptionSource} from '../../utils/node-utils'
|
||||||
import {getBasePath, normalizeFilePath} from '../../utils/path-utils'
|
import {getBasePath, normalizeFilePath} from '../../utils/path-utils'
|
||||||
|
|
||||||
import {
|
import {
|
||||||
@@ -32,12 +33,15 @@ export class JestJunitParser implements TestParser {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private getTestRunResult(path: string, junit: JunitReport): TestRunResult {
|
private getTestRunResult(path: string, junit: JunitReport): TestRunResult {
|
||||||
const suites = junit.testsuites.testsuite.map(ts => {
|
const suites =
|
||||||
const name = ts.$.name.trim()
|
junit.testsuites.testsuite === undefined
|
||||||
const time = parseFloat(ts.$.time) * 1000
|
? []
|
||||||
const sr = new TestSuiteResult(name, this.getGroups(ts), time)
|
: junit.testsuites.testsuite.map(ts => {
|
||||||
return sr
|
const name = ts.$.name.trim()
|
||||||
})
|
const time = parseFloat(ts.$.time) * 1000
|
||||||
|
const sr = new TestSuiteResult(name, this.getGroups(ts), time)
|
||||||
|
return sr
|
||||||
|
})
|
||||||
|
|
||||||
const time = parseFloat(junit.testsuites.$.time) * 1000
|
const time = parseFloat(junit.testsuites.$.time) * 1000
|
||||||
return new TestRunResult(path, suites, time)
|
return new TestRunResult(path, suites, time)
|
||||||
@@ -81,7 +85,7 @@ export class JestJunitParser implements TestParser {
|
|||||||
let path
|
let path
|
||||||
let line
|
let line
|
||||||
|
|
||||||
const src = this.exceptionThrowSource(details)
|
const src = getExceptionSource(details, this.options.trackedFiles, file => this.getRelativePath(file))
|
||||||
if (src) {
|
if (src) {
|
||||||
path = src.path
|
path = src.path
|
||||||
line = src.line
|
line = src.line
|
||||||
@@ -94,31 +98,13 @@ export class JestJunitParser implements TestParser {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private exceptionThrowSource(stackTrace: string): {path: string; line: number} | undefined {
|
private getRelativePath(path: string): string {
|
||||||
const lines = stackTrace.split(/\r?\n/)
|
path = normalizeFilePath(path)
|
||||||
const re = /\((.*):(\d+):\d+\)$/
|
const workDir = this.getWorkDir(path)
|
||||||
|
if (workDir !== undefined && path.startsWith(workDir)) {
|
||||||
const {trackedFiles} = this.options
|
path = path.substr(workDir.length)
|
||||||
for (const str of lines) {
|
|
||||||
const match = str.match(re)
|
|
||||||
if (match !== null) {
|
|
||||||
const [_, fileStr, lineStr] = match
|
|
||||||
const filePath = normalizeFilePath(fileStr)
|
|
||||||
if (filePath.startsWith('internal/') || filePath.includes('/node_modules/')) {
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
const workDir = this.getWorkDir(filePath)
|
|
||||||
if (!workDir) {
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
const path = filePath.substr(workDir.length)
|
|
||||||
if (trackedFiles.includes(path)) {
|
|
||||||
const line = parseInt(lineStr)
|
|
||||||
|
|
||||||
return {path, line}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
return path
|
||||||
}
|
}
|
||||||
|
|
||||||
private getWorkDir(path: string): string | undefined {
|
private getWorkDir(path: string): string | undefined {
|
||||||
|
|||||||
@@ -4,13 +4,9 @@ export interface JunitReport {
|
|||||||
|
|
||||||
export interface TestSuites {
|
export interface TestSuites {
|
||||||
$: {
|
$: {
|
||||||
name: string
|
|
||||||
tests: string
|
|
||||||
failures: string // assertion failed
|
|
||||||
errors: string // unhandled exception during test execution
|
|
||||||
time: string
|
time: string
|
||||||
}
|
}
|
||||||
testsuite: TestSuite[]
|
testsuite?: TestSuite[]
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface TestSuite {
|
export interface TestSuite {
|
||||||
|
|||||||
118
src/parsers/mocha-json/mocha-json-parser.ts
Normal file
118
src/parsers/mocha-json/mocha-json-parser.ts
Normal file
@@ -0,0 +1,118 @@
|
|||||||
|
import {ParseOptions, TestParser} from '../../test-parser'
|
||||||
|
import {
|
||||||
|
TestCaseError,
|
||||||
|
TestCaseResult,
|
||||||
|
TestExecutionResult,
|
||||||
|
TestGroupResult,
|
||||||
|
TestRunResult,
|
||||||
|
TestSuiteResult
|
||||||
|
} from '../../test-results'
|
||||||
|
import {getExceptionSource} from '../../utils/node-utils'
|
||||||
|
import {getBasePath, normalizeFilePath} from '../../utils/path-utils'
|
||||||
|
import {MochaJson, MochaJsonTest} from './mocha-json-types'
|
||||||
|
|
||||||
|
export class MochaJsonParser implements TestParser {
|
||||||
|
assumedWorkDir: string | undefined
|
||||||
|
|
||||||
|
constructor(readonly options: ParseOptions) {}
|
||||||
|
|
||||||
|
async parse(path: string, content: string): Promise<TestRunResult> {
|
||||||
|
const mocha = this.getMochaJson(path, content)
|
||||||
|
const result = this.getTestRunResult(path, mocha)
|
||||||
|
result.sort(true)
|
||||||
|
return Promise.resolve(result)
|
||||||
|
}
|
||||||
|
|
||||||
|
private getMochaJson(path: string, content: string): MochaJson {
|
||||||
|
try {
|
||||||
|
return JSON.parse(content)
|
||||||
|
} catch (e) {
|
||||||
|
throw new Error(`Invalid JSON at ${path}\n\n${e}`)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private getTestRunResult(resultsPath: string, mocha: MochaJson): TestRunResult {
|
||||||
|
const suitesMap: {[path: string]: TestSuiteResult} = {}
|
||||||
|
|
||||||
|
const getSuite = (test: MochaJsonTest): TestSuiteResult => {
|
||||||
|
const path = this.getRelativePath(test.file)
|
||||||
|
return suitesMap[path] ?? (suitesMap[path] = new TestSuiteResult(path, []))
|
||||||
|
}
|
||||||
|
|
||||||
|
for (const test of mocha.passes) {
|
||||||
|
const suite = getSuite(test)
|
||||||
|
this.processTest(suite, test, 'success')
|
||||||
|
}
|
||||||
|
|
||||||
|
for (const test of mocha.failures) {
|
||||||
|
const suite = getSuite(test)
|
||||||
|
this.processTest(suite, test, 'failed')
|
||||||
|
}
|
||||||
|
|
||||||
|
for (const test of mocha.pending) {
|
||||||
|
const suite = getSuite(test)
|
||||||
|
this.processTest(suite, test, 'skipped')
|
||||||
|
}
|
||||||
|
|
||||||
|
const suites = Object.values(suitesMap)
|
||||||
|
return new TestRunResult(resultsPath, suites, mocha.stats.duration)
|
||||||
|
}
|
||||||
|
|
||||||
|
private processTest(suite: TestSuiteResult, test: MochaJsonTest, result: TestExecutionResult): void {
|
||||||
|
const groupName =
|
||||||
|
test.fullTitle !== test.title
|
||||||
|
? test.fullTitle.substr(0, test.fullTitle.length - test.title.length).trimEnd()
|
||||||
|
: null
|
||||||
|
|
||||||
|
let group = suite.groups.find(grp => grp.name === groupName)
|
||||||
|
if (group === undefined) {
|
||||||
|
group = new TestGroupResult(groupName, [])
|
||||||
|
suite.groups.push(group)
|
||||||
|
}
|
||||||
|
|
||||||
|
const error = this.getTestCaseError(test)
|
||||||
|
const testCase = new TestCaseResult(test.title, result, test.duration ?? 0, error)
|
||||||
|
group.tests.push(testCase)
|
||||||
|
}
|
||||||
|
|
||||||
|
private getTestCaseError(test: MochaJsonTest): TestCaseError | undefined {
|
||||||
|
const details = test.err.stack
|
||||||
|
const message = test.err.message
|
||||||
|
if (details === undefined) {
|
||||||
|
return undefined
|
||||||
|
}
|
||||||
|
|
||||||
|
let path
|
||||||
|
let line
|
||||||
|
|
||||||
|
const src = getExceptionSource(details, this.options.trackedFiles, file => this.getRelativePath(file))
|
||||||
|
if (src) {
|
||||||
|
path = src.path
|
||||||
|
line = src.line
|
||||||
|
}
|
||||||
|
|
||||||
|
return {
|
||||||
|
path,
|
||||||
|
line,
|
||||||
|
message,
|
||||||
|
details
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private getRelativePath(path: string): string {
|
||||||
|
path = normalizeFilePath(path)
|
||||||
|
const workDir = this.getWorkDir(path)
|
||||||
|
if (workDir !== undefined && path.startsWith(workDir)) {
|
||||||
|
path = path.substr(workDir.length)
|
||||||
|
}
|
||||||
|
return path
|
||||||
|
}
|
||||||
|
|
||||||
|
private getWorkDir(path: string): string | undefined {
|
||||||
|
return (
|
||||||
|
this.options.workDir ??
|
||||||
|
this.assumedWorkDir ??
|
||||||
|
(this.assumedWorkDir = getBasePath(path, this.options.trackedFiles))
|
||||||
|
)
|
||||||
|
}
|
||||||
|
}
|
||||||
23
src/parsers/mocha-json/mocha-json-types.ts
Normal file
23
src/parsers/mocha-json/mocha-json-types.ts
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
export interface MochaJson {
|
||||||
|
stats: MochaJsonStats
|
||||||
|
passes: MochaJsonTest[]
|
||||||
|
pending: MochaJsonTest[]
|
||||||
|
failures: MochaJsonTest[]
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface MochaJsonStats {
|
||||||
|
duration: number
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface MochaJsonTest {
|
||||||
|
title: string
|
||||||
|
fullTitle: string
|
||||||
|
file: string
|
||||||
|
duration?: number
|
||||||
|
err: MochaJsonTestError
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface MochaJsonTestError {
|
||||||
|
stack?: string
|
||||||
|
message?: string
|
||||||
|
}
|
||||||
@@ -1,5 +1,6 @@
|
|||||||
import {ellipsis, fixEol} from '../utils/markdown-utils'
|
import {ellipsis, fixEol} from '../utils/markdown-utils'
|
||||||
import {TestRunResult} from '../test-results'
|
import {TestRunResult} from '../test-results'
|
||||||
|
import {getFirstNonEmptyLine} from '../utils/parse-utils'
|
||||||
|
|
||||||
type Annotation = {
|
type Annotation = {
|
||||||
path: string
|
path: string
|
||||||
@@ -53,7 +54,7 @@ export function getAnnotations(results: TestRunResult[], maxCount: number): Anno
|
|||||||
errors.push({
|
errors.push({
|
||||||
testRunPaths: [tr.path],
|
testRunPaths: [tr.path],
|
||||||
suiteName: ts.name,
|
suiteName: ts.name,
|
||||||
testName: tc.name,
|
testName: tg.name ? `${tg.name} ► ${tc.name}` : tc.name,
|
||||||
details: err.details,
|
details: err.details,
|
||||||
message: err.message ?? getFirstNonEmptyLine(err.details) ?? 'Test failed',
|
message: err.message ?? getFirstNonEmptyLine(err.details) ?? 'Test failed',
|
||||||
path,
|
path,
|
||||||
@@ -98,11 +99,6 @@ function enforceCheckRunLimits(err: Annotation): Annotation {
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
function getFirstNonEmptyLine(stackTrace: string): string | undefined {
|
|
||||||
const lines = stackTrace.split(/\r?\n/g)
|
|
||||||
return lines.find(str => !/^\s*$/.test(str))
|
|
||||||
}
|
|
||||||
|
|
||||||
function ident(text: string, prefix: string): string {
|
function ident(text: string, prefix: string): string {
|
||||||
return text
|
return text
|
||||||
.split(/\n/g)
|
.split(/\n/g)
|
||||||
|
|||||||
@@ -1,61 +1,81 @@
|
|||||||
import * as core from '@actions/core'
|
import * as core from '@actions/core'
|
||||||
import {TestExecutionResult, TestRunResult, TestSuiteResult} from '../test-results'
|
import {TestExecutionResult, TestRunResult, TestSuiteResult} from '../test-results'
|
||||||
import {Align, formatTime, Icon, link, table} from '../utils/markdown-utils'
|
import {Align, formatTime, Icon, link, table} from '../utils/markdown-utils'
|
||||||
|
import {getFirstNonEmptyLine} from '../utils/parse-utils'
|
||||||
import {slug} from '../utils/slugger'
|
import {slug} from '../utils/slugger'
|
||||||
|
|
||||||
|
const MAX_REPORT_LENGTH = 65535
|
||||||
|
|
||||||
export interface ReportOptions {
|
export interface ReportOptions {
|
||||||
listSuites: 'all' | 'failed'
|
listSuites: 'all' | 'failed'
|
||||||
listTests: 'all' | 'failed' | 'none'
|
listTests: 'all' | 'failed' | 'none'
|
||||||
|
baseUrl: string
|
||||||
|
onlySummary: boolean
|
||||||
}
|
}
|
||||||
|
|
||||||
const defaultOptions: ReportOptions = {
|
const defaultOptions: ReportOptions = {
|
||||||
listSuites: 'all',
|
listSuites: 'all',
|
||||||
listTests: 'all'
|
listTests: 'all',
|
||||||
|
baseUrl: '',
|
||||||
|
onlySummary: false
|
||||||
}
|
}
|
||||||
|
|
||||||
export function getReport(results: TestRunResult[], options: ReportOptions = defaultOptions): string {
|
export function getReport(results: TestRunResult[], options: ReportOptions = defaultOptions): string {
|
||||||
core.info('Generating check run summary')
|
core.info('Generating check run summary')
|
||||||
|
|
||||||
const maxReportLength = 65535
|
|
||||||
applySort(results)
|
applySort(results)
|
||||||
|
|
||||||
const opts = {...options}
|
const opts = {...options}
|
||||||
let report = renderReport(results, opts)
|
let lines = renderReport(results, opts)
|
||||||
if (getByteLength(report) <= maxReportLength) {
|
let report = lines.join('\n')
|
||||||
|
|
||||||
|
if (getByteLength(report) <= MAX_REPORT_LENGTH) {
|
||||||
return report
|
return report
|
||||||
}
|
}
|
||||||
|
|
||||||
if (opts.listTests === 'all') {
|
if (opts.listTests === 'all') {
|
||||||
core.info("Test report summary is too big - setting 'listTests' to 'failed'")
|
core.info("Test report summary is too big - setting 'listTests' to 'failed'")
|
||||||
opts.listTests = 'failed'
|
opts.listTests = 'failed'
|
||||||
report = renderReport(results, opts)
|
lines = renderReport(results, opts)
|
||||||
if (getByteLength(report) <= maxReportLength) {
|
report = lines.join('\n')
|
||||||
|
if (getByteLength(report) <= MAX_REPORT_LENGTH) {
|
||||||
return report
|
return report
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (opts.listSuites === 'all') {
|
core.warning(`Test report summary exceeded limit of ${MAX_REPORT_LENGTH} bytes and will be trimmed`)
|
||||||
core.info("Test report summary is too big - setting 'listSuites' to 'failed'")
|
return trimReport(lines)
|
||||||
opts.listSuites = 'failed'
|
}
|
||||||
report = renderReport(results, opts)
|
|
||||||
if (getByteLength(report) <= maxReportLength) {
|
function trimReport(lines: string[]): string {
|
||||||
return report
|
const closingBlock = '```'
|
||||||
|
const errorMsg = `**Report exceeded GitHub limit of ${MAX_REPORT_LENGTH} bytes and has been trimmed**`
|
||||||
|
const maxErrorMsgLength = closingBlock.length + errorMsg.length + 2
|
||||||
|
const maxReportLength = MAX_REPORT_LENGTH - maxErrorMsgLength
|
||||||
|
|
||||||
|
let reportLength = 0
|
||||||
|
let codeBlock = false
|
||||||
|
let endLineIndex = 0
|
||||||
|
for (endLineIndex = 0; endLineIndex < lines.length; endLineIndex++) {
|
||||||
|
const line = lines[endLineIndex]
|
||||||
|
const lineLength = getByteLength(line)
|
||||||
|
|
||||||
|
reportLength += lineLength + 1
|
||||||
|
if (reportLength > maxReportLength) {
|
||||||
|
break
|
||||||
|
}
|
||||||
|
|
||||||
|
if (line === '```') {
|
||||||
|
codeBlock = !codeBlock
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (opts.listTests !== 'none') {
|
const reportLines = lines.slice(0, endLineIndex)
|
||||||
core.info("Test report summary is too big - setting 'listTests' to 'none'")
|
if (codeBlock) {
|
||||||
opts.listTests = 'none'
|
reportLines.push('```')
|
||||||
report = renderReport(results, opts)
|
|
||||||
if (getByteLength(report) <= maxReportLength) {
|
|
||||||
return report
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
reportLines.push(errorMsg)
|
||||||
core.warning(`Test report summary exceeded limit of ${maxReportLength} bytes`)
|
return reportLines.join('\n')
|
||||||
const badge = getReportBadge(results)
|
|
||||||
const msg = `**Test report summary exceeded limit of ${maxReportLength} bytes and was removed**`
|
|
||||||
return `${badge}\n${msg}`
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function applySort(results: TestRunResult[]): void {
|
function applySort(results: TestRunResult[]): void {
|
||||||
@@ -69,7 +89,7 @@ function getByteLength(text: string): number {
|
|||||||
return Buffer.byteLength(text, 'utf8')
|
return Buffer.byteLength(text, 'utf8')
|
||||||
}
|
}
|
||||||
|
|
||||||
function renderReport(results: TestRunResult[], options: ReportOptions): string {
|
function renderReport(results: TestRunResult[], options: ReportOptions): string[] {
|
||||||
const sections: string[] = []
|
const sections: string[] = []
|
||||||
const badge = getReportBadge(results)
|
const badge = getReportBadge(results)
|
||||||
sections.push(badge)
|
sections.push(badge)
|
||||||
@@ -77,7 +97,7 @@ function renderReport(results: TestRunResult[], options: ReportOptions): string
|
|||||||
const runs = getTestRunsReport(results, options)
|
const runs = getTestRunsReport(results, options)
|
||||||
sections.push(...runs)
|
sections.push(...runs)
|
||||||
|
|
||||||
return sections.join('\n')
|
return sections
|
||||||
}
|
}
|
||||||
|
|
||||||
function getReportBadge(results: TestRunResult[]): string {
|
function getReportBadge(results: TestRunResult[]): string {
|
||||||
@@ -114,11 +134,11 @@ function getBadge(passed: number, failed: number, skipped: number): string {
|
|||||||
function getTestRunsReport(testRuns: TestRunResult[], options: ReportOptions): string[] {
|
function getTestRunsReport(testRuns: TestRunResult[], options: ReportOptions): string[] {
|
||||||
const sections: string[] = []
|
const sections: string[] = []
|
||||||
|
|
||||||
if (testRuns.length > 1) {
|
if (testRuns.length > 1 || options.onlySummary) {
|
||||||
const tableData = testRuns.map((tr, runIndex) => {
|
const tableData = testRuns.map((tr, runIndex) => {
|
||||||
const time = formatTime(tr.time)
|
const time = formatTime(tr.time)
|
||||||
const name = tr.path
|
const name = tr.path
|
||||||
const addr = makeRunSlug(runIndex).link
|
const addr = options.baseUrl + makeRunSlug(runIndex).link
|
||||||
const nameLink = link(name, addr)
|
const nameLink = link(name, addr)
|
||||||
const passed = tr.passed > 0 ? `${tr.passed}${Icon.success}` : ''
|
const passed = tr.passed > 0 ? `${tr.passed}${Icon.success}` : ''
|
||||||
const failed = tr.failed > 0 ? `${tr.failed}${Icon.fail}` : ''
|
const failed = tr.failed > 0 ? `${tr.failed}${Icon.fail}` : ''
|
||||||
@@ -134,8 +154,10 @@ function getTestRunsReport(testRuns: TestRunResult[], options: ReportOptions): s
|
|||||||
sections.push(resultsTable)
|
sections.push(resultsTable)
|
||||||
}
|
}
|
||||||
|
|
||||||
const suitesReports = testRuns.map((tr, i) => getSuitesReport(tr, i, options)).flat()
|
if (options.onlySummary === false) {
|
||||||
sections.push(...suitesReports)
|
const suitesReports = testRuns.map((tr, i) => getSuitesReport(tr, i, options)).flat()
|
||||||
|
sections.push(...suitesReports)
|
||||||
|
}
|
||||||
return sections
|
return sections
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -143,12 +165,15 @@ function getSuitesReport(tr: TestRunResult, runIndex: number, options: ReportOpt
|
|||||||
const sections: string[] = []
|
const sections: string[] = []
|
||||||
|
|
||||||
const trSlug = makeRunSlug(runIndex)
|
const trSlug = makeRunSlug(runIndex)
|
||||||
const nameLink = `<a id="${trSlug.id}" href="${trSlug.link}">${tr.path}</a>`
|
const nameLink = `<a id="${trSlug.id}" href="${options.baseUrl + trSlug.link}">${tr.path}</a>`
|
||||||
const icon = getResultIcon(tr.result)
|
const icon = getResultIcon(tr.result)
|
||||||
sections.push(`## ${nameLink} ${icon}`)
|
sections.push(`## ${icon}\xa0${nameLink}`)
|
||||||
|
|
||||||
const time = formatTime(tr.time)
|
const time = formatTime(tr.time)
|
||||||
const headingLine2 = `**${tr.tests}** tests were completed in **${time}** with **${tr.passed}** passed, **${tr.failed}** failed and **${tr.skipped}** skipped.`
|
const headingLine2 =
|
||||||
|
tr.tests > 0
|
||||||
|
? `**${tr.tests}** tests were completed in **${time}** with **${tr.passed}** passed, **${tr.failed}** failed and **${tr.skipped}** skipped.`
|
||||||
|
: 'No tests found'
|
||||||
sections.push(headingLine2)
|
sections.push(headingLine2)
|
||||||
|
|
||||||
const suites = options.listSuites === 'failed' ? tr.failedSuites : tr.suites
|
const suites = options.listSuites === 'failed' ? tr.failedSuites : tr.suites
|
||||||
@@ -160,7 +185,7 @@ function getSuitesReport(tr: TestRunResult, runIndex: number, options: ReportOpt
|
|||||||
const tsTime = formatTime(s.time)
|
const tsTime = formatTime(s.time)
|
||||||
const tsName = s.name
|
const tsName = s.name
|
||||||
const skipLink = options.listTests === 'none' || (options.listTests === 'failed' && s.result !== 'failed')
|
const skipLink = options.listTests === 'none' || (options.listTests === 'failed' && s.result !== 'failed')
|
||||||
const tsAddr = makeSuiteSlug(runIndex, suiteIndex).link
|
const tsAddr = options.baseUrl + makeSuiteSlug(runIndex, suiteIndex).link
|
||||||
const tsNameLink = skipLink ? tsName : link(tsName, tsAddr)
|
const tsNameLink = skipLink ? tsName : link(tsName, tsAddr)
|
||||||
const passed = s.passed > 0 ? `${s.passed}${Icon.success}` : ''
|
const passed = s.passed > 0 ? `${s.passed}${Icon.success}` : ''
|
||||||
const failed = s.failed > 0 ? `${s.failed}${Icon.fail}` : ''
|
const failed = s.failed > 0 ? `${s.failed}${Icon.fail}` : ''
|
||||||
@@ -183,7 +208,10 @@ function getSuitesReport(tr: TestRunResult, runIndex: number, options: ReportOpt
|
|||||||
}
|
}
|
||||||
|
|
||||||
function getTestsReport(ts: TestSuiteResult, runIndex: number, suiteIndex: number, options: ReportOptions): string[] {
|
function getTestsReport(ts: TestSuiteResult, runIndex: number, suiteIndex: number, options: ReportOptions): string[] {
|
||||||
const groups = options.listTests === 'failed' ? ts.failedGroups : ts.groups
|
if (options.listTests === 'failed' && ts.result !== 'failed') {
|
||||||
|
return []
|
||||||
|
}
|
||||||
|
const groups = ts.groups
|
||||||
if (groups.length === 0) {
|
if (groups.length === 0) {
|
||||||
return []
|
return []
|
||||||
}
|
}
|
||||||
@@ -192,33 +220,30 @@ function getTestsReport(ts: TestSuiteResult, runIndex: number, suiteIndex: numbe
|
|||||||
|
|
||||||
const tsName = ts.name
|
const tsName = ts.name
|
||||||
const tsSlug = makeSuiteSlug(runIndex, suiteIndex)
|
const tsSlug = makeSuiteSlug(runIndex, suiteIndex)
|
||||||
const tsNameLink = `<a id="${tsSlug.id}" href="${tsSlug.link}">${tsName}</a>`
|
const tsNameLink = `<a id="${tsSlug.id}" href="${options.baseUrl + tsSlug.link}">${tsName}</a>`
|
||||||
const icon = getResultIcon(ts.result)
|
const icon = getResultIcon(ts.result)
|
||||||
sections.push(`### ${tsNameLink} ${icon}`)
|
sections.push(`### ${icon}\xa0${tsNameLink}`)
|
||||||
|
|
||||||
const tsTime = formatTime(ts.time)
|
|
||||||
const headingLine2 = `**${ts.tests}** tests were completed in **${tsTime}** with **${ts.passed}** passed, **${ts.failed}** failed and **${ts.skipped}** skipped.`
|
|
||||||
sections.push(headingLine2)
|
|
||||||
|
|
||||||
|
sections.push('```')
|
||||||
for (const grp of groups) {
|
for (const grp of groups) {
|
||||||
const tests = options.listTests === 'failed' ? grp.failedTests : grp.tests
|
if (grp.name) {
|
||||||
if (tests.length === 0) {
|
sections.push(grp.name)
|
||||||
continue
|
}
|
||||||
|
const space = grp.name ? ' ' : ''
|
||||||
|
for (const tc of grp.tests) {
|
||||||
|
const result = getResultIcon(tc.result)
|
||||||
|
sections.push(`${space}${result} ${tc.name}`)
|
||||||
|
if (tc.error) {
|
||||||
|
const lines = (tc.error.message ?? getFirstNonEmptyLine(tc.error.details)?.trim())
|
||||||
|
?.split(/\r?\n/g)
|
||||||
|
.map(l => '\t' + l)
|
||||||
|
if (lines) {
|
||||||
|
sections.push(...lines)
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
const grpHeader = grp.name ? `\n**${grp.name}**` : ''
|
|
||||||
const testsTable = table(
|
|
||||||
['Result', 'Test', 'Time'],
|
|
||||||
[Align.Center, Align.Left, Align.Right],
|
|
||||||
...grp.tests.map(tc => {
|
|
||||||
const name = tc.name
|
|
||||||
const time = formatTime(tc.time)
|
|
||||||
const result = getResultIcon(tc.result)
|
|
||||||
return [result, name, time]
|
|
||||||
})
|
|
||||||
)
|
|
||||||
|
|
||||||
sections.push(grpHeader, testsTable)
|
|
||||||
}
|
}
|
||||||
|
sections.push('```')
|
||||||
|
|
||||||
return sections
|
return sections
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -26,6 +26,15 @@ export class TestRunResult {
|
|||||||
get failedSuites(): TestSuiteResult[] {
|
get failedSuites(): TestSuiteResult[] {
|
||||||
return this.suites.filter(s => s.result === 'failed')
|
return this.suites.filter(s => s.result === 'failed')
|
||||||
}
|
}
|
||||||
|
|
||||||
|
sort(deep: boolean): void {
|
||||||
|
this.suites.sort((a, b) => a.name.localeCompare(b.name))
|
||||||
|
if (deep) {
|
||||||
|
for (const suite of this.suites) {
|
||||||
|
suite.sort(deep)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
export class TestSuiteResult {
|
export class TestSuiteResult {
|
||||||
@@ -55,6 +64,15 @@ export class TestSuiteResult {
|
|||||||
get failedGroups(): TestGroupResult[] {
|
get failedGroups(): TestGroupResult[] {
|
||||||
return this.groups.filter(grp => grp.result === 'failed')
|
return this.groups.filter(grp => grp.result === 'failed')
|
||||||
}
|
}
|
||||||
|
|
||||||
|
sort(deep: boolean): void {
|
||||||
|
this.groups.sort((a, b) => (a.name ?? '').localeCompare(b.name ?? ''))
|
||||||
|
if (deep) {
|
||||||
|
for (const grp of this.groups) {
|
||||||
|
grp.sort()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
export class TestGroupResult {
|
export class TestGroupResult {
|
||||||
@@ -80,6 +98,10 @@ export class TestGroupResult {
|
|||||||
get failedTests(): TestCaseResult[] {
|
get failedTests(): TestCaseResult[] {
|
||||||
return this.tests.filter(tc => tc.result === 'failed')
|
return this.tests.filter(tc => tc.result === 'failed')
|
||||||
}
|
}
|
||||||
|
|
||||||
|
sort(): void {
|
||||||
|
this.tests.sort((a, b) => a.name.localeCompare(b.name))
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
export class TestCaseResult {
|
export class TestCaseResult {
|
||||||
|
|||||||
@@ -15,9 +15,6 @@ export function getCheckRunContext(): {sha: string; runId: number} {
|
|||||||
if (!event.workflow_run) {
|
if (!event.workflow_run) {
|
||||||
throw new Error("Event of type 'workflow_run' is missing 'workflow_run' field")
|
throw new Error("Event of type 'workflow_run' is missing 'workflow_run' field")
|
||||||
}
|
}
|
||||||
if (event.workflow_run.conclusion === 'cancelled') {
|
|
||||||
throw new Error(`Workflow run ${event.workflow_run.id} has been cancelled`)
|
|
||||||
}
|
|
||||||
return {
|
return {
|
||||||
sha: event.workflow_run.head_commit.id,
|
sha: event.workflow_run.head_commit.id,
|
||||||
runId: event.workflow_run.id
|
runId: event.workflow_run.id
|
||||||
@@ -87,29 +84,45 @@ export async function downloadArtifact(
|
|||||||
}
|
}
|
||||||
|
|
||||||
export async function listFiles(octokit: InstanceType<typeof GitHub>, sha: string): Promise<string[]> {
|
export async function listFiles(octokit: InstanceType<typeof GitHub>, sha: string): Promise<string[]> {
|
||||||
core.info('Fetching list of tracked files from GitHub')
|
core.startGroup('Fetching list of tracked files from GitHub')
|
||||||
const commit = await octokit.git.getCommit({
|
try {
|
||||||
commit_sha: sha,
|
const commit = await octokit.git.getCommit({
|
||||||
...github.context.repo
|
commit_sha: sha,
|
||||||
})
|
...github.context.repo
|
||||||
const files = await listGitTree(octokit, commit.data.tree.sha, '')
|
})
|
||||||
return files
|
const files = await listGitTree(octokit, commit.data.tree.sha, '')
|
||||||
|
return files
|
||||||
|
} finally {
|
||||||
|
core.endGroup()
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
async function listGitTree(octokit: InstanceType<typeof GitHub>, sha: string, path: string): Promise<string[]> {
|
async function listGitTree(octokit: InstanceType<typeof GitHub>, sha: string, path: string): Promise<string[]> {
|
||||||
const tree = await octokit.git.getTree({
|
const pathLog = path ? ` at ${path}` : ''
|
||||||
|
core.info(`Fetching tree ${sha}${pathLog}`)
|
||||||
|
let truncated = false
|
||||||
|
let tree = await octokit.git.getTree({
|
||||||
|
recursive: 'true',
|
||||||
tree_sha: sha,
|
tree_sha: sha,
|
||||||
...github.context.repo
|
...github.context.repo
|
||||||
})
|
})
|
||||||
|
|
||||||
|
if (tree.data.truncated) {
|
||||||
|
truncated = true
|
||||||
|
tree = await octokit.git.getTree({
|
||||||
|
tree_sha: sha,
|
||||||
|
...github.context.repo
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
const result: string[] = []
|
const result: string[] = []
|
||||||
for (const tr of tree.data.tree) {
|
for (const tr of tree.data.tree) {
|
||||||
const file = `${path}${tr.path}`
|
const file = `${path}${tr.path}`
|
||||||
if (tr.type === 'tree') {
|
if (tr.type === 'blob') {
|
||||||
|
result.push(file)
|
||||||
|
} else if (tr.type === 'tree' && truncated) {
|
||||||
const files = await listGitTree(octokit, tr.sha, `${file}/`)
|
const files = await listGitTree(octokit, tr.sha, `${file}/`)
|
||||||
result.push(...files)
|
result.push(...files)
|
||||||
} else {
|
|
||||||
result.push(file)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -41,7 +41,7 @@ export function ellipsis(text: string, maxLength: number): string {
|
|||||||
|
|
||||||
export function formatTime(ms: number): string {
|
export function formatTime(ms: number): string {
|
||||||
if (ms > 1000) {
|
if (ms > 1000) {
|
||||||
return `${(ms / 1000).toFixed(3)}s`
|
return `${Math.round(ms / 1000)}s`
|
||||||
}
|
}
|
||||||
|
|
||||||
return `${Math.round(ms)}ms`
|
return `${Math.round(ms)}ms`
|
||||||
|
|||||||
30
src/utils/node-utils.ts
Normal file
30
src/utils/node-utils.ts
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
import {normalizeFilePath} from './path-utils'
|
||||||
|
|
||||||
|
export function getExceptionSource(
|
||||||
|
stackTrace: string,
|
||||||
|
trackedFiles: string[],
|
||||||
|
getRelativePath: (str: string) => string
|
||||||
|
): {path: string; line: number} | undefined {
|
||||||
|
const lines = stackTrace.split(/\r?\n/)
|
||||||
|
const re = /\((.*):(\d+):\d+\)$/
|
||||||
|
|
||||||
|
for (const str of lines) {
|
||||||
|
const match = str.match(re)
|
||||||
|
if (match !== null) {
|
||||||
|
const [_, fileStr, lineStr] = match
|
||||||
|
const filePath = normalizeFilePath(fileStr)
|
||||||
|
if (filePath.startsWith('internal/') || filePath.includes('/node_modules/')) {
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
const path = getRelativePath(filePath)
|
||||||
|
if (!path) {
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
if (trackedFiles.includes(path)) {
|
||||||
|
const line = parseInt(lineStr)
|
||||||
|
|
||||||
|
return {path, line}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,6 +1,5 @@
|
|||||||
export function parseNetDuration(str: string): number {
|
export function parseNetDuration(str: string): number {
|
||||||
// matches dotnet duration: 00:00:00.0010000
|
const durationRe = /^(\d\d):(\d\d):(\d\d(?:\.\d+)?)$/
|
||||||
const durationRe = /^(\d\d):(\d\d):(\d\d\.\d+)$/
|
|
||||||
const durationMatch = str.match(durationRe)
|
const durationMatch = str.match(durationRe)
|
||||||
if (durationMatch === null) {
|
if (durationMatch === null) {
|
||||||
throw new Error(`Invalid format: "${str}" is not NET duration`)
|
throw new Error(`Invalid format: "${str}" is not NET duration`)
|
||||||
@@ -18,3 +17,8 @@ export function parseIsoDate(str: string): Date {
|
|||||||
|
|
||||||
return new Date(str)
|
return new Date(str)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function getFirstNonEmptyLine(stackTrace: string): string | undefined {
|
||||||
|
const lines = stackTrace.split(/\r?\n/g)
|
||||||
|
return lines.find(str => !/^\s*$/.test(str))
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user