Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: dorny/test-reporter
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v1.8.0
Choose a base ref
...
head repository: dorny/test-reporter
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: main
Choose a head ref
Loading
Showing with 4,788 additions and 2,397 deletions.
  1. +1 −1 .github/ISSUE_TEMPLATE/bug_report.md
  2. +1 −1 .github/ISSUE_TEMPLATE/feature.md
  3. +1 −1 .github/workflows/check-dist.yml
  4. +1 −1 .github/workflows/ci.yml
  5. +1 −1 .nvmrc
  6. +28 −11 README.md
  7. +5 −2 __tests__/__outputs__/dart-json.md
  8. +31 −0 __tests__/__outputs__/dotnet-nunit.md
  9. +4 −1 __tests__/__outputs__/dotnet-trx.md
  10. +69 −63 __tests__/__outputs__/fluent-validation-test-results.md
  11. +17 −0 __tests__/__outputs__/jest-junit-eslint.md
  12. +5 −2 __tests__/__outputs__/jest-junit.md
  13. +8 −2 __tests__/__outputs__/jest-react-component-test-results.md
  14. +403 −400 __tests__/__outputs__/jest-test-results.md
  15. +5 −2 __tests__/__outputs__/mocha-json.md
  16. +1,432 −36 __tests__/__outputs__/mocha-test-results.md
  17. +19 −16 __tests__/__outputs__/provider-test-results.md
  18. +4 −1 __tests__/__outputs__/pulsar-test-results-no-merge.md
  19. +179 −176 __tests__/__outputs__/pulsar-test-results.md
  20. +19 −0 __tests__/__outputs__/rspec-json.md
  21. +20 −14 __tests__/__outputs__/silent-notes-test-results.md
  22. +5 −1 __tests__/__outputs__/swift-xunit.md
  23. +107 −0 __tests__/__snapshots__/dotnet-nunit.test.ts.snap
  24. +2 −2 __tests__/__snapshots__/java-junit.test.ts.snap
  25. +26 −0 __tests__/__snapshots__/jest-junit.test.ts.snap
  26. +49 −0 __tests__/__snapshots__/rspec-json.test.ts.snap
  27. +1 −1 __tests__/__snapshots__/swift-xunit.test.ts.snap
  28. +29 −0 __tests__/dotnet-nunit.test.ts
  29. +112 −0 __tests__/fixtures/dotnet-nunit.xml
  30. +15 −9 __tests__/fixtures/empty/dart-json.json
  31. +17 −0 __tests__/fixtures/empty/rspec-json.json
  32. +125 −0 __tests__/fixtures/external/nunit-sample.xml
  33. +6 −0 __tests__/fixtures/jest-junit-eslint.xml
  34. +53 −0 __tests__/fixtures/rspec-json.json
  35. +20 −0 __tests__/jest-junit.test.ts
  36. +45 −0 __tests__/rspec-json.test.ts
  37. +13 −0 action.yml
  38. +944 −734 dist/index.js
  39. +1 −1 dist/index.js.map
  40. +164 −631 package-lock.json
  41. +21 −20 package.json
  42. +156 −123 reports/dart/pubspec.lock
  43. +1 −1 reports/dart/pubspec.yaml
  44. +64 −0 reports/dotnet/DotnetTests.NUnitV3Tests/CalculatorTests.cs
  45. +18 −0 reports/dotnet/DotnetTests.NUnitV3Tests/DotnetTests.NUnitV3Tests.csproj
  46. +7 −0 reports/dotnet/DotnetTests.sln
  47. +65 −47 src/main.ts
  48. +11 −9 src/parsers/dart-json/dart-json-parser.ts
  49. +151 −0 src/parsers/dotnet-nunit/dotnet-nunit-parser.ts
  50. +57 −0 src/parsers/dotnet-nunit/dotnet-nunit-types.ts
  51. +8 −1 src/parsers/java-junit/java-junit-parser.ts
  52. +4 −2 src/parsers/java-junit/java-junit-types.ts
  53. +1 −1 src/parsers/jest-junit/jest-junit-parser.ts
  54. +112 −0 src/parsers/rspec-json/rspec-json-parser.ts
  55. +34 −0 src/parsers/rspec-json/rspec-json-types.ts
  56. +75 −55 src/report/get-report.ts
  57. +5 −21 src/utils/github-utils.ts
  58. +11 −7 tsconfig.json
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -3,7 +3,7 @@ name: Bug report
about: Create a report to help us improve
title: ''
labels: 'bug'
assignees: 'dorny,dharmendrasha,j-catania'
assignees: 'dorny,dharmendrasha'
---

## Describe the bug
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/feature.md
Original file line number Diff line number Diff line change
@@ -3,7 +3,7 @@ name: Feature Request
about: Suggest a feature
title: ''
labels: 'enhancement'
assignees: 'dorny,dharmendrasha,j-catania'
assignees: 'dorny,dharmendrasha'
---

## Describe
2 changes: 1 addition & 1 deletion .github/workflows/check-dist.yml
Original file line number Diff line number Diff line change
@@ -46,7 +46,7 @@ jobs:
id: diff

# If index.js was different than expected, upload the expected version as an artifact
- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
if: ${{ failure() && steps.diff.conclusion == 'failure' }}
with:
name: dist
2 changes: 1 addition & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -25,7 +25,7 @@ jobs:

- name: Upload test results
if: success() || failure()
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: test-results
path: __tests__/__results__/*.xml
2 changes: 1 addition & 1 deletion .nvmrc
Original file line number Diff line number Diff line change
@@ -1 +1 @@
v18.19.0
v20
39 changes: 28 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
@@ -2,7 +2,7 @@

This [Github Action](https://github.com/features/actions) displays test results from popular testing frameworks directly in GitHub.

✔️ Parses test results in XML or JSON format and creates nice report as Github Check Run
✔️ Parses test results in XML or JSON format and creates nice report as GitHub Check Run or GitHub Actions job summaries

✔️ Annotates code where it failed based on message and stack trace captured during test execution

@@ -13,7 +13,7 @@ This [Github Action](https://github.com/features/actions) displays test results
|:--:|:--:|:--:|:--:|

**Supported languages / frameworks:**
- .NET / [xUnit](https://xunit.net/) / [NUnit](https://nunit.org/) / [MSTest](https://github.com/Microsoft/testfx-docs)
- .NET / [dotnet test](https://docs.microsoft.com/en-us/dotnet/core/tools/dotnet-test#examples) ( [xUnit](https://xunit.net/) / [NUnit](https://nunit.org/) / [MSTest](https://github.com/Microsoft/testfx-docs) )
- Dart / [test](https://pub.dev/packages/test)
- Flutter / [test](https://pub.dev/packages/test)
- Java / [JUnit](https://junit.org/)
@@ -43,7 +43,7 @@ jobs:
name: Build & Test
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3 # checkout the repo
- uses: actions/checkout@v4 # checkout the repo
- run: npm ci # install packages
- run: npm test # run tests (configured to use jest-junit reporter)

@@ -74,10 +74,10 @@ jobs:
build-test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3 # checkout the repo
- uses: actions/checkout@v4 # checkout the repo
- run: npm ci # install packages
- run: npm test # run tests (configured to use jest-junit reporter)
- uses: actions/upload-artifact@v3 # upload test results
- uses: actions/upload-artifact@v4 # upload test results
if: success() || failure() # run this step even if previous step failed
with:
name: test-results
@@ -137,21 +137,32 @@ jobs:
# Format of test results. Supported options:
# dart-json
# dotnet-nunit
# dotnet-trx
# flutter-json
# java-junit
# jest-junit
# mocha-json
# rspec-json
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'
# Allows you to generate reports for Actions Summary
# https://github.blog/2022-05-09-supercharging-github-actions-with-job-summaries/
use-actions-summary: 'true'
# Customize the title of badges shown for each Actions Summary.
# Useful when distinguish summaries for tests ran in multiple Actions steps.
badge-title: 'tests'
# Limits which test suites are listed:
# all
# failed
# none
list-suites: 'all'
# Limits which test cases are listed:
@@ -306,16 +317,22 @@ Configuration of `uniqueOutputName`, `suiteNameTemplate`, `classNameTemplate`, `
- 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`:
For Mocha >= [v9.1.0](https://github.com/mochajs/mocha/releases/tag/v9.1.0), you can use the following example configuration in `package.json`:
```json
"scripts": {
"test": "mocha --reporter json > test-results.json"
"test": "mocha --reporter json --reporter-option output=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)
For Mocha < v9.1, the command should look like this:
```json
"scripts": {
"test": "mocha --reporter json > test-results.json"
}
```
Additionally, test processing might fail if any of your tests write anything on standard output.
Before version [v9.1.0](https://github.com/mochajs/mocha/releases/tag/v9.1.0), Mocha doesn't have the option to store `json` output directly to the file, and we have to rely on redirecting its standard output ([mocha#4607](https://github.com/mochajs/mocha/pull/4607)).
Please update Mocha to version [v9.1.0](https://github.com/mochajs/mocha/releases/tag/v9.1.0) or above if you encounter this issue.
</details>

<details>
@@ -330,7 +347,7 @@ 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@v3` to upload them and inspect them manually.
- Test report can't reference any additional files (e.g. screenshots). You can use `actions/upload-artifact@v4` 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).
7 changes: 5 additions & 2 deletions __tests__/__outputs__/dart-json.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,13 @@
![Tests failed](https://img.shields.io/badge/tests-1%20passed%2C%204%20failed%2C%201%20skipped-critical)
|Report|Passed|Failed|Skipped|Time|
|:---|---:|---:|---:|---:|
|fixtures/dart-json.json|1 ✅|4 ❌|1 ⚪|4s|
## ❌ <a id="user-content-r0" href="#r0">fixtures/dart-json.json</a>
**6** tests were completed in **4s** with **1** passed, **4** failed and **1** skipped.
|Test suite|Passed|Failed|Skipped|Time|
|:---|---:|---:|---:|---:|
|[test/main_test.dart](#r0s0)|1✅|3❌||74ms|
|[test/second_test.dart](#r0s1)||1❌|1⚪|51ms|
|[test/main_test.dart](#r0s0)|1 |3 ||74ms|
|[test/second_test.dart](#r0s1)||1 |1 |51ms|
### ❌ <a id="user-content-r0s0" href="#r0s0">test/main_test.dart</a>
```
Test 1
31 changes: 31 additions & 0 deletions __tests__/__outputs__/dotnet-nunit.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
![Tests failed](https://img.shields.io/badge/tests-3%20passed%2C%205%20failed%2C%201%20skipped-critical)
|Report|Passed|Failed|Skipped|Time|
|:---|---:|---:|---:|---:|
|fixtures/dotnet-nunit.xml|3 ✅|5 ❌|1 ⚪|230ms|
## ❌ <a id="user-content-r0" href="#r0">fixtures/dotnet-nunit.xml</a>
**9** tests were completed in **230ms** with **3** passed, **5** failed and **1** skipped.
|Test suite|Passed|Failed|Skipped|Time|
|:---|---:|---:|---:|---:|
|[DotnetTests.NUnitV3Tests.dll.DotnetTests.XUnitTests](#r0s0)|3 ✅|5 ❌|1 ⚪|69ms|
### ❌ <a id="user-content-r0s0" href="#r0s0">DotnetTests.NUnitV3Tests.dll.DotnetTests.XUnitTests</a>
```
CalculatorTests
✅ Is_Even_Number(2)
❌ Is_Even_Number(3)
Expected: True
But was: False
❌ Exception_In_TargetTest
System.DivideByZeroException : Attempted to divide by zero.
❌ Exception_In_Test
System.Exception : Test
❌ Failing_Test
Expected: 3
But was: 2
✅ Passing_Test
✅ Passing_Test_With_Description
⚪ Skipped_Test
❌ Timeout_Test
```
5 changes: 4 additions & 1 deletion __tests__/__outputs__/dotnet-trx.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,12 @@
![Tests failed](https://img.shields.io/badge/tests-5%20passed%2C%205%20failed%2C%201%20skipped-critical)
|Report|Passed|Failed|Skipped|Time|
|:---|---:|---:|---:|---:|
|fixtures/dotnet-trx.trx|5 ✅|5 ❌|1 ⚪|1s|
## ❌ <a id="user-content-r0" href="#r0">fixtures/dotnet-trx.trx</a>
**11** tests were completed in **1s** with **5** passed, **5** failed and **1** skipped.
|Test suite|Passed|Failed|Skipped|Time|
|:---|---:|---:|---:|---:|
|[DotnetTests.XUnitTests.CalculatorTests](#r0s0)|5✅|5❌|1⚪|118ms|
|[DotnetTests.XUnitTests.CalculatorTests](#r0s0)|5 |5 |1 |118ms|
### ❌ <a id="user-content-r0s0" href="#r0s0">DotnetTests.XUnitTests.CalculatorTests</a>
```
✅ Custom Name
132 changes: 69 additions & 63 deletions __tests__/__outputs__/fluent-validation-test-results.md
Original file line number Diff line number Diff line change
@@ -1,70 +1,75 @@
![Tests passed successfully](https://img.shields.io/badge/tests-803%20passed%2C%201%20skipped-success)
<details><summary>Expand for details</summary>

|Report|Passed|Failed|Skipped|Time|
|:---|---:|---:|---:|---:|
|fixtures/external/FluentValidation.Tests.trx|803 ✅||1 ⚪|4s|
## ✅ <a id="user-content-r0" href="#r0">fixtures/external/FluentValidation.Tests.trx</a>
**804** tests were completed in **4s** with **803** passed, **0** failed and **1** skipped.
|Test suite|Passed|Failed|Skipped|Time|
|:---|---:|---:|---:|---:|
|[FluentValidation.Tests.AbstractValidatorTester](#r0s0)|35✅|||12ms|
|[FluentValidation.Tests.AccessorCacheTests](#r0s1)|4✅||1⚪|4ms|
|[FluentValidation.Tests.AssemblyScannerTester](#r0s2)|2✅|||2ms|
|[FluentValidation.Tests.CascadingFailuresTester](#r0s3)|38✅|||23ms|
|[FluentValidation.Tests.ChainedValidationTester](#r0s4)|13✅|||6ms|
|[FluentValidation.Tests.ChainingValidatorsTester](#r0s5)|3✅|||1ms|
|[FluentValidation.Tests.ChildRulesTests](#r0s6)|2✅|||7ms|
|[FluentValidation.Tests.CollectionValidatorWithParentTests](#r0s7)|16✅|||13ms|
|[FluentValidation.Tests.ComplexValidationTester](#r0s8)|17✅|||26ms|
|[FluentValidation.Tests.ConditionTests](#r0s9)|18✅|||9ms|
|[FluentValidation.Tests.CreditCardValidatorTests](#r0s10)|2✅|||2ms|
|[FluentValidation.Tests.CustomFailureActionTester](#r0s11)|3✅|||1ms|
|[FluentValidation.Tests.CustomMessageFormatTester](#r0s12)|6✅|||3ms|
|[FluentValidation.Tests.CustomValidatorTester](#r0s13)|10✅|||6ms|
|[FluentValidation.Tests.DefaultValidatorExtensionTester](#r0s14)|30✅|||38ms|
|[FluentValidation.Tests.EmailValidatorTests](#r0s15)|36✅|||18ms|
|[FluentValidation.Tests.EmptyTester](#r0s16)|9✅|||5ms|
|[FluentValidation.Tests.EnumValidatorTests](#r0s17)|12✅|||24ms|
|[FluentValidation.Tests.EqualValidatorTests](#r0s18)|10✅|||3ms|
|[FluentValidation.Tests.ExactLengthValidatorTester](#r0s19)|6✅|||2ms|
|[FluentValidation.Tests.ExclusiveBetweenValidatorTests](#r0s20)|19✅|||6ms|
|[FluentValidation.Tests.ExtensionTester](#r0s21)|4✅|||1ms|
|[FluentValidation.Tests.ForEachRuleTests](#r0s22)|34✅|||47ms|
|[FluentValidation.Tests.GreaterThanOrEqualToValidatorTester](#r0s23)|14✅|||5ms|
|[FluentValidation.Tests.GreaterThanValidatorTester](#r0s24)|13✅|||4ms|
|[FluentValidation.Tests.InclusiveBetweenValidatorTests](#r0s25)|18✅|||4ms|
|[FluentValidation.Tests.InheritanceValidatorTest](#r0s26)|11✅|||18ms|
|[FluentValidation.Tests.InlineValidatorTester](#r0s27)|1✅|||2ms|
|[FluentValidation.Tests.LanguageManagerTests](#r0s28)|21✅|||28ms|
|[FluentValidation.Tests.LengthValidatorTests](#r0s29)|16✅|||17ms|
|[FluentValidation.Tests.LessThanOrEqualToValidatorTester](#r0s30)|13✅|||4ms|
|[FluentValidation.Tests.LessThanValidatorTester](#r0s31)|16✅|||6ms|
|[FluentValidation.Tests.LocalisedMessagesTester](#r0s32)|6✅|||3ms|
|[FluentValidation.Tests.LocalisedNameTester](#r0s33)|2✅|||1ms|
|[FluentValidation.Tests.MemberAccessorTests](#r0s34)|9✅|||5ms|
|[FluentValidation.Tests.MessageFormatterTests](#r0s35)|10✅|||2ms|
|[FluentValidation.Tests.ModelLevelValidatorTests](#r0s36)|2✅|||1ms|
|[FluentValidation.Tests.NameResolutionPluggabilityTester](#r0s37)|3✅|||2ms|
|[FluentValidation.Tests.NotEmptyTester](#r0s38)|10✅|||7ms|
|[FluentValidation.Tests.NotEqualValidatorTests](#r0s39)|11✅|||7ms|
|[FluentValidation.Tests.NotNullTester](#r0s40)|5✅|||1ms|
|[FluentValidation.Tests.NullTester](#r0s41)|5✅|||2ms|
|[FluentValidation.Tests.OnFailureTests](#r0s42)|10✅|||8ms|
|[FluentValidation.Tests.PredicateValidatorTester](#r0s43)|5✅|||2ms|
|[FluentValidation.Tests.PropertyChainTests](#r0s44)|7✅|||1ms|
|[FluentValidation.Tests.RegularExpressionValidatorTests](#r0s45)|15✅|||6ms|
|[FluentValidation.Tests.RuleBuilderTests](#r0s46)|29✅|||96ms|
|[FluentValidation.Tests.RuleDependencyTests](#r0s47)|14✅|||3s|
|[FluentValidation.Tests.RulesetTests](#r0s48)|21✅|||14ms|
|[FluentValidation.Tests.ScalePrecisionValidatorTests](#r0s49)|6✅|||4ms|
|[FluentValidation.Tests.SharedConditionTests](#r0s50)|42✅|||42ms|
|[FluentValidation.Tests.StandalonePropertyValidationTester](#r0s51)|1✅|||0ms|
|[FluentValidation.Tests.StringEnumValidatorTests](#r0s52)|10✅|||5ms|
|[FluentValidation.Tests.TrackingCollectionTests](#r0s53)|3✅|||2ms|
|[FluentValidation.Tests.TransformTests](#r0s54)|4✅|||3ms|
|[FluentValidation.Tests.UserSeverityTester](#r0s55)|7✅|||3ms|
|[FluentValidation.Tests.UserStateTester](#r0s56)|4✅|||3ms|
|[FluentValidation.Tests.ValidateAndThrowTester](#r0s57)|14✅|||25ms|
|[FluentValidation.Tests.ValidationResultTests](#r0s58)|8✅|||8ms|
|[FluentValidation.Tests.ValidatorDescriptorTester](#r0s59)|5✅|||1ms|
|[FluentValidation.Tests.ValidatorSelectorTests](#r0s60)|10✅|||9ms|
|[FluentValidation.Tests.ValidatorTesterTester](#r0s61)|73✅|||74ms|
|[FluentValidation.Tests.AbstractValidatorTester](#r0s0)|35 |||12ms|
|[FluentValidation.Tests.AccessorCacheTests](#r0s1)|4 ||1 |4ms|
|[FluentValidation.Tests.AssemblyScannerTester](#r0s2)|2 |||2ms|
|[FluentValidation.Tests.CascadingFailuresTester](#r0s3)|38 |||23ms|
|[FluentValidation.Tests.ChainedValidationTester](#r0s4)|13 |||6ms|
|[FluentValidation.Tests.ChainingValidatorsTester](#r0s5)|3 |||1ms|
|[FluentValidation.Tests.ChildRulesTests](#r0s6)|2 |||7ms|
|[FluentValidation.Tests.CollectionValidatorWithParentTests](#r0s7)|16 |||13ms|
|[FluentValidation.Tests.ComplexValidationTester](#r0s8)|17 |||26ms|
|[FluentValidation.Tests.ConditionTests](#r0s9)|18 |||9ms|
|[FluentValidation.Tests.CreditCardValidatorTests](#r0s10)|2 |||2ms|
|[FluentValidation.Tests.CustomFailureActionTester](#r0s11)|3 |||1ms|
|[FluentValidation.Tests.CustomMessageFormatTester](#r0s12)|6 |||3ms|
|[FluentValidation.Tests.CustomValidatorTester](#r0s13)|10 |||6ms|
|[FluentValidation.Tests.DefaultValidatorExtensionTester](#r0s14)|30 |||38ms|
|[FluentValidation.Tests.EmailValidatorTests](#r0s15)|36 |||18ms|
|[FluentValidation.Tests.EmptyTester](#r0s16)|9 |||5ms|
|[FluentValidation.Tests.EnumValidatorTests](#r0s17)|12 |||24ms|
|[FluentValidation.Tests.EqualValidatorTests](#r0s18)|10 |||3ms|
|[FluentValidation.Tests.ExactLengthValidatorTester](#r0s19)|6 |||2ms|
|[FluentValidation.Tests.ExclusiveBetweenValidatorTests](#r0s20)|19 |||6ms|
|[FluentValidation.Tests.ExtensionTester](#r0s21)|4 |||1ms|
|[FluentValidation.Tests.ForEachRuleTests](#r0s22)|34 |||47ms|
|[FluentValidation.Tests.GreaterThanOrEqualToValidatorTester](#r0s23)|14 |||5ms|
|[FluentValidation.Tests.GreaterThanValidatorTester](#r0s24)|13 |||4ms|
|[FluentValidation.Tests.InclusiveBetweenValidatorTests](#r0s25)|18 |||4ms|
|[FluentValidation.Tests.InheritanceValidatorTest](#r0s26)|11 |||18ms|
|[FluentValidation.Tests.InlineValidatorTester](#r0s27)|1 |||2ms|
|[FluentValidation.Tests.LanguageManagerTests](#r0s28)|21 |||28ms|
|[FluentValidation.Tests.LengthValidatorTests](#r0s29)|16 |||17ms|
|[FluentValidation.Tests.LessThanOrEqualToValidatorTester](#r0s30)|13 |||4ms|
|[FluentValidation.Tests.LessThanValidatorTester](#r0s31)|16 |||6ms|
|[FluentValidation.Tests.LocalisedMessagesTester](#r0s32)|6 |||3ms|
|[FluentValidation.Tests.LocalisedNameTester](#r0s33)|2 |||1ms|
|[FluentValidation.Tests.MemberAccessorTests](#r0s34)|9 |||5ms|
|[FluentValidation.Tests.MessageFormatterTests](#r0s35)|10 |||2ms|
|[FluentValidation.Tests.ModelLevelValidatorTests](#r0s36)|2 |||1ms|
|[FluentValidation.Tests.NameResolutionPluggabilityTester](#r0s37)|3 |||2ms|
|[FluentValidation.Tests.NotEmptyTester](#r0s38)|10 |||7ms|
|[FluentValidation.Tests.NotEqualValidatorTests](#r0s39)|11 |||7ms|
|[FluentValidation.Tests.NotNullTester](#r0s40)|5 |||1ms|
|[FluentValidation.Tests.NullTester](#r0s41)|5 |||2ms|
|[FluentValidation.Tests.OnFailureTests](#r0s42)|10 |||8ms|
|[FluentValidation.Tests.PredicateValidatorTester](#r0s43)|5 |||2ms|
|[FluentValidation.Tests.PropertyChainTests](#r0s44)|7 |||1ms|
|[FluentValidation.Tests.RegularExpressionValidatorTests](#r0s45)|15 |||6ms|
|[FluentValidation.Tests.RuleBuilderTests](#r0s46)|29 |||96ms|
|[FluentValidation.Tests.RuleDependencyTests](#r0s47)|14 |||3s|
|[FluentValidation.Tests.RulesetTests](#r0s48)|21 |||14ms|
|[FluentValidation.Tests.ScalePrecisionValidatorTests](#r0s49)|6 |||4ms|
|[FluentValidation.Tests.SharedConditionTests](#r0s50)|42 |||42ms|
|[FluentValidation.Tests.StandalonePropertyValidationTester](#r0s51)|1 |||0ms|
|[FluentValidation.Tests.StringEnumValidatorTests](#r0s52)|10 |||5ms|
|[FluentValidation.Tests.TrackingCollectionTests](#r0s53)|3 |||2ms|
|[FluentValidation.Tests.TransformTests](#r0s54)|4 |||3ms|
|[FluentValidation.Tests.UserSeverityTester](#r0s55)|7 |||3ms|
|[FluentValidation.Tests.UserStateTester](#r0s56)|4 |||3ms|
|[FluentValidation.Tests.ValidateAndThrowTester](#r0s57)|14 |||25ms|
|[FluentValidation.Tests.ValidationResultTests](#r0s58)|8 |||8ms|
|[FluentValidation.Tests.ValidatorDescriptorTester](#r0s59)|5 |||1ms|
|[FluentValidation.Tests.ValidatorSelectorTests](#r0s60)|10 |||9ms|
|[FluentValidation.Tests.ValidatorTesterTester](#r0s61)|73 |||74ms|
### ✅ <a id="user-content-r0s0" href="#r0s0">FluentValidation.Tests.AbstractValidatorTester</a>
```
✅ Can_replace_default_errorcode_resolver
@@ -1054,4 +1059,5 @@
✅ Unexpected_message_check(withoutErrMsg: "bar", errMessages: [])
✅ Unexpected_severity_check
✅ Unexpected_state_check
```
```
</details>
17 changes: 17 additions & 0 deletions __tests__/__outputs__/jest-junit-eslint.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
![Tests passed successfully](https://img.shields.io/badge/tests-1%20passed-success)
<details><summary>Expand for details</summary>

|Report|Passed|Failed|Skipped|Time|
|:---|---:|---:|---:|---:|
|fixtures/jest-junit-eslint.xml|1 ✅|||0ms|
## ✅ <a id="user-content-r0" href="#r0">fixtures/jest-junit-eslint.xml</a>
**1** tests were completed in **0ms** with **1** passed, **0** failed and **0** skipped.
|Test suite|Passed|Failed|Skipped|Time|
|:---|---:|---:|---:|---:|
|[test.jsx](#r0s0)|1 ✅|||0ms|
### ✅ <a id="user-content-r0s0" href="#r0s0">test.jsx</a>
```
test
✅ test.jsx
```
</details>
Loading