diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md
new file mode 100644
index 0000000..37ed630
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/bug_report.md
@@ -0,0 +1,26 @@
+---
+name: Bug report
+about: Create a report to help us improve
+title: ''
+labels: 'bug'
+assignees: 'dorny,dharmendrasha,j-catania'
+---
+
+## Describe the bug
+A clear and concise description of what the bug is.
+
+## To Reproduce
+Steps to reproduce the behavior:
+1. Go to '...'
+2. Click on '....'
+3. Scroll down to '....'
+4. See error
+
+## Expected behavior
+A clear and concise description of what you expected to happen.
+
+## Screenshots
+If applicable, add screenshots to help explain your problem.
+
+## Additional context
+Add any other context about the problem here.
diff --git a/.github/ISSUE_TEMPLATE/feature.md b/.github/ISSUE_TEMPLATE/feature.md
new file mode 100644
index 0000000..d8b8558
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/feature.md
@@ -0,0 +1,13 @@
+---
+name: Feature Request
+about: Suggest a feature
+title: ''
+labels: 'enhancement'
+assignees: 'dorny,dharmendrasha,j-catania'
+---
+
+## Describe
+
+## Proposed solution
+
+## Alternatives considered
diff --git a/.github/workflows/check-dist.yml b/.github/workflows/check-dist.yml
index 22b61c2..5f4b9d2 100644
--- a/.github/workflows/check-dist.yml
+++ b/.github/workflows/check-dist.yml
@@ -23,10 +23,10 @@ jobs:
steps:
- uses: actions/checkout@v4
- - name: Set Node.js 16.x
- uses: actions/setup-node@v3
+ - name: Set Node.js
+ uses: actions/setup-node@v4
with:
- node-version: 16.x
+ node-version-file: '.nvmrc'
- name: Install dependencies
run: npm ci
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 12b8778..545b4e3 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -14,7 +14,9 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- - run: node --version
+ - uses: actions/setup-node@v4
+ with:
+ node-version-file: '.nvmrc'
- run: npm ci
- run: npm run build
- run: npm run format-check
diff --git a/.nvmrc b/.nvmrc
index 79bdb1b..eb800ed 100644
--- a/.nvmrc
+++ b/.nvmrc
@@ -1 +1 @@
-v18.7.0
+v18.19.0
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 8adafbd..bd75192 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,12 @@
# Changelog
+## 1.8.0
+* Add `SwiftXunitParser` class based on `JavaJunitParser` for `swift-xunit` reporter https://github.com/dorny/test-reporter/pull/317
+* Use NodeJS 18 LTS as default runtime https://github.com/dorny/test-reporter/pull/332
+* Escape `<>` characters in suite name https://github.com/dorny/test-reporter/pull/236
+* Update actions runtime to Node20 https://github.com/dorny/test-reporter/pull/315
+* Update check title and remove icon https://github.com/dorny/test-reporter/pull/144
+
## 1.7.0
* Fix #199: Use ✅ instead of ✔️ for better cross platform look by @petrdvorak in https://github.com/dorny/test-reporter/pull/200
* Verify content of dist/ folder matches build output by @dorny in https://github.com/dorny/test-reporter/pull/207
diff --git a/README.md b/README.md
index 0ae7b76..f4be6e0 100644
--- a/README.md
+++ b/README.md
@@ -18,6 +18,7 @@ This [Github Action](https://github.com/features/actions) displays test results
- Flutter / [test](https://pub.dev/packages/test)
- Java / [JUnit](https://junit.org/)
- JavaScript / [JEST](https://jestjs.io/) / [Mocha](https://mochajs.org/)
+- Swift / xUnit
For more information see [Supported formats](#supported-formats) section.
@@ -317,6 +318,12 @@ Mocha, unfortunately, doesn't have the option to store `json` output directly to
There is a work in progress to fix it: [mocha#4607](https://github.com/mochajs/mocha/pull/4607)
+
+ swift-xunit (Experimental)
+
+Support for Swift test results in xUnit format is experimental - should work but it was not extensively tested.
+
+
## GitHub limitations
Unfortunately, there are some known issues and limitations caused by GitHub API:
diff --git a/__tests__/__outputs__/jest-react-component-test-results.md b/__tests__/__outputs__/jest-react-component-test-results.md
new file mode 100644
index 0000000..7891a19
--- /dev/null
+++ b/__tests__/__outputs__/jest-react-component-test-results.md
@@ -0,0 +1,10 @@
+
+## ✅ fixtures/external/jest/jest-react-component-test-results.xml
+**1** tests were completed in **1000ms** with **1** passed, **0** failed and **0** skipped.
+|Test suite|Passed|Failed|Skipped|Time|
+|:---|---:|---:|---:|---:|
+|[\](#r0s0)|1✅|||798ms|
+### ✅ \
+```
+✅ should render properly
+```
\ No newline at end of file
diff --git a/__tests__/__outputs__/swift-xunit.md b/__tests__/__outputs__/swift-xunit.md
new file mode 100644
index 0000000..ecafaf9
--- /dev/null
+++ b/__tests__/__outputs__/swift-xunit.md
@@ -0,0 +1,13 @@
+
+## ❌ fixtures/swift-xunit.xml
+**3** tests were completed in **220ms** with **2** passed, **1** failed and **0** skipped.
+|Test suite|Passed|Failed|Skipped|Time|
+|:---|---:|---:|---:|---:|
+|[TestResults](#r0s0)|2✅|1❌||220ms|
+### ❌ TestResults
+```
+AcmeLibTests.AcmeLibTests
+ ✅ test_always_pass
+ ✅ test_always_skip
+ ❌ test_always_fail
+```
\ No newline at end of file
diff --git a/__tests__/__snapshots__/dart-json.test.ts.snap b/__tests__/__snapshots__/dart-json.test.ts.snap
index 847db6a..a499822 100644
--- a/__tests__/__snapshots__/dart-json.test.ts.snap
+++ b/__tests__/__snapshots__/dart-json.test.ts.snap
@@ -3,12 +3,12 @@
exports[`dart-json tests matches report snapshot 1`] = `
TestRunResult {
"path": "fixtures/dart-json.json",
- "suites": Array [
+ "suites": [
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Test 1",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Passing test",
@@ -19,11 +19,11 @@ TestRunResult {
},
TestGroupResult {
"name": "Test 1 Test 1.1",
- "tests": Array [
+ "tests": [
TestCaseResult {
- "error": Object {
+ "error": {
"details": "package:test_api expect
-test\\\\main_test.dart 13:9 main...
+test\\main_test.dart 13:9 main...
",
"line": 13,
"message": "Expected: <2>
@@ -36,9 +36,9 @@ test\\\\main_test.dart 13:9 main...
"time": 20,
},
TestCaseResult {
- "error": Object {
+ "error": {
"details": "package:darttest/main.dart 2:3 throwError
-test\\\\main_test.dart 17:9 main...
+test\\main_test.dart 17:9 main...
",
"line": 17,
"message": "Exception: Some error",
@@ -52,10 +52,10 @@ test\\\\main_test.dart 17:9 main...
},
TestGroupResult {
"name": "Test 2",
- "tests": Array [
+ "tests": [
TestCaseResult {
- "error": Object {
- "details": "test\\\\main_test.dart 24:7 main..
+ "error": {
+ "details": "test\\main_test.dart 24:7 main..
",
"line": 24,
"message": "Exception: Some error",
@@ -72,12 +72,12 @@ test\\\\main_test.dart 17:9 main...
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
- "error": Object {
+ "error": {
"details": "dart:isolate _RawReceivePortImpl._handleMessage
",
"line": 5,
@@ -108,12 +108,12 @@ test\\\\main_test.dart 17:9 main...
exports[`dart-json tests report from rrousselGit/provider test results matches snapshot 1`] = `
TestRunResult {
"path": "fixtures/external/flutter/provider-test-results.json",
- "suites": Array [
+ "suites": [
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "valueListenableProvider",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "rebuilds when value change",
@@ -139,7 +139,7 @@ TestRunResult {
"time": 22,
},
TestCaseResult {
- "error": Object {
+ "error": {
"details": "══╡ EXCEPTION CAUGHT BY FLUTTER TEST FRAMEWORK ╞════════════════════════════════════════════════════
The following TestFailure object was thrown running a test:
Expected: <2>
@@ -178,10 +178,10 @@ Unexpected number of calls
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "ListenableProvider",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "works with MultiProvider",
@@ -252,7 +252,7 @@ Unexpected number of calls
},
TestGroupResult {
"name": "ListenableProvider value constructor",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "pass down key",
@@ -269,7 +269,7 @@ Unexpected number of calls
},
TestGroupResult {
"name": "ListenableProvider stateful constructor",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "called with context",
@@ -295,10 +295,10 @@ Unexpected number of calls
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "consumer",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "obtains value from Provider",
@@ -321,7 +321,7 @@ Unexpected number of calls
},
TestGroupResult {
"name": "consumer2",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "obtains value from Provider",
@@ -344,7 +344,7 @@ Unexpected number of calls
},
TestGroupResult {
"name": "consumer3",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "obtains value from Provider",
@@ -367,7 +367,7 @@ Unexpected number of calls
},
TestGroupResult {
"name": "consumer4",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "obtains value from Provider",
@@ -390,7 +390,7 @@ Unexpected number of calls
},
TestGroupResult {
"name": "consumer5",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "obtains value from Provider",
@@ -413,7 +413,7 @@ Unexpected number of calls
},
TestGroupResult {
"name": "consumer6",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "obtains value from Provider",
@@ -439,10 +439,10 @@ Unexpected number of calls
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Use builder property, not child",
@@ -453,7 +453,7 @@ Unexpected number of calls
},
TestGroupResult {
"name": "ChangeNotifierProvider",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "value",
@@ -515,10 +515,10 @@ Unexpected number of calls
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "ChangeNotifierProvider",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "default",
@@ -535,7 +535,7 @@ Unexpected number of calls
},
TestGroupResult {
"name": "ListenableProvider",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "default",
@@ -552,7 +552,7 @@ Unexpected number of calls
},
TestGroupResult {
"name": "Provider",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "default",
@@ -569,7 +569,7 @@ Unexpected number of calls
},
TestGroupResult {
"name": "ProxyProvider",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "0",
@@ -616,7 +616,7 @@ Unexpected number of calls
},
TestGroupResult {
"name": "MultiProvider",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "with 1 ChangeNotifierProvider default",
@@ -690,10 +690,10 @@ Unexpected number of calls
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "MultiProvider",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "throw if providers is null",
@@ -719,10 +719,10 @@ Unexpected number of calls
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "works with MultiProvider",
@@ -763,7 +763,7 @@ Unexpected number of calls
},
TestGroupResult {
"name": "StreamProvider()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "create and dispose stream with builder",
@@ -783,10 +783,10 @@ Unexpected number of calls
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "watch in layoutbuilder",
@@ -827,7 +827,7 @@ Unexpected number of calls
},
TestGroupResult {
"name": "BuildContext",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "internal selected value is updated",
@@ -985,10 +985,10 @@ Unexpected number of calls
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "ReassembleHandler",
@@ -1014,10 +1014,10 @@ Unexpected number of calls
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "works with MultiProvider",
@@ -1076,7 +1076,7 @@ Unexpected number of calls
},
TestGroupResult {
"name": "FutureProvider()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "crashes if builder is null",
@@ -1090,10 +1090,10 @@ Unexpected number of calls
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "works with MultiProvider",
@@ -1104,7 +1104,7 @@ Unexpected number of calls
},
TestGroupResult {
"name": "Provider.of",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "throws if T is dynamic",
@@ -1139,7 +1139,7 @@ Unexpected number of calls
},
TestGroupResult {
"name": "Provider",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "throws if the provided value is a Listenable/Stream",
@@ -1177,10 +1177,10 @@ Unexpected number of calls
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "regression test #377",
@@ -1371,7 +1371,7 @@ Unexpected number of calls
},
TestGroupResult {
"name": "diagnostics",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "InheritedProvider.value",
@@ -1406,7 +1406,7 @@ Unexpected number of calls
},
TestGroupResult {
"name": "InheritedProvider.value()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "markNeedsNotifyDependents during startListening is noop",
@@ -1459,7 +1459,7 @@ Unexpected number of calls
},
TestGroupResult {
"name": "InheritedProvider()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "hasValue",
@@ -1614,7 +1614,7 @@ Unexpected number of calls
},
TestGroupResult {
"name": "DeferredInheritedProvider.value()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "hasValue",
@@ -1667,7 +1667,7 @@ Unexpected number of calls
},
TestGroupResult {
"name": "DeferredInheritedProvider()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "create can't call inherited widgets",
@@ -1699,10 +1699,10 @@ Unexpected number of calls
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "ListenableProxyProvider",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "throws if update is missing",
@@ -1743,7 +1743,7 @@ Unexpected number of calls
},
TestGroupResult {
"name": "ListenableProxyProvider variants",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "ListenableProxyProvider",
@@ -1787,10 +1787,10 @@ Unexpected number of calls
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "asserts that builder/selector are not null",
@@ -1900,10 +1900,10 @@ Unexpected number of calls
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "asserts",
@@ -1935,10 +1935,10 @@ Unexpected number of calls
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "ProxyProvider",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "throws if the provided value is a Listenable/Stream",
@@ -2009,7 +2009,7 @@ Unexpected number of calls
},
TestGroupResult {
"name": "ProxyProvider variants",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "ProxyProvider2",
diff --git a/__tests__/__snapshots__/dotnet-trx.test.ts.snap b/__tests__/__snapshots__/dotnet-trx.test.ts.snap
index 0301a56..1ca07eb 100644
--- a/__tests__/__snapshots__/dotnet-trx.test.ts.snap
+++ b/__tests__/__snapshots__/dotnet-trx.test.ts.snap
@@ -3,12 +3,12 @@
exports[`dotnet-trx tests matches report snapshot 1`] = `
TestRunResult {
"path": "fixtures/dotnet-trx.trx",
- "suites": Array [
+ "suites": [
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Custom Name",
@@ -16,10 +16,10 @@ TestRunResult {
"time": 0.1371,
},
TestCaseResult {
- "error": Object {
+ "error": {
"details": "System.DivideByZeroException : Attempted to divide by zero.
- 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",
+ 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",
"line": 9,
"message": "System.DivideByZeroException : Attempted to divide by zero.",
"path": "DotnetTests.Unit/Calculator.cs",
@@ -29,9 +29,9 @@ TestRunResult {
"time": 0.8377,
},
TestCaseResult {
- "error": Object {
+ "error": {
"details": "System.Exception : Test
- at DotnetTests.XUnitTests.CalculatorTests.Exception_In_Test() in C:\\\\Users\\\\Michal\\\\Workspace\\\\dorny\\\\test-reporter\\\\reports\\\\dotnet\\\\DotnetTests.XUnitTests\\\\CalculatorTests.cs:line 39",
+ at DotnetTests.XUnitTests.CalculatorTests.Exception_In_Test() in C:\\Users\\Michal\\Workspace\\dorny\\test-reporter\\reports\\dotnet\\DotnetTests.XUnitTests\\CalculatorTests.cs:line 39",
"line": 39,
"message": "System.Exception : Test",
"path": "DotnetTests.XUnitTests/CalculatorTests.cs",
@@ -41,11 +41,11 @@ TestRunResult {
"time": 2.5175,
},
TestCaseResult {
- "error": Object {
+ "error": {
"details": "Assert.Equal() Failure
Expected: 3
Actual: 2
- at DotnetTests.XUnitTests.CalculatorTests.Failing_Test() in C:\\\\Users\\\\Michal\\\\Workspace\\\\dorny\\\\test-reporter\\\\reports\\\\dotnet\\\\DotnetTests.XUnitTests\\\\CalculatorTests.cs:line 27",
+ at DotnetTests.XUnitTests.CalculatorTests.Failing_Test() in C:\\Users\\Michal\\Workspace\\dorny\\test-reporter\\reports\\dotnet\\DotnetTests.XUnitTests\\CalculatorTests.cs:line 27",
"line": 27,
"message": "Assert.Equal() Failure
Expected: 3
@@ -63,11 +63,11 @@ Actual: 2",
"time": 0.0078,
},
TestCaseResult {
- "error": Object {
+ "error": {
"details": "Assert.True() Failure
Expected: True
Actual: False
- 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",
+ 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",
"line": 59,
"message": "Assert.True() Failure
Expected: True
@@ -91,11 +91,11 @@ Actual: False",
"time": 0.0097,
},
TestCaseResult {
- "error": Object {
+ "error": {
"details": "Assert.True() Failure
Expected: True
Actual: False
- 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",
+ 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",
"line": 67,
"message": "Assert.True() Failure
Expected: True
@@ -132,12 +132,12 @@ Actual: False",
exports[`dotnet-trx tests report from FluentValidation test results matches snapshot 1`] = `
TestRunResult {
"path": "fixtures/external/FluentValidation.Tests.trx",
- "suites": Array [
+ "suites": [
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Can_replace_default_errorcode_resolver",
@@ -355,10 +355,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Benchmark",
@@ -396,10 +396,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Finds_validators_for_types",
@@ -419,10 +419,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Cascade_mode_can_be_set_after_validator_instantiated",
@@ -658,10 +658,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Can_validate_using_validator_for_base_type",
@@ -747,10 +747,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Options_should_only_apply_to_current_validator",
@@ -776,10 +776,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Can_define_nested_rules_for_collection",
@@ -799,10 +799,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Async_condition_should_work_with_child_collection",
@@ -906,10 +906,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Async_condition_should_work_with_complex_property",
@@ -1019,10 +1019,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Async_condition_executed_synchronosuly_with_asynchronous_collection_rule",
@@ -1138,10 +1138,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "IsValidTests",
@@ -1161,10 +1161,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Does_not_invoke_action_if_validation_success",
@@ -1190,10 +1190,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Replaces_propertyvalue_placeholder",
@@ -1237,10 +1237,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "New_Custom_Returns_single_failure",
@@ -1308,10 +1308,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Empty_should_create_EmptyValidator",
@@ -1499,139 +1499,139 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "Fails_email_validation_aspnetcore_compatible(email: \\" \\\\r \\\\t \\\\n\\")",
+ "name": "Fails_email_validation_aspnetcore_compatible(email: " \\r \\t \\n")",
"result": "success",
"time": 0.0247,
},
TestCaseResult {
"error": undefined,
- "name": "Fails_email_validation_aspnetcore_compatible(email: \\"\\")",
+ "name": "Fails_email_validation_aspnetcore_compatible(email: "")",
"result": "success",
"time": 0.0314,
},
TestCaseResult {
"error": undefined,
- "name": "Fails_email_validation_aspnetcore_compatible(email: \\"@someDomain.com\\")",
+ "name": "Fails_email_validation_aspnetcore_compatible(email: "@someDomain.com")",
"result": "success",
"time": 0.0248,
},
TestCaseResult {
"error": undefined,
- "name": "Fails_email_validation_aspnetcore_compatible(email: \\"@someDomain@abc.com\\")",
+ "name": "Fails_email_validation_aspnetcore_compatible(email: "@someDomain@abc.com")",
"result": "success",
"time": 0.0234,
},
TestCaseResult {
"error": undefined,
- "name": "Fails_email_validation_aspnetcore_compatible(email: \\"0\\")",
+ "name": "Fails_email_validation_aspnetcore_compatible(email: "0")",
"result": "success",
"time": 0.2222,
},
TestCaseResult {
"error": undefined,
- "name": "Fails_email_validation_aspnetcore_compatible(email: \\"someName\\")",
+ "name": "Fails_email_validation_aspnetcore_compatible(email: "someName")",
"result": "success",
"time": 0.023,
},
TestCaseResult {
"error": undefined,
- "name": "Fails_email_validation_aspnetcore_compatible(email: \\"someName@\\")",
+ "name": "Fails_email_validation_aspnetcore_compatible(email: "someName@")",
"result": "success",
"time": 0.022699999999999998,
},
TestCaseResult {
"error": undefined,
- "name": "Fails_email_validation_aspnetcore_compatible(email: \\"someName@a@b.com\\")",
+ "name": "Fails_email_validation_aspnetcore_compatible(email: "someName@a@b.com")",
"result": "success",
"time": 0.022699999999999998,
},
TestCaseResult {
"error": undefined,
- "name": "Invalid_email_addressex_regex(email: \\"\\")",
+ "name": "Invalid_email_addressex_regex(email: "")",
"result": "success",
"time": 0.3859,
},
TestCaseResult {
"error": undefined,
- "name": "Invalid_email_addressex_regex(email: \\"first.last@test..co.uk\\")",
+ "name": "Invalid_email_addressex_regex(email: "first.last@test..co.uk")",
"result": "success",
"time": 0.0334,
},
TestCaseResult {
"error": undefined,
- "name": "Invalid_email_addressex_regex(email: \\"testperso\\")",
+ "name": "Invalid_email_addressex_regex(email: "testperso")",
"result": "success",
"time": 0.0395,
},
TestCaseResult {
"error": undefined,
- "name": "Invalid_email_addressex_regex(email: \\"thisisaverylongstringcodeplex.com\\")",
+ "name": "Invalid_email_addressex_regex(email: "thisisaverylongstringcodeplex.com")",
"result": "success",
"time": 0.0316,
},
TestCaseResult {
"error": undefined,
- "name": "Valid_email_addresses_aspnetcore_compatible(email: \\" @someDomain.com\\")",
+ "name": "Valid_email_addresses_aspnetcore_compatible(email: " @someDomain.com")",
"result": "success",
"time": 0.0173,
},
TestCaseResult {
"error": undefined,
- "name": "Valid_email_addresses_aspnetcore_compatible(email: \\"!#$%&'*+-/=?^_\`|~@someDomain.com\\")",
+ "name": "Valid_email_addresses_aspnetcore_compatible(email: "!#$%&'*+-/=?^_\`|~@someDomain.com")",
"result": "success",
"time": 0.0174,
},
TestCaseResult {
"error": undefined,
- "name": "Valid_email_addresses_aspnetcore_compatible(email: \\"\\\\\\"firstName.lastName\\\\\\"@someDomain.com\\")",
+ "name": "Valid_email_addresses_aspnetcore_compatible(email: "\\"firstName.lastName\\"@someDomain.com")",
"result": "success",
"time": 0.0167,
},
TestCaseResult {
"error": undefined,
- "name": "Valid_email_addresses_aspnetcore_compatible(email: \\"1234@someDomain.com\\")",
+ "name": "Valid_email_addresses_aspnetcore_compatible(email: "1234@someDomain.com")",
"result": "success",
"time": 0.0307,
},
TestCaseResult {
"error": undefined,
- "name": "Valid_email_addresses_aspnetcore_compatible(email: \\"firstName.lastName@someDomain.com\\")",
+ "name": "Valid_email_addresses_aspnetcore_compatible(email: "firstName.lastName@someDomain.com")",
"result": "success",
"time": 0.0191,
},
TestCaseResult {
"error": undefined,
- "name": "Valid_email_addresses_aspnetcore_compatible(email: \\"someName@1234.com\\")",
+ "name": "Valid_email_addresses_aspnetcore_compatible(email: "someName@1234.com")",
"result": "success",
"time": 0.0158,
},
TestCaseResult {
"error": undefined,
- "name": "Valid_email_addresses_aspnetcore_compatible(email: \\"someName@some_domain.com\\")",
+ "name": "Valid_email_addresses_aspnetcore_compatible(email: "someName@some_domain.com")",
"result": "success",
"time": 0.0162,
},
TestCaseResult {
"error": undefined,
- "name": "Valid_email_addresses_aspnetcore_compatible(email: \\"someName@some~domain.com\\")",
+ "name": "Valid_email_addresses_aspnetcore_compatible(email: "someName@some~domain.com")",
"result": "success",
"time": 0.0166,
},
TestCaseResult {
"error": undefined,
- "name": "Valid_email_addresses_aspnetcore_compatible(email: \\"someName@someDomain.com\\")",
+ "name": "Valid_email_addresses_aspnetcore_compatible(email: "someName@someDomain.com")",
"result": "success",
"time": 0.0167,
},
TestCaseResult {
"error": undefined,
- "name": "Valid_email_addresses_aspnetcore_compatible(email: \\"someName@someDomain.com\\")",
+ "name": "Valid_email_addresses_aspnetcore_compatible(email: "someName@someDomain.com")",
"result": "success",
"time": 0.0157,
},
@@ -1643,73 +1643,73 @@ TestRunResult {
},
TestCaseResult {
"error": undefined,
- "name": "Valid_email_addresses_regex(email: \\"__somename@example.com\\")",
+ "name": "Valid_email_addresses_regex(email: "__somename@example.com")",
"result": "success",
"time": 0.0219,
},
TestCaseResult {
"error": undefined,
- "name": "Valid_email_addresses_regex(email: \\"!def!xyz%abc@example.com\\")",
+ "name": "Valid_email_addresses_regex(email: "!def!xyz%abc@example.com")",
"result": "success",
"time": 0.022,
},
TestCaseResult {
"error": undefined,
- "name": "Valid_email_addresses_regex(email: \\"\\\\\\"Abc@def\\\\\\"@example.com\\")",
+ "name": "Valid_email_addresses_regex(email: "\\"Abc@def\\"@example.com")",
"result": "success",
"time": 0.0245,
},
TestCaseResult {
"error": undefined,
- "name": "Valid_email_addresses_regex(email: \\"\\\\\\"Abc\\\\\\\\@def\\\\\\"@example.com\\")",
+ "name": "Valid_email_addresses_regex(email: "\\"Abc\\\\@def\\"@example.com")",
"result": "success",
"time": 0.026,
},
TestCaseResult {
"error": undefined,
- "name": "Valid_email_addresses_regex(email: \\"\\\\\\"Fred Bloggs\\\\\\"@example.com\\")",
+ "name": "Valid_email_addresses_regex(email: "\\"Fred Bloggs\\"@example.com")",
"result": "success",
"time": 0.0258,
},
TestCaseResult {
"error": undefined,
- "name": "Valid_email_addresses_regex(email: \\"\\\\\\"Joe\\\\\\\\Blow\\\\\\"@example.com\\")",
+ "name": "Valid_email_addresses_regex(email: "\\"Joe\\\\Blow\\"@example.com")",
"result": "success",
"time": 0.0244,
},
TestCaseResult {
"error": undefined,
- "name": "Valid_email_addresses_regex(email: \\"$A12345@example.com\\")",
+ "name": "Valid_email_addresses_regex(email: "$A12345@example.com")",
"result": "success",
"time": 0.022600000000000002,
},
TestCaseResult {
"error": undefined,
- "name": "Valid_email_addresses_regex(email: \\"customer/department=shipping@example.com\\")",
+ "name": "Valid_email_addresses_regex(email: "customer/department=shipping@example.com")",
"result": "success",
"time": 0.0234,
},
TestCaseResult {
"error": undefined,
- "name": "Valid_email_addresses_regex(email: \\"first.last@test.co.uk\\")",
+ "name": "Valid_email_addresses_regex(email: "first.last@test.co.uk")",
"result": "success",
"time": 0.022600000000000002,
},
TestCaseResult {
"error": undefined,
- "name": "Valid_email_addresses_regex(email: \\"testperson@gmail.com\\")",
+ "name": "Valid_email_addresses_regex(email: "testperson@gmail.com")",
"result": "success",
"time": 16.3384,
},
TestCaseResult {
"error": undefined,
- "name": "Valid_email_addresses_regex(email: \\"TestPerson@gmail.com\\")",
+ "name": "Valid_email_addresses_regex(email: "TestPerson@gmail.com")",
"result": "success",
"time": 0.0805,
},
TestCaseResult {
"error": undefined,
- "name": "Valid_email_addresses_regex(email: \\"testperson+label@gmail.com\\")",
+ "name": "Valid_email_addresses_regex(email: "testperson+label@gmail.com")",
"result": "success",
"time": 0.0275,
},
@@ -1726,10 +1726,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Passes_for_ienumerable_that_doesnt_implement_ICollection",
@@ -1791,10 +1791,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Flags_enum_invalid_when_using_outofrange_negative_value",
@@ -1874,10 +1874,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Comparison_property_uses_custom_resolver",
@@ -1945,10 +1945,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Min_and_max_properties_should_be_set",
@@ -1992,10 +1992,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "To_and_from_properties_should_be_set",
@@ -2117,10 +2117,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Should_extract_member_from_member_expression",
@@ -2152,10 +2152,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Async_condition_should_work_with_child_collection",
@@ -2367,10 +2367,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Comparison_property_uses_custom_resolver",
@@ -2462,10 +2462,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Comparison_property_uses_custom_resolver",
@@ -2551,10 +2551,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "To_and_from_properties_should_be_set",
@@ -2670,10 +2670,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Can_use_custom_subclass_with_nongeneric_overload",
@@ -2747,10 +2747,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Uses_inline_validator_to_build_rules",
@@ -2764,10 +2764,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "All_languages_should_be_loaded",
@@ -2836,19 +2836,19 @@ TestRunResult {
},
TestCaseResult {
"error": undefined,
- "name": "Gets_translation_for_bosnian_latin_culture(cultureName: \\"bs-Latn-BA\\")",
+ "name": "Gets_translation_for_bosnian_latin_culture(cultureName: "bs-Latn-BA")",
"result": "success",
"time": 0.011,
},
TestCaseResult {
"error": undefined,
- "name": "Gets_translation_for_bosnian_latin_culture(cultureName: \\"bs-Latn\\")",
+ "name": "Gets_translation_for_bosnian_latin_culture(cultureName: "bs-Latn")",
"result": "success",
"time": 0.0627,
},
TestCaseResult {
"error": undefined,
- "name": "Gets_translation_for_bosnian_latin_culture(cultureName: \\"bs\\")",
+ "name": "Gets_translation_for_bosnian_latin_culture(cultureName: "bs")",
"result": "success",
"time": 0.661,
},
@@ -2866,19 +2866,19 @@ TestRunResult {
},
TestCaseResult {
"error": undefined,
- "name": "Gets_translation_for_serbian_culture(cultureName: \\"sr-Latn-RS\\")",
+ "name": "Gets_translation_for_serbian_culture(cultureName: "sr-Latn-RS")",
"result": "success",
"time": 0.01,
},
TestCaseResult {
"error": undefined,
- "name": "Gets_translation_for_serbian_culture(cultureName: \\"sr-Latn\\")",
+ "name": "Gets_translation_for_serbian_culture(cultureName: "sr-Latn")",
"result": "success",
"time": 0.0484,
},
TestCaseResult {
"error": undefined,
- "name": "Gets_translation_for_serbian_culture(cultureName: \\"sr\\")",
+ "name": "Gets_translation_for_serbian_culture(cultureName: "sr")",
"result": "success",
"time": 0.4456,
},
@@ -2901,10 +2901,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Min_and_max_properties_should_be_set",
@@ -3008,10 +3008,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Comparison_property_uses_custom_resolver",
@@ -3097,10 +3097,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Comparison_property_uses_custom_resolver",
@@ -3204,10 +3204,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Correctly_assigns_default_localized_error_message",
@@ -3251,10 +3251,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Uses_localized_name",
@@ -3274,10 +3274,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "ComplexPropertyGet",
@@ -3339,10 +3339,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Adds_argument_and_custom_arguments",
@@ -3410,10 +3410,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Can_use_child_validator_at_model_level",
@@ -3433,10 +3433,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Resolves_nested_properties",
@@ -3462,10 +3462,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Fails_for_array",
@@ -3533,10 +3533,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Comparison_property_uses_custom_resolver",
@@ -3610,10 +3610,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Fails_when_nullable_value_type_is_null",
@@ -3651,10 +3651,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Not_null_validator_should_not_crash_with_non_nullable_value_type",
@@ -3692,10 +3692,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "OnFailure_called_for_each_failed_rule",
@@ -3763,10 +3763,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Should_fail_when_predicate_returns_false",
@@ -3804,10 +3804,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "AddIndexer_throws_when_nothing_added",
@@ -3857,10 +3857,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Can_access_expression_in_message",
@@ -3958,10 +3958,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Adding_a_validator_should_return_builder",
@@ -4143,10 +4143,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Async_inside_dependent_rules",
@@ -4238,10 +4238,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Applies_multiple_rulesets_to_rule",
@@ -4375,10 +4375,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Scale_precision_should_be_valid",
@@ -4422,10 +4422,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Async_condition_can_be_used_inside_ruleset",
@@ -4685,10 +4685,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Should_validate_property_value_without_instance",
@@ -4702,10 +4702,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "IsValidTests_CaseInsensitive_CaseCorrect",
@@ -4773,10 +4773,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Add_AddsItem",
@@ -4802,10 +4802,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Transforms_collection_element",
@@ -4837,10 +4837,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Can_Provide_conditional_severity",
@@ -4890,10 +4890,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Can_Provide_state_for_item_in_collection",
@@ -4925,10 +4925,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Does_not_throw_when_valid",
@@ -5020,10 +5020,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Can_serialize_failure",
@@ -5079,10 +5079,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Does_not_throw_when_rule_declared_without_property",
@@ -5120,10 +5120,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Can_use_property_with_include",
@@ -5191,10 +5191,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Allows_only_one_failure_to_match",
@@ -5353,7 +5353,7 @@ TestRunResult {
},
TestCaseResult {
"error": undefined,
- "name": "ShouldHaveValidationError_should_not_throw_when_there_are_validation_errors__WhenAsyn_is_used(age: 42, cardNumber: \\"\\")",
+ "name": "ShouldHaveValidationError_should_not_throw_when_there_are_validation_errors__WhenAsyn_is_used(age: 42, cardNumber: "")",
"result": "success",
"time": 0.6089,
},
@@ -5389,13 +5389,13 @@ TestRunResult {
},
TestCaseResult {
"error": undefined,
- "name": "ShouldHaveValidationError_should_throw_when_there_are_not_validation_errors__WhenAsyn_Is_Used(age: 17, cardNumber: \\"\\")",
+ "name": "ShouldHaveValidationError_should_throw_when_there_are_not_validation_errors__WhenAsyn_Is_Used(age: 17, cardNumber: "")",
"result": "success",
"time": 1.7937,
},
TestCaseResult {
"error": undefined,
- "name": "ShouldHaveValidationError_should_throw_when_there_are_not_validation_errors__WhenAsyn_Is_Used(age: 17, cardNumber: \\"cardNumber\\")",
+ "name": "ShouldHaveValidationError_should_throw_when_there_are_not_validation_errors__WhenAsyn_Is_Used(age: 17, cardNumber: "cardNumber")",
"result": "success",
"time": 0.6412,
},
@@ -5407,7 +5407,7 @@ TestRunResult {
},
TestCaseResult {
"error": undefined,
- "name": "ShouldHaveValidationError_should_throw_when_there_are_not_validation_errors__WhenAsyn_Is_Used(age: 42, cardNumber: \\"cardNumber\\")",
+ "name": "ShouldHaveValidationError_should_throw_when_there_are_not_validation_errors__WhenAsyn_Is_Used(age: 42, cardNumber: "cardNumber")",
"result": "success",
"time": 0.8127,
},
@@ -5521,13 +5521,13 @@ TestRunResult {
},
TestCaseResult {
"error": undefined,
- "name": "ShouldNotHaveValidationError_should_throw_when_there_are_not_validation_errors__WhenAsyn_is_used(age: 17, cardNumber: \\"\\")",
+ "name": "ShouldNotHaveValidationError_should_throw_when_there_are_not_validation_errors__WhenAsyn_is_used(age: 17, cardNumber: "")",
"result": "success",
"time": 0.5719,
},
TestCaseResult {
"error": undefined,
- "name": "ShouldNotHaveValidationError_should_throw_when_there_are_not_validation_errors__WhenAsyn_is_used(age: 17, cardNumber: \\"cardNumber\\")",
+ "name": "ShouldNotHaveValidationError_should_throw_when_there_are_not_validation_errors__WhenAsyn_is_used(age: 17, cardNumber: "cardNumber")",
"result": "success",
"time": 0.5838,
},
@@ -5539,13 +5539,13 @@ TestRunResult {
},
TestCaseResult {
"error": undefined,
- "name": "ShouldNotHaveValidationError_should_throw_when_there_are_not_validation_errors__WhenAsyn_is_used(age: 42, cardNumber: \\"cardNumber\\")",
+ "name": "ShouldNotHaveValidationError_should_throw_when_there_are_not_validation_errors__WhenAsyn_is_used(age: 42, cardNumber: "cardNumber")",
"result": "success",
"time": 0.897,
},
TestCaseResult {
"error": undefined,
- "name": "ShouldNotHaveValidationError_should_throw_when_there_are_validation_errors__WhenAsyn_is_used(age: 42, cardNumber: \\"\\")",
+ "name": "ShouldNotHaveValidationError_should_throw_when_there_are_validation_errors__WhenAsyn_is_used(age: 42, cardNumber: "")",
"result": "success",
"time": 0.6807,
},
@@ -5599,25 +5599,25 @@ TestRunResult {
},
TestCaseResult {
"error": undefined,
- "name": "Unexpected_message_check(withoutErrMsg: \\"bar\\", errMessages: [\\"bar\\"])",
+ "name": "Unexpected_message_check(withoutErrMsg: "bar", errMessages: ["bar"])",
"result": "success",
"time": 0.1548,
},
TestCaseResult {
"error": undefined,
- "name": "Unexpected_message_check(withoutErrMsg: \\"bar\\", errMessages: [\\"foo\\", \\"bar\\"])",
+ "name": "Unexpected_message_check(withoutErrMsg: "bar", errMessages: ["foo", "bar"])",
"result": "success",
"time": 0.1797,
},
TestCaseResult {
"error": undefined,
- "name": "Unexpected_message_check(withoutErrMsg: \\"bar\\", errMessages: [\\"foo\\"])",
+ "name": "Unexpected_message_check(withoutErrMsg: "bar", errMessages: ["foo"])",
"result": "success",
"time": 0.3297,
},
TestCaseResult {
"error": undefined,
- "name": "Unexpected_message_check(withoutErrMsg: \\"bar\\", errMessages: [])",
+ "name": "Unexpected_message_check(withoutErrMsg: "bar", errMessages: [])",
"result": "success",
"time": 0.7345999999999999,
},
@@ -5647,12 +5647,12 @@ TestRunResult {
exports[`dotnet-trx tests report from SilentNotes test results matches snapshot 1`] = `
TestRunResult {
"path": "fixtures/external/SilentNotes.trx",
- "suites": Array [
+ "suites": [
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "AreEqualWorksWithDifferentPassword",
@@ -5696,10 +5696,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "FileLifecycleWorks",
@@ -5737,10 +5737,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "FileLifecycleWorks",
@@ -5790,10 +5790,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "ChoosesCorrectUrlForGmxComEmail",
@@ -5813,10 +5813,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "FileLifecycleWorks",
@@ -5848,10 +5848,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "FileLifecycleWorks",
@@ -5883,10 +5883,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "FileLifecycleWorks",
@@ -5924,10 +5924,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "AreEqualWorksWithNullDate",
@@ -5989,10 +5989,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "ParsesAllErrorCodesCorrectly",
@@ -6018,10 +6018,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "BuildAuthorizationRequestUrlEscapesParameters",
@@ -6083,10 +6083,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "BuildOAuth2AuthorizationRequestUrlWorks",
@@ -6124,10 +6124,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "AreEqualsWorksCorrectly",
@@ -6177,10 +6177,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "DecryptAfterDesrializationCanReadAllPropertiesBack",
diff --git a/__tests__/__snapshots__/java-junit.test.ts.snap b/__tests__/__snapshots__/java-junit.test.ts.snap
index 73c5f80..041f380 100644
--- a/__tests__/__snapshots__/java-junit.test.ts.snap
+++ b/__tests__/__snapshots__/java-junit.test.ts.snap
@@ -3,12 +3,12 @@
exports[`java-junit tests report from apache/pulsar single suite test results matches snapshot 1`] = `
TestRunResult {
"path": "fixtures/external/java/TEST-org.apache.pulsar.AddMissingPatchVersionTest.xml",
- "suites": Array [
+ "suites": [
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testVersionStrings",
@@ -16,7 +16,7 @@ TestRunResult {
"time": 99,
},
TestCaseResult {
- "error": Object {
+ "error": {
"details": "
java.lang.AssertionError: expected [1.2.1] but found [1.2.0]
at org.testng.Assert.fail(Assert.java:99)
@@ -62,12 +62,12 @@ at java.lang.Thread.run(Thread.java:748)
exports[`java-junit tests report from apache/pulsar test results matches snapshot 1`] = `
TestRunResult {
"path": "fixtures/external/java/pulsar-test-report.xml",
- "suites": Array [
+ "suites": [
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testVersionStrings",
@@ -75,7 +75,7 @@ TestRunResult {
"time": 99,
},
TestCaseResult {
- "error": Object {
+ "error": {
"details": "
java.lang.AssertionError: expected [1.2.1] but found [1.2.0]
at org.testng.Assert.fail(Assert.java:99)
@@ -114,10 +114,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 116,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testMainRunBookieNoConfig",
@@ -179,10 +179,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 591.0000000000001,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testGetWorkerService",
@@ -202,10 +202,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 96,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testOwnedNamespaces",
@@ -237,10 +237,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 9184.999999999998,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testOffloadPoliciesAppliedApi",
@@ -290,10 +290,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 18584.000000000004,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "httpEndpoint",
@@ -313,10 +313,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 1389,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testAuthentication",
@@ -336,10 +336,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 185,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "simple",
@@ -353,10 +353,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 2384,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "crossColoLookup",
@@ -388,10 +388,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 1930,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testCreateNamespaceWithDefaultBundles",
@@ -411,10 +411,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 33168,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testGetAllPartitions",
@@ -434,10 +434,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 32357,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testSplitMapWithRefreshedStatMap",
@@ -505,10 +505,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 75271.99999999999,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testUnloadNotLoadedNamespace",
@@ -528,10 +528,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 13704,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testOwnershipForCurrentServer",
@@ -545,10 +545,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 15709,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testGetOwnedServiceUnits",
@@ -604,10 +604,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 15749.999999999998,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testLoadProtocolHandler",
@@ -633,10 +633,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 7398.000000000001,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testWrapper",
@@ -650,10 +650,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 15,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testStart",
@@ -697,10 +697,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 946.0000000000001,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testMessagePublishBufferThrottleEnable",
@@ -726,10 +726,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 13830,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testResumptionAfterBacklogRelaxed",
@@ -869,10 +869,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 40154,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testReleaseOwnershipWithZookeeperDisconnectedBeforeOwnershipNodeDeleted",
@@ -928,10 +928,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 114278,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testJvmDirectMemoryUsedMetric",
@@ -951,10 +951,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 49,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testAckStatsOnPartitionedTopicForExclusiveSubscription",
@@ -980,10 +980,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 21163.999999999996,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testManagedCursorMetrics",
@@ -997,10 +997,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 281,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testManagedLedgerMetrics",
@@ -1014,10 +1014,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 285,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testPerTopicStats",
@@ -1115,10 +1115,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 83145.00000000001,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testConsumersAfterMarkDelete",
@@ -1138,10 +1138,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 1806,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testSimpleAggregation",
@@ -1155,10 +1155,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 40,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testSendAndReceiveNamespaceEvents",
@@ -1172,10 +1172,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 1043,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "noSortedTest",
@@ -1195,10 +1195,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 29646,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testCloseReleaseAllEntries",
@@ -1224,10 +1224,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 28,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testAbortOnTopic",
@@ -1259,10 +1259,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 93,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testOpenReaderOnNonExistentTxn",
@@ -1312,10 +1312,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 80.99999999999999,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testCloseShouldReleaseBuffer",
@@ -1329,10 +1329,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 14,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testTransactionBufferLowWaterMark",
@@ -1352,10 +1352,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 37577,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "commitTxnTest",
@@ -1381,10 +1381,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 49067.00000000001,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testClientStart",
@@ -1410,10 +1410,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 95,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testTransactionMetaStoreAssignAndFailover",
@@ -1427,10 +1427,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 1151,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "txnAckTestNoBatchAndSharedSubMemoryDeleteTest",
@@ -1456,10 +1456,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 57293.00000000001,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testRestException",
@@ -1485,10 +1485,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 37.00000000000001,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testTlsAuthDisallowInsecure",
@@ -1550,10 +1550,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 27441.999999999996,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testAuthorizedUserAsOriginalPrincipal",
@@ -1585,10 +1585,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 8297,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testSerializationEmpty",
@@ -1620,10 +1620,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 30,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testBatchMessageIndexAckForExclusiveSubscription",
@@ -1655,10 +1655,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 13732,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testBatchMessageIndexAckForSharedSubscription",
@@ -1696,10 +1696,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 43856,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testDisconnectClientWithoutClosingConnection",
@@ -1797,10 +1797,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 148203,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testCompactedOutMessages",
@@ -1814,10 +1814,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 1385,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testAckResponse",
@@ -1831,10 +1831,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 549,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testReadCompactNonPersistentExclusive",
@@ -1866,10 +1866,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 12164,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testConsumerDedup",
@@ -1919,10 +1919,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 3522.0000000000005,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testConsumerUnsubscribeReference",
@@ -1936,10 +1936,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 129,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testTlsClientAuthOverHTTPProtocol",
@@ -1965,10 +1965,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 23461,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testTlsClientAuthOverHTTPProtocol",
@@ -1994,10 +1994,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 7675.000000000001,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testValidate",
@@ -2011,10 +2011,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 183,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testChecksumCompatibilityInMixedVersionBrokerCluster",
@@ -2040,10 +2040,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 46690,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testPublishWithFailure",
@@ -2105,10 +2105,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 73214,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testWithoutBatches",
@@ -2128,10 +2128,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 5484.999999999999,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testReadMessageWithBatchingWithMessageInclusive",
@@ -2187,10 +2187,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 35143,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testNegativeAcks",
@@ -2390,10 +2390,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 10661.999999999998,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testStartEmptyPatternConsumer",
@@ -2467,10 +2467,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 62620,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testSharedAckedNormalTopic",
@@ -2508,10 +2508,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 33504,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testMultiHostUrlRetrySuccess",
@@ -2537,10 +2537,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 15314,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testSerializationAndDeserialization",
@@ -2554,10 +2554,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 10,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "createTopicDeleteTopicCreateTopic",
@@ -2571,10 +2571,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 1937,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testCheckSequenceId",
@@ -2612,10 +2612,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 17976,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testCreateConsumerOnNotExistsTopic",
@@ -2635,10 +2635,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 4053,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testSingleTopicConsumerNoBatchFullName",
@@ -2676,10 +2676,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 13659,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testTopicAutoUpdatePartitions",
@@ -2789,10 +2789,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 133445.00000000003,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testCheckUnAcknowledgedMessageTimer",
@@ -2842,10 +2842,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 43828,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "zeroQueueSizeSharedSubscription",
@@ -2937,10 +2937,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 15712,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testGetProperties",
@@ -2954,10 +2954,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 316,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testChecksumSendCommand",
@@ -2971,10 +2971,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 30,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testCompressDecompress",
@@ -3018,10 +3018,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 223.00000000000003,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testCompressDecompress",
@@ -3299,10 +3299,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 737.0000000000005,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testCrc32cHardware",
@@ -3346,10 +3346,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 5403.000000000001,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testLoadReportSerialization",
@@ -3381,10 +3381,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 1530,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testInvalidMetadata",
@@ -3404,10 +3404,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 161,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testIncludes",
@@ -3451,10 +3451,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 64,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testConstructor",
@@ -3492,10 +3492,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 98.99999999999999,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "namespace",
@@ -3515,10 +3515,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 207,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testOptionalSettingPresent",
@@ -3550,10 +3550,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 48,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testShortTopicName",
@@ -3585,10 +3585,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 529,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testEmptyServiceUriString",
@@ -3722,10 +3722,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 237.00000000000006,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testAutoFailoverPolicyData",
@@ -3739,10 +3739,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 15,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testAutoFailoverPolicyType",
@@ -3756,10 +3756,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 19,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testInvalidTopicType",
@@ -3803,10 +3803,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 64,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testBacklogQuotaIdentity",
@@ -3820,10 +3820,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 12,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "simple",
@@ -3837,10 +3837,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 9,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testConsumerStats",
@@ -3854,10 +3854,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 8,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testDecodeFailed",
@@ -3877,10 +3877,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 948,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testLocalPolices",
@@ -3894,10 +3894,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 48,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testNamespaceIsolationData",
@@ -3911,10 +3911,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 76,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testSerialization",
@@ -3928,10 +3928,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 45,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testGcsConfiguration",
@@ -3975,10 +3975,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 216,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testPartitionedTopicStats",
@@ -3992,10 +3992,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 12,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testPersistencePolicies",
@@ -4009,10 +4009,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 19,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testPersistentOfflineTopicStats",
@@ -4026,10 +4026,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 29,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testPersistentTopicStatsAggregation",
@@ -4049,10 +4049,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 51,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "propertyAdmin",
@@ -4084,10 +4084,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 1386,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testPublisherStats",
@@ -4107,10 +4107,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 37,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testReplicatorStatsAdd",
@@ -4130,10 +4130,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 30,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testResourceQuotaDefault",
@@ -4153,10 +4153,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 45,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testRetentionPolices",
@@ -4170,10 +4170,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 8,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testAutoFailoverPolicyFactory",
@@ -4187,10 +4187,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 22,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testMinAvailablePolicty",
@@ -4204,10 +4204,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 1,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testBrokerAssignment",
@@ -4257,10 +4257,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 265,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testFindBrokers",
@@ -4310,10 +4310,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 309.00000000000006,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testEncoder",
@@ -4333,10 +4333,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 4999.000000000001,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testSkipBrokerEntryMetadata",
@@ -4386,10 +4386,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 2812.0000000000005,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testSnapshot",
@@ -4433,10 +4433,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 3232.9999999999995,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testChannelRead",
@@ -4450,10 +4450,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 3690,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testInvokeJVMInternals",
@@ -4467,10 +4467,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 82,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testMap",
@@ -4484,10 +4484,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 242,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testFileNotModified",
@@ -4531,10 +4531,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 6161.000000000001,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testMultipleTryAcquire",
@@ -4608,10 +4608,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 7199.999999999998,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testCreateInstanceNoNoArgConstructor",
@@ -4691,10 +4691,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 172,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testParseRelativeTime",
@@ -4708,10 +4708,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 39,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testResetWords",
@@ -4731,10 +4731,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 13.000000000000002,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testRecycle",
@@ -4754,10 +4754,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 63,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testRehashingWithDeletes",
@@ -4843,10 +4843,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 28351.000000000004,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "concurrentInsertionsAndReads",
@@ -4944,10 +4944,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 1519.0000000000002,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testRemove",
@@ -5027,10 +5027,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 9241,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "concurrentInsertions",
@@ -5104,10 +5104,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 7114.999999999999,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testAddForDifferentKey",
@@ -5193,10 +5193,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 1355.9999999999998,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "concurrentInsertions",
@@ -5258,10 +5258,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 342,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testUpdateObject",
@@ -5281,10 +5281,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 64,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "removeTest",
@@ -5328,10 +5328,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 350,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testItems",
@@ -5429,10 +5429,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 3092.9999999999995,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testQueue",
@@ -5458,10 +5458,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 238,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "toCompletableFuture_shouldCompleteExceptionally_channelFutureCompletedAfter",
@@ -5499,10 +5499,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 1549.0000000000002,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testRedirectUrlWithServerStarted",
@@ -5516,10 +5516,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 4904,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testAuthorizationWithAnonymousUser",
@@ -5539,10 +5539,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 27527,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testPulsarFunctionState",
@@ -5568,10 +5568,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 42238,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testFunctionsCreation",
@@ -5585,10 +5585,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 12012,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testAuthorization",
@@ -5602,10 +5602,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 30213,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "replayableProxyContentProviderTest",
@@ -5619,10 +5619,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 474,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testAuthenticatedProxyAsNonAdmin",
@@ -5636,10 +5636,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 2159,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testFunctionWorkerRedirect",
@@ -5653,10 +5653,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 10,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "test",
@@ -5670,10 +5670,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 125,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testTlsSyncProducerAndConsumer",
@@ -5687,10 +5687,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 2279,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testAuthentication",
@@ -5704,10 +5704,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 16696,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testInboundConnection",
@@ -5721,10 +5721,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 1792,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testSimpleProduceAndConsume",
@@ -5738,10 +5738,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 511,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testForwardAuthData",
@@ -5755,10 +5755,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 31924,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testProxyToEndsInSlash",
@@ -5826,10 +5826,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 1660,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testProducerFailed",
@@ -5855,10 +5855,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 6701.000000000001,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testPartitions",
@@ -5884,10 +5884,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 7220.000000000001,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testLookup",
@@ -5901,10 +5901,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 2568,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testRegexSubscription",
@@ -5942,10 +5942,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 1345.9999999999998,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testIncorrectRoles",
@@ -5959,10 +5959,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 10403,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testChangeLogLevel",
@@ -5988,10 +5988,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 533,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testPartitions",
@@ -6035,10 +6035,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 2946.9999999999995,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testProducer",
@@ -6058,10 +6058,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 414.00000000000006,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testServiceStartup",
@@ -6075,10 +6075,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 4,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testProxyAuthorization",
@@ -6092,10 +6092,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 2128,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "tlsCiphersAndProtocols",
@@ -6181,10 +6181,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 32897,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testDiscoveryService",
@@ -6198,10 +6198,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 2045,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testAuthWithRandoCert",
@@ -6227,10 +6227,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 8235,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testUnauthenticatedProxy",
@@ -6250,10 +6250,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 113.99999999999999,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "test",
@@ -6267,10 +6267,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 29041,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testIsUsingAvroSchemaParser",
@@ -6296,10 +6296,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 30859,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testConsumerCompatibilityCheckCanReadLastTest",
@@ -6445,10 +6445,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 107437.00000000001,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testServiceException",
@@ -6468,10 +6468,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 40751.99999999999,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "shouldFailIfEnumParameterIsMissing",
@@ -6515,10 +6515,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 23,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "shouldNotDoAnythingWhenThereIsBeforeAndAfterMethod",
@@ -6556,10 +6556,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 36.00000000000001,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "shouldCallSetupBeforeRetrying",
@@ -6597,10 +6597,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 27,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "shouldCallSetupOnce1",
@@ -6626,10 +6626,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 1,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testHelp",
@@ -6649,10 +6649,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 17,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testBooleanFormat",
@@ -6684,10 +6684,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 49.99999999999999,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testLists",
@@ -6731,10 +6731,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 59,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "unauthenticatedSocketTest",
@@ -6766,10 +6766,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 28904.000000000004,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "test",
@@ -6783,10 +6783,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 1263,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "configTest",
@@ -6806,10 +6806,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 8943,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "socketTest",
@@ -6823,10 +6823,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 10821,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "socketTest",
@@ -6840,10 +6840,10 @@ at java.lang.Thread.run(Thread.java:748)
"totalTime": 7280,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "anonymousSocketTest",
diff --git a/__tests__/__snapshots__/jest-junit.test.ts.snap b/__tests__/__snapshots__/jest-junit.test.ts.snap
index 3a04722..f29b5c8 100644
--- a/__tests__/__snapshots__/jest-junit.test.ts.snap
+++ b/__tests__/__snapshots__/jest-junit.test.ts.snap
@@ -1,14 +1,40 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
+exports[`jest-junit tests report from #235 testing react components named 1`] = `
+TestRunResult {
+ "path": "fixtures/external/jest/jest-react-component-test-results.xml",
+ "suites": [
+ TestSuiteResult {
+ "groups": [
+ TestGroupResult {
+ "name": "",
+ "tests": [
+ TestCaseResult {
+ "error": undefined,
+ "name": " should render properly",
+ "result": "success",
+ "time": 704,
+ },
+ ],
+ },
+ ],
+ "name": "\\",
+ "totalTime": 798,
+ },
+ ],
+ "totalTime": 1000,
+}
+`;
+
exports[`jest-junit tests report from ./reports/jest test results matches snapshot 1`] = `
TestRunResult {
"path": "fixtures/jest-junit.xml",
- "suites": Array [
+ "suites": [
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Test 1",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Passing test",
@@ -19,18 +45,18 @@ TestRunResult {
},
TestGroupResult {
"name": "Test 1 › Test 1.1",
- "tests": Array [
+ "tests": [
TestCaseResult {
- "error": Object {
+ "error": {
"details": "Error: expect(received).toBeTruthy()
Received: false
- at Object. (C:\\\\Users\\\\Michal\\\\Workspace\\\\dorny\\\\test-check\\\\reports\\\\jest\\\\__tests__\\\\main.test.js:10:21)
- at Object.asyncJestTest (C:\\\\Users\\\\Michal\\\\Workspace\\\\dorny\\\\test-check\\\\reports\\\\jest\\\\node_modules\\\\jest-jasmine2\\\\build\\\\jasmineAsyncInstall.js:106:37)
- at C:\\\\Users\\\\Michal\\\\Workspace\\\\dorny\\\\test-check\\\\reports\\\\jest\\\\node_modules\\\\jest-jasmine2\\\\build\\\\queueRunner.js:45:12
+ at Object. (C:\\Users\\Michal\\Workspace\\dorny\\test-check\\reports\\jest\\__tests__\\main.test.js:10:21)
+ at Object.asyncJestTest (C:\\Users\\Michal\\Workspace\\dorny\\test-check\\reports\\jest\\node_modules\\jest-jasmine2\\build\\jasmineAsyncInstall.js:106:37)
+ at C:\\Users\\Michal\\Workspace\\dorny\\test-check\\reports\\jest\\node_modules\\jest-jasmine2\\build\\queueRunner.js:45:12
at new Promise ()
- at mapper (C:\\\\Users\\\\Michal\\\\Workspace\\\\dorny\\\\test-check\\\\reports\\\\jest\\\\node_modules\\\\jest-jasmine2\\\\build\\\\queueRunner.js:28:19)
- at C:\\\\Users\\\\Michal\\\\Workspace\\\\dorny\\\\test-check\\\\reports\\\\jest\\\\node_modules\\\\jest-jasmine2\\\\build\\\\queueRunner.js:75:41
+ at mapper (C:\\Users\\Michal\\Workspace\\dorny\\test-check\\reports\\jest\\node_modules\\jest-jasmine2\\build\\queueRunner.js:28:19)
+ at C:\\Users\\Michal\\Workspace\\dorny\\test-check\\reports\\jest\\node_modules\\jest-jasmine2\\build\\queueRunner.js:75:41
at processTicksAndRejections (internal/process/task_queues.js:97:5)",
"line": 10,
"path": "__tests__/main.test.js",
@@ -40,15 +66,15 @@ Received: false
"time": 2,
},
TestCaseResult {
- "error": Object {
+ "error": {
"details": "Error: Some error
- at Object.throwError (C:\\\\Users\\\\Michal\\\\Workspace\\\\dorny\\\\test-check\\\\reports\\\\jest\\\\lib\\\\main.js:2:9)
- at Object. (C:\\\\Users\\\\Michal\\\\Workspace\\\\dorny\\\\test-check\\\\reports\\\\jest\\\\__tests__\\\\main.test.js:14:11)
- at Object.asyncJestTest (C:\\\\Users\\\\Michal\\\\Workspace\\\\dorny\\\\test-check\\\\reports\\\\jest\\\\node_modules\\\\jest-jasmine2\\\\build\\\\jasmineAsyncInstall.js:106:37)
- at C:\\\\Users\\\\Michal\\\\Workspace\\\\dorny\\\\test-check\\\\reports\\\\jest\\\\node_modules\\\\jest-jasmine2\\\\build\\\\queueRunner.js:45:12
+ at Object.throwError (C:\\Users\\Michal\\Workspace\\dorny\\test-check\\reports\\jest\\lib\\main.js:2:9)
+ at Object. (C:\\Users\\Michal\\Workspace\\dorny\\test-check\\reports\\jest\\__tests__\\main.test.js:14:11)
+ at Object.asyncJestTest (C:\\Users\\Michal\\Workspace\\dorny\\test-check\\reports\\jest\\node_modules\\jest-jasmine2\\build\\jasmineAsyncInstall.js:106:37)
+ at C:\\Users\\Michal\\Workspace\\dorny\\test-check\\reports\\jest\\node_modules\\jest-jasmine2\\build\\queueRunner.js:45:12
at new Promise ()
- at mapper (C:\\\\Users\\\\Michal\\\\Workspace\\\\dorny\\\\test-check\\\\reports\\\\jest\\\\node_modules\\\\jest-jasmine2\\\\build\\\\queueRunner.js:28:19)
- at C:\\\\Users\\\\Michal\\\\Workspace\\\\dorny\\\\test-check\\\\reports\\\\jest\\\\node_modules\\\\jest-jasmine2\\\\build\\\\queueRunner.js:75:41
+ at mapper (C:\\Users\\Michal\\Workspace\\dorny\\test-check\\reports\\jest\\node_modules\\jest-jasmine2\\build\\queueRunner.js:28:19)
+ at C:\\Users\\Michal\\Workspace\\dorny\\test-check\\reports\\jest\\node_modules\\jest-jasmine2\\build\\queueRunner.js:75:41
at processTicksAndRejections (internal/process/task_queues.js:97:5)",
"line": 2,
"path": "lib/main.js",
@@ -61,16 +87,16 @@ Received: false
},
TestGroupResult {
"name": "Test 2",
- "tests": Array [
+ "tests": [
TestCaseResult {
- "error": Object {
+ "error": {
"details": "Error: Some error
- at Object. (C:\\\\Users\\\\Michal\\\\Workspace\\\\dorny\\\\test-check\\\\reports\\\\jest\\\\__tests__\\\\main.test.js:21:11)
- at Object.asyncJestTest (C:\\\\Users\\\\Michal\\\\Workspace\\\\dorny\\\\test-check\\\\reports\\\\jest\\\\node_modules\\\\jest-jasmine2\\\\build\\\\jasmineAsyncInstall.js:106:37)
- at C:\\\\Users\\\\Michal\\\\Workspace\\\\dorny\\\\test-check\\\\reports\\\\jest\\\\node_modules\\\\jest-jasmine2\\\\build\\\\queueRunner.js:45:12
+ at Object. (C:\\Users\\Michal\\Workspace\\dorny\\test-check\\reports\\jest\\__tests__\\main.test.js:21:11)
+ at Object.asyncJestTest (C:\\Users\\Michal\\Workspace\\dorny\\test-check\\reports\\jest\\node_modules\\jest-jasmine2\\build\\jasmineAsyncInstall.js:106:37)
+ at C:\\Users\\Michal\\Workspace\\dorny\\test-check\\reports\\jest\\node_modules\\jest-jasmine2\\build\\queueRunner.js:45:12
at new Promise ()
- at mapper (C:\\\\Users\\\\Michal\\\\Workspace\\\\dorny\\\\test-check\\\\reports\\\\jest\\\\node_modules\\\\jest-jasmine2\\\\build\\\\queueRunner.js:28:19)
- at C:\\\\Users\\\\Michal\\\\Workspace\\\\dorny\\\\test-check\\\\reports\\\\jest\\\\node_modules\\\\jest-jasmine2\\\\build\\\\queueRunner.js:75:41
+ at mapper (C:\\Users\\Michal\\Workspace\\dorny\\test-check\\reports\\jest\\node_modules\\jest-jasmine2\\build\\queueRunner.js:28:19)
+ at C:\\Users\\Michal\\Workspace\\dorny\\test-check\\reports\\jest\\node_modules\\jest-jasmine2\\build\\queueRunner.js:75:41
at processTicksAndRejections (internal/process/task_queues.js:97:5)",
"line": 21,
"path": "__tests__/main.test.js",
@@ -82,30 +108,30 @@ Received: false
],
},
],
- "name": "__tests__\\\\main.test.js",
+ "name": "__tests__\\main.test.js",
"totalTime": 486,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
- "error": Object {
+ "error": {
"details": ": 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:
- at new Spec (C:\\\\Users\\\\Michal\\\\Workspace\\\\dorny\\\\test-check\\\\reports\\\\jest\\\\node_modules\\\\jest-jasmine2\\\\build\\\\jasmine\\\\Spec.js:116:22)
- at new Spec (C:\\\\Users\\\\Michal\\\\Workspace\\\\dorny\\\\test-check\\\\reports\\\\jest\\\\node_modules\\\\jest-jasmine2\\\\build\\\\setup_jest_globals.js:78:9)
- at specFactory (C:\\\\Users\\\\Michal\\\\Workspace\\\\dorny\\\\test-check\\\\reports\\\\jest\\\\node_modules\\\\jest-jasmine2\\\\build\\\\jasmine\\\\Env.js:523:24)
- at Env.it (C:\\\\Users\\\\Michal\\\\Workspace\\\\dorny\\\\test-check\\\\reports\\\\jest\\\\node_modules\\\\jest-jasmine2\\\\build\\\\jasmine\\\\Env.js:592:24)
- at Env.it (C:\\\\Users\\\\Michal\\\\Workspace\\\\dorny\\\\test-check\\\\reports\\\\jest\\\\node_modules\\\\jest-jasmine2\\\\build\\\\jasmineAsyncInstall.js:134:23)
- at it (C:\\\\Users\\\\Michal\\\\Workspace\\\\dorny\\\\test-check\\\\reports\\\\jest\\\\node_modules\\\\jest-jasmine2\\\\build\\\\jasmine\\\\jasmineLight.js:100:21)
- at Object. (C:\\\\Users\\\\Michal\\\\Workspace\\\\dorny\\\\test-check\\\\reports\\\\jest\\\\__tests__\\\\second.test.js:1:34)
- at Runtime._execModule (C:\\\\Users\\\\Michal\\\\Workspace\\\\dorny\\\\test-check\\\\reports\\\\jest\\\\node_modules\\\\jest-runtime\\\\build\\\\index.js:1245:24)
- at Runtime._loadModule (C:\\\\Users\\\\Michal\\\\Workspace\\\\dorny\\\\test-check\\\\reports\\\\jest\\\\node_modules\\\\jest-runtime\\\\build\\\\index.js:844:12)
- at Runtime.requireModule (C:\\\\Users\\\\Michal\\\\Workspace\\\\dorny\\\\test-check\\\\reports\\\\jest\\\\node_modules\\\\jest-runtime\\\\build\\\\index.js:694:10)
- at jasmine2 (C:\\\\Users\\\\Michal\\\\Workspace\\\\dorny\\\\test-check\\\\reports\\\\jest\\\\node_modules\\\\jest-jasmine2\\\\build\\\\index.js:230:13)
- at runTestInternal (C:\\\\Users\\\\Michal\\\\Workspace\\\\dorny\\\\test-check\\\\reports\\\\jest\\\\node_modules\\\\jest-runner\\\\build\\\\runTest.js:380:22)
- at runTest (C:\\\\Users\\\\Michal\\\\Workspace\\\\dorny\\\\test-check\\\\reports\\\\jest\\\\node_modules\\\\jest-runner\\\\build\\\\runTest.js:472:34)",
+ at new Spec (C:\\Users\\Michal\\Workspace\\dorny\\test-check\\reports\\jest\\node_modules\\jest-jasmine2\\build\\jasmine\\Spec.js:116:22)
+ at new Spec (C:\\Users\\Michal\\Workspace\\dorny\\test-check\\reports\\jest\\node_modules\\jest-jasmine2\\build\\setup_jest_globals.js:78:9)
+ at specFactory (C:\\Users\\Michal\\Workspace\\dorny\\test-check\\reports\\jest\\node_modules\\jest-jasmine2\\build\\jasmine\\Env.js:523:24)
+ at Env.it (C:\\Users\\Michal\\Workspace\\dorny\\test-check\\reports\\jest\\node_modules\\jest-jasmine2\\build\\jasmine\\Env.js:592:24)
+ at Env.it (C:\\Users\\Michal\\Workspace\\dorny\\test-check\\reports\\jest\\node_modules\\jest-jasmine2\\build\\jasmineAsyncInstall.js:134:23)
+ at it (C:\\Users\\Michal\\Workspace\\dorny\\test-check\\reports\\jest\\node_modules\\jest-jasmine2\\build\\jasmine\\jasmineLight.js:100:21)
+ at Object. (C:\\Users\\Michal\\Workspace\\dorny\\test-check\\reports\\jest\\__tests__\\second.test.js:1:34)
+ at Runtime._execModule (C:\\Users\\Michal\\Workspace\\dorny\\test-check\\reports\\jest\\node_modules\\jest-runtime\\build\\index.js:1245:24)
+ at Runtime._loadModule (C:\\Users\\Michal\\Workspace\\dorny\\test-check\\reports\\jest\\node_modules\\jest-runtime\\build\\index.js:844:12)
+ at Runtime.requireModule (C:\\Users\\Michal\\Workspace\\dorny\\test-check\\reports\\jest\\node_modules\\jest-runtime\\build\\index.js:694:10)
+ at jasmine2 (C:\\Users\\Michal\\Workspace\\dorny\\test-check\\reports\\jest\\node_modules\\jest-jasmine2\\build\\index.js:230:13)
+ at runTestInternal (C:\\Users\\Michal\\Workspace\\dorny\\test-check\\reports\\jest\\node_modules\\jest-runner\\build\\runTest.js:380:22)
+ at runTest (C:\\Users\\Michal\\Workspace\\dorny\\test-check\\reports\\jest\\node_modules\\jest-runner\\build\\runTest.js:472:34)",
"line": 1,
"path": "__tests__/second.test.js",
},
@@ -122,7 +148,7 @@ Received: false
],
},
],
- "name": "__tests__\\\\second.test.js",
+ "name": "__tests__\\second.test.js",
"totalTime": 82,
},
],
@@ -133,12 +159,12 @@ Received: false
exports[`jest-junit tests report from facebook/jest test results matches snapshot 1`] = `
TestRunResult {
"path": "fixtures/external/jest/jest-test-results.xml",
- "suites": Array [
+ "suites": [
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "picks a name based on the rootDir",
@@ -173,7 +199,7 @@ TestRunResult {
},
TestGroupResult {
"name": "rootDir",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "throws if the options is missing a rootDir property",
@@ -184,7 +210,7 @@ TestRunResult {
},
TestGroupResult {
"name": "automock",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "falsy automock is not overwritten",
@@ -195,7 +221,7 @@ TestRunResult {
},
TestGroupResult {
"name": "collectCoverageOnlyFrom",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "normalizes all paths relative to rootDir",
@@ -218,7 +244,7 @@ TestRunResult {
},
TestGroupResult {
"name": "collectCoverageFrom",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "substitutes tokens",
@@ -229,7 +255,7 @@ TestRunResult {
},
TestGroupResult {
"name": "findRelatedTests",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "it generates --coverageCoverageFrom patterns when needed",
@@ -240,7 +266,7 @@ TestRunResult {
},
TestGroupResult {
"name": "roots",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "normalizes all paths relative to rootDir",
@@ -263,7 +289,7 @@ TestRunResult {
},
TestGroupResult {
"name": "transform",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "normalizes the path",
@@ -280,7 +306,7 @@ TestRunResult {
},
TestGroupResult {
"name": "haste",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "normalizes the path for hasteImplModulePath",
@@ -291,7 +317,7 @@ TestRunResult {
},
TestGroupResult {
"name": "setupFilesAfterEnv",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "normalizes the path according to rootDir",
@@ -314,7 +340,7 @@ TestRunResult {
},
TestGroupResult {
"name": "setupTestFrameworkScriptFile",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "logs a deprecation warning when \`setupTestFrameworkScriptFile\` is used",
@@ -331,7 +357,7 @@ TestRunResult {
},
TestGroupResult {
"name": "coveragePathIgnorePatterns",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "does not normalize paths relative to rootDir",
@@ -354,7 +380,7 @@ TestRunResult {
},
TestGroupResult {
"name": "watchPathIgnorePatterns",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "does not normalize paths relative to rootDir",
@@ -377,7 +403,7 @@ TestRunResult {
},
TestGroupResult {
"name": "testPathIgnorePatterns",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "does not normalize paths relative to rootDir",
@@ -400,7 +426,7 @@ TestRunResult {
},
TestGroupResult {
"name": "modulePathIgnorePatterns",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "does not normalize paths relative to rootDir",
@@ -423,7 +449,7 @@ TestRunResult {
},
TestGroupResult {
"name": "testRunner",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "defaults to Circus",
@@ -446,7 +472,7 @@ TestRunResult {
},
TestGroupResult {
"name": "coverageDirectory",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "defaults to /coverage",
@@ -457,7 +483,7 @@ TestRunResult {
},
TestGroupResult {
"name": "testEnvironment",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "resolves to an environment and prefers jest-environment-\`name\`",
@@ -480,7 +506,7 @@ TestRunResult {
},
TestGroupResult {
"name": "babel-jest",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "correctly identifies and uses babel-jest",
@@ -497,7 +523,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Upgrade help",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "logs a warning when \`scriptPreprocessor\` and/or \`preprocessorIgnorePatterns\` are used",
@@ -508,7 +534,7 @@ TestRunResult {
},
TestGroupResult {
"name": "testRegex",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testRegex empty string is mapped to empty array",
@@ -531,7 +557,7 @@ TestRunResult {
},
TestGroupResult {
"name": "testMatch",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testMatch default not applied if testRegex is set",
@@ -560,7 +586,7 @@ TestRunResult {
},
TestGroupResult {
"name": "moduleDirectories",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "defaults to node_modules",
@@ -577,7 +603,7 @@ TestRunResult {
},
TestGroupResult {
"name": "preset",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "throws when preset not found",
@@ -586,7 +612,7 @@ TestRunResult {
},
TestCaseResult {
"error": undefined,
- "name": "throws when module was found but no \\"jest-preset.js\\" or \\"jest-preset.json\\" files",
+ "name": "throws when module was found but no "jest-preset.js" or "jest-preset.json" files",
"result": "success",
"time": 1,
},
@@ -610,7 +636,7 @@ TestRunResult {
},
TestCaseResult {
"error": undefined,
- "name": "works with \\"react-native\\"",
+ "name": "works with "react-native"",
"result": "success",
"time": 3,
},
@@ -648,7 +674,7 @@ TestRunResult {
},
TestGroupResult {
"name": "preset with globals",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should merge the globals preset correctly",
@@ -659,7 +685,7 @@ TestRunResult {
},
TestGroupResult {
"name": "preset without setupFiles",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should normalize setupFiles correctly",
@@ -670,7 +696,7 @@ TestRunResult {
},
TestGroupResult {
"name": "preset without setupFilesAfterEnv",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should normalize setupFilesAfterEnv correctly",
@@ -681,7 +707,7 @@ TestRunResult {
},
TestGroupResult {
"name": "runner",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "defaults to \`jest-runner\`",
@@ -710,7 +736,7 @@ TestRunResult {
},
TestGroupResult {
"name": "watchPlugins",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "defaults to undefined",
@@ -745,7 +771,7 @@ TestRunResult {
},
TestGroupResult {
"name": "testPathPattern",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "defaults to empty",
@@ -768,7 +794,7 @@ TestRunResult {
},
TestGroupResult {
"name": "testPathPattern --testPathPattern",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "uses --testPathPattern if set",
@@ -791,7 +817,7 @@ TestRunResult {
},
TestGroupResult {
"name": "testPathPattern --testPathPattern posix",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not escape the pattern",
@@ -802,10 +828,10 @@ TestRunResult {
},
TestGroupResult {
"name": "testPathPattern --testPathPattern win32",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "preserves any use of \\"\\\\\\"",
+ "name": "preserves any use of "\\"",
"result": "success",
"time": 1,
},
@@ -831,7 +857,7 @@ TestRunResult {
},
TestGroupResult {
"name": "testPathPattern ",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "uses if set",
@@ -854,7 +880,7 @@ TestRunResult {
},
TestGroupResult {
"name": "testPathPattern posix",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not escape the pattern",
@@ -865,10 +891,10 @@ TestRunResult {
},
TestGroupResult {
"name": "testPathPattern win32",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "preserves any use of \\"\\\\\\"",
+ "name": "preserves any use of "\\"",
"result": "success",
"time": 15,
},
@@ -894,7 +920,7 @@ TestRunResult {
},
TestGroupResult {
"name": "moduleFileExtensions",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "defaults to something useful",
@@ -917,7 +943,7 @@ TestRunResult {
},
TestGroupResult {
"name": "cwd",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "is set to process.cwd",
@@ -934,7 +960,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Defaults",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should be accepted by normalize",
@@ -945,7 +971,7 @@ TestRunResult {
},
TestGroupResult {
"name": "displayName",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should throw an error when displayName is is an empty object",
@@ -1004,7 +1030,7 @@ TestRunResult {
},
TestGroupResult {
"name": "testTimeout",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return timeout value if defined",
@@ -1021,7 +1047,7 @@ TestRunResult {
},
TestGroupResult {
"name": "extensionsToTreatAsEsm",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should pass valid config through",
@@ -1059,10 +1085,10 @@ TestRunResult {
"totalTime": 798,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Repl cli",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "runs without errors",
@@ -1076,10 +1102,10 @@ TestRunResult {
"totalTime": 1172,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "chalk",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "level 0",
@@ -1108,7 +1134,7 @@ TestRunResult {
},
TestGroupResult {
"name": "matcher error toMatchInlineSnapshot",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Expected properties must be an object (non-null) without snapshot",
@@ -1137,7 +1163,7 @@ TestRunResult {
},
TestGroupResult {
"name": "matcher error toMatchSnapshot",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Expected properties must be an object (non-null)",
@@ -1166,7 +1192,7 @@ TestRunResult {
},
TestGroupResult {
"name": "matcher error toMatchSnapshot received value must be an object",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "(non-null)",
@@ -1183,7 +1209,7 @@ TestRunResult {
},
TestGroupResult {
"name": "matcher error toThrowErrorMatchingInlineSnapshot",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Inline snapshot must be a string",
@@ -1200,7 +1226,7 @@ TestRunResult {
},
TestGroupResult {
"name": "matcher error toThrowErrorMatchingSnapshot",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Received value must be a function",
@@ -1217,7 +1243,7 @@ TestRunResult {
},
TestGroupResult {
"name": "other error toThrowErrorMatchingSnapshot",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Received function did not throw",
@@ -1228,7 +1254,7 @@ TestRunResult {
},
TestGroupResult {
"name": "pass false toMatchInlineSnapshot with properties equals false",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "with snapshot",
@@ -1245,7 +1271,7 @@ TestRunResult {
},
TestGroupResult {
"name": "pass false toMatchInlineSnapshot with properties",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "equals true",
@@ -1256,7 +1282,7 @@ TestRunResult {
},
TestGroupResult {
"name": "pass false toMatchSnapshot",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "New snapshot was not written (multi line)",
@@ -1273,7 +1299,7 @@ TestRunResult {
},
TestGroupResult {
"name": "pass false toMatchSnapshot with properties equals false",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "isLineDiffable false",
@@ -1290,7 +1316,7 @@ TestRunResult {
},
TestGroupResult {
"name": "pass false toMatchSnapshot with properties",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "equals true",
@@ -1301,7 +1327,7 @@ TestRunResult {
},
TestGroupResult {
"name": "pass false toThrowErrorMatchingInlineSnapshot",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "with snapshot",
@@ -1312,7 +1338,7 @@ TestRunResult {
},
TestGroupResult {
"name": "pass true toMatchSnapshot",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "without properties",
@@ -1323,7 +1349,7 @@ TestRunResult {
},
TestGroupResult {
"name": "printPropertiesAndReceived",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "omit missing properties",
@@ -1334,7 +1360,7 @@ TestRunResult {
},
TestGroupResult {
"name": "printSnapshotAndReceived backtick",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "single line expected and received",
@@ -1345,7 +1371,7 @@ TestRunResult {
},
TestGroupResult {
"name": "printSnapshotAndReceived empty string",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "expected and received single line",
@@ -1362,7 +1388,7 @@ TestRunResult {
},
TestGroupResult {
"name": "printSnapshotAndReceived escape",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "double quote marks in string",
@@ -1391,7 +1417,7 @@ TestRunResult {
},
TestGroupResult {
"name": "printSnapshotAndReceived expand",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "false",
@@ -1408,7 +1434,7 @@ TestRunResult {
},
TestGroupResult {
"name": "printSnapshotAndReceived",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "fallback to line diff",
@@ -1437,7 +1463,7 @@ TestRunResult {
},
TestGroupResult {
"name": "printSnapshotAndReceived has no common after clean up chaff",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "array",
@@ -1454,7 +1480,7 @@ TestRunResult {
},
TestGroupResult {
"name": "printSnapshotAndReceived MAX_DIFF_STRING_LENGTH unquoted",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "both are less",
@@ -1477,7 +1503,7 @@ TestRunResult {
},
TestGroupResult {
"name": "printSnapshotAndReceived MAX_DIFF_STRING_LENGTH quoted",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "both are less",
@@ -1500,7 +1526,7 @@ TestRunResult {
},
TestGroupResult {
"name": "printSnapshotAndReceived isLineDiffable false",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "asymmetric matcher",
@@ -1541,7 +1567,7 @@ TestRunResult {
},
TestGroupResult {
"name": "printSnapshotAndReceived isLineDiffable true",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "array",
@@ -1570,7 +1596,7 @@ TestRunResult {
},
TestGroupResult {
"name": "printSnapshotAndReceived ignore indentation",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "markup delete",
@@ -1593,7 +1619,7 @@ TestRunResult {
},
TestGroupResult {
"name": "printSnapshotAndReceived ignore indentation object",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "delete",
@@ -1610,7 +1636,7 @@ TestRunResult {
},
TestGroupResult {
"name": "printSnapshotAndReceived without serialize",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "backtick single line expected and received",
@@ -1648,10 +1674,10 @@ TestRunResult {
"totalTime": 1188,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "get configuration defaults",
@@ -1665,10 +1691,10 @@ TestRunResult {
"totalTime": 672,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "isCoreModule",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "returns false if \`hasCoreModules\` is false.",
@@ -1697,7 +1723,7 @@ TestRunResult {
},
TestGroupResult {
"name": "findNodeModule",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "is possible to override the default resolver",
@@ -1714,7 +1740,7 @@ TestRunResult {
},
TestGroupResult {
"name": "resolveModule",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "is possible to resolve node modules",
@@ -1755,7 +1781,7 @@ TestRunResult {
},
TestGroupResult {
"name": "getMockModule",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "is possible to use custom resolver to resolve deps inside mock modules with moduleNameMapper",
@@ -1766,7 +1792,7 @@ TestRunResult {
},
TestGroupResult {
"name": "nodeModulesPaths",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "provides custom module paths after node_modules",
@@ -1777,16 +1803,16 @@ TestRunResult {
},
TestGroupResult {
"name": "Resolver.getModulePaths() -> nodeModulesPaths()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "can resolve node modules relative to absolute paths in \\"moduleDirectories\\" on Windows platforms",
+ "name": "can resolve node modules relative to absolute paths in "moduleDirectories" on Windows platforms",
"result": "success",
"time": 21,
},
TestCaseResult {
"error": undefined,
- "name": "can resolve node modules relative to absolute paths in \\"moduleDirectories\\" on Posix platforms",
+ "name": "can resolve node modules relative to absolute paths in "moduleDirectories" on Posix platforms",
"result": "success",
"time": 8,
},
@@ -1797,10 +1823,10 @@ TestRunResult {
"totalTime": 1308,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "toEqual",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should be reflexive",
@@ -1820,10 +1846,10 @@ TestRunResult {
"totalTime": 1062,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "snapshots needs update with npm test",
@@ -1855,10 +1881,10 @@ TestRunResult {
"totalTime": 366,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "readConfigs() throws when called without project paths",
@@ -1884,10 +1910,10 @@ TestRunResult {
"totalTime": 135,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "generateEmptyCoverage",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "generates an empty coverage object for a file without running it",
@@ -1913,10 +1939,10 @@ TestRunResult {
"totalTime": 1129,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Any.asymmetricMatch()",
@@ -2152,10 +2178,10 @@ TestRunResult {
"totalTime": 207,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "onRunComplete",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "getLastError() returns an error when threshold is not met for global",
@@ -2240,10 +2266,10 @@ TestRunResult {
"totalTime": 397,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "saveInlineSnapshots() replaces empty function call with a template literal",
@@ -2383,10 +2409,10 @@ TestRunResult {
"totalTime": 1149,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "readConfig() throws when an object is passed without a file path",
@@ -2400,10 +2426,10 @@ TestRunResult {
"totalTime": 76,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "When offset is -1",
@@ -2441,10 +2467,10 @@ TestRunResult {
"totalTime": 57,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "toThrowError",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "to throw or not to throw",
@@ -2467,7 +2493,7 @@ TestRunResult {
},
TestGroupResult {
"name": "toThrowError substring",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "passes",
@@ -2514,7 +2540,7 @@ TestRunResult {
},
TestGroupResult {
"name": "toThrowError regexp",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "passes",
@@ -2555,7 +2581,7 @@ TestRunResult {
},
TestGroupResult {
"name": "toThrowError error class",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "passes",
@@ -2602,7 +2628,7 @@ TestRunResult {
},
TestGroupResult {
"name": "toThrowError error-message pass",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "isNot false",
@@ -2619,7 +2645,7 @@ TestRunResult {
},
TestGroupResult {
"name": "toThrowError error-message fail",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "isNot false",
@@ -2642,7 +2668,7 @@ TestRunResult {
},
TestGroupResult {
"name": "toThrowError asymmetric any-Class pass",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "isNot false",
@@ -2659,7 +2685,7 @@ TestRunResult {
},
TestGroupResult {
"name": "toThrowError asymmetric any-Class fail",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "isNot false",
@@ -2676,7 +2702,7 @@ TestRunResult {
},
TestGroupResult {
"name": "toThrowError asymmetric anything pass",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "isNot false",
@@ -2693,7 +2719,7 @@ TestRunResult {
},
TestGroupResult {
"name": "toThrowError asymmetric anything fail",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "isNot false",
@@ -2710,7 +2736,7 @@ TestRunResult {
},
TestGroupResult {
"name": "toThrowError asymmetric no-symbol pass",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "isNot false",
@@ -2727,7 +2753,7 @@ TestRunResult {
},
TestGroupResult {
"name": "toThrowError asymmetric no-symbol fail",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "isNot false",
@@ -2744,7 +2770,7 @@ TestRunResult {
},
TestGroupResult {
"name": "toThrowError asymmetric objectContaining pass",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "isNot false",
@@ -2761,7 +2787,7 @@ TestRunResult {
},
TestGroupResult {
"name": "toThrowError asymmetric objectContaining fail",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "isNot false",
@@ -2778,7 +2804,7 @@ TestRunResult {
},
TestGroupResult {
"name": "toThrowError promise/async throws if Error-like object is returned",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "passes",
@@ -2807,7 +2833,7 @@ TestRunResult {
},
TestGroupResult {
"name": "toThrowError expected is undefined",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "threw, but should not have (non-error falsey)",
@@ -2818,7 +2844,7 @@ TestRunResult {
},
TestGroupResult {
"name": "toThrow",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "to throw or not to throw",
@@ -2841,7 +2867,7 @@ TestRunResult {
},
TestGroupResult {
"name": "toThrow substring",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "passes",
@@ -2888,7 +2914,7 @@ TestRunResult {
},
TestGroupResult {
"name": "toThrow regexp",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "passes",
@@ -2929,7 +2955,7 @@ TestRunResult {
},
TestGroupResult {
"name": "toThrow error class",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "passes",
@@ -2976,7 +3002,7 @@ TestRunResult {
},
TestGroupResult {
"name": "toThrow error-message pass",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "isNot false",
@@ -2993,7 +3019,7 @@ TestRunResult {
},
TestGroupResult {
"name": "toThrow error-message fail",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "isNot false",
@@ -3016,7 +3042,7 @@ TestRunResult {
},
TestGroupResult {
"name": "toThrow asymmetric any-Class pass",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "isNot false",
@@ -3033,7 +3059,7 @@ TestRunResult {
},
TestGroupResult {
"name": "toThrow asymmetric any-Class fail",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "isNot false",
@@ -3050,7 +3076,7 @@ TestRunResult {
},
TestGroupResult {
"name": "toThrow asymmetric anything pass",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "isNot false",
@@ -3067,7 +3093,7 @@ TestRunResult {
},
TestGroupResult {
"name": "toThrow asymmetric anything fail",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "isNot false",
@@ -3084,7 +3110,7 @@ TestRunResult {
},
TestGroupResult {
"name": "toThrow asymmetric no-symbol pass",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "isNot false",
@@ -3101,7 +3127,7 @@ TestRunResult {
},
TestGroupResult {
"name": "toThrow asymmetric no-symbol fail",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "isNot false",
@@ -3118,7 +3144,7 @@ TestRunResult {
},
TestGroupResult {
"name": "toThrow asymmetric objectContaining pass",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "isNot false",
@@ -3135,7 +3161,7 @@ TestRunResult {
},
TestGroupResult {
"name": "toThrow asymmetric objectContaining fail",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "isNot false",
@@ -3152,7 +3178,7 @@ TestRunResult {
},
TestGroupResult {
"name": "toThrow promise/async throws if Error-like object is returned",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "passes",
@@ -3181,7 +3207,7 @@ TestRunResult {
},
TestGroupResult {
"name": "toThrow expected is undefined",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "threw, but should not have (non-error falsey)",
@@ -3195,10 +3221,10 @@ TestRunResult {
"totalTime": 257,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "recursively validates default Jest config",
@@ -3333,7 +3359,7 @@ TestRunResult {
},
TestCaseResult {
"error": undefined,
- "name": "Comments in config JSON using \\"//\\" key are not warned",
+ "name": "Comments in config JSON using "//" key are not warned",
"result": "success",
"time": 0,
},
@@ -3344,10 +3370,10 @@ TestRunResult {
"totalTime": 283,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "defaults",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "returns cached object if called multiple times",
@@ -3370,7 +3396,7 @@ TestRunResult {
},
TestGroupResult {
"name": "custom resolver in project config",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "returns cached object if called multiple times",
@@ -3393,7 +3419,7 @@ TestRunResult {
},
TestGroupResult {
"name": "malformed custom resolver in project config",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "missing resolveSnapshotPath throws",
@@ -3425,10 +3451,10 @@ TestRunResult {
"totalTime": 98,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "resolves to the result of generateEmptyCoverage upon success",
@@ -3448,10 +3474,10 @@ TestRunResult {
"totalTime": 199,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Returns source string with inline maps when no transformOptions is passed",
@@ -3468,28 +3494,28 @@ TestRunResult {
},
TestGroupResult {
"name": "caller option correctly merges from defaults and options",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "{\\"supportsDynamicImport\\":true,\\"supportsStaticESM\\":true} -> {\\"supportsDynamicImport\\":true,\\"supportsStaticESM\\":true}",
+ "name": "{"supportsDynamicImport":true,"supportsStaticESM":true} -> {"supportsDynamicImport":true,"supportsStaticESM":true}",
"result": "success",
"time": 6,
},
TestCaseResult {
"error": undefined,
- "name": "{\\"supportsDynamicImport\\":false,\\"supportsStaticESM\\":false} -> {\\"supportsDynamicImport\\":false,\\"supportsStaticESM\\":false}",
+ "name": "{"supportsDynamicImport":false,"supportsStaticESM":false} -> {"supportsDynamicImport":false,"supportsStaticESM":false}",
"result": "success",
"time": 11,
},
TestCaseResult {
"error": undefined,
- "name": "{\\"supportsStaticESM\\":false} -> {\\"supportsDynamicImport\\":false,\\"supportsStaticESM\\":false}",
+ "name": "{"supportsStaticESM":false} -> {"supportsDynamicImport":false,"supportsStaticESM":false}",
"result": "success",
"time": 13,
},
TestCaseResult {
"error": undefined,
- "name": "{\\"supportsDynamicImport\\":true} -> {\\"supportsDynamicImport\\":true,\\"supportsStaticESM\\":false}",
+ "name": "{"supportsDynamicImport":true} -> {"supportsDynamicImport":true,"supportsStaticESM":false}",
"result": "success",
"time": 11,
},
@@ -3500,19 +3526,19 @@ TestRunResult {
"totalTime": 371,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Resolve config path .js",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "file path with \\".js\\"",
+ "name": "file path with ".js"",
"result": "success",
"time": 9,
},
TestCaseResult {
"error": undefined,
- "name": "directory path with \\".js\\"",
+ "name": "directory path with ".js"",
"result": "success",
"time": 11,
},
@@ -3520,16 +3546,16 @@ TestRunResult {
},
TestGroupResult {
"name": "Resolve config path .ts",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "file path with \\".ts\\"",
+ "name": "file path with ".ts"",
"result": "success",
"time": 2,
},
TestCaseResult {
"error": undefined,
- "name": "directory path with \\".ts\\"",
+ "name": "directory path with ".ts"",
"result": "success",
"time": 3,
},
@@ -3537,16 +3563,16 @@ TestRunResult {
},
TestGroupResult {
"name": "Resolve config path .mjs",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "file path with \\".mjs\\"",
+ "name": "file path with ".mjs"",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "directory path with \\".mjs\\"",
+ "name": "directory path with ".mjs"",
"result": "success",
"time": 7,
},
@@ -3554,16 +3580,16 @@ TestRunResult {
},
TestGroupResult {
"name": "Resolve config path .cjs",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "file path with \\".cjs\\"",
+ "name": "file path with ".cjs"",
"result": "success",
"time": 2,
},
TestCaseResult {
"error": undefined,
- "name": "directory path with \\".cjs\\"",
+ "name": "directory path with ".cjs"",
"result": "success",
"time": 2,
},
@@ -3571,16 +3597,16 @@ TestRunResult {
},
TestGroupResult {
"name": "Resolve config path .json",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "file path with \\".json\\"",
+ "name": "file path with ".json"",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "directory path with \\".json\\"",
+ "name": "directory path with ".json"",
"result": "success",
"time": 3,
},
@@ -3591,10 +3617,10 @@ TestRunResult {
"totalTime": 183,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "groupTestsBySuites",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should handle empty results",
@@ -3668,10 +3694,10 @@ TestRunResult {
"totalTime": 425,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "keyToTestName()",
@@ -3740,7 +3766,7 @@ TestRunResult {
},
TestCaseResult {
"error": undefined,
- "name": "serialize handles \\\\r\\\\n",
+ "name": "serialize handles \\r\\n",
"result": "success",
"time": 1,
},
@@ -3748,7 +3774,7 @@ TestRunResult {
},
TestGroupResult {
"name": "ExtraLineBreaks",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "0 empty string",
@@ -3795,7 +3821,7 @@ TestRunResult {
},
TestGroupResult {
"name": "removeLinesBeforeExternalMatcherTrap",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "contains external matcher trap",
@@ -3812,7 +3838,7 @@ TestRunResult {
},
TestGroupResult {
"name": "DeepMerge with property matchers",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Correctly merges a nested object",
@@ -3850,10 +3876,10 @@ TestRunResult {
"totalTime": 214,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "test always",
@@ -3948,7 +3974,7 @@ TestRunResult {
},
TestGroupResult {
"name": "node-notifier is an optional dependency",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "without node-notifier uses mock function that throws an error",
@@ -3974,10 +4000,10 @@ TestRunResult {
"totalTime": 166,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Runtime CLI",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "fails with no path",
@@ -4009,10 +4035,10 @@ TestRunResult {
"totalTime": 4094.0000000000005,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "is available globally when matcher is unary",
@@ -4080,10 +4106,10 @@ TestRunResult {
"totalTime": 99,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "getCallsite",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "without source map",
@@ -4109,10 +4135,10 @@ TestRunResult {
"totalTime": 86,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "maps special values to valid options",
@@ -4144,10 +4170,10 @@ TestRunResult {
"totalTime": 53,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "calls handler on change value",
@@ -4173,10 +4199,10 @@ TestRunResult {
"totalTime": 91,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "docblock",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "extracts valid docblock with line comment",
@@ -4400,10 +4426,10 @@ TestRunResult {
"totalTime": 177,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "dedentLines non-null",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "no lines",
@@ -4456,7 +4482,7 @@ TestRunResult {
},
TestGroupResult {
"name": "dedentLines null",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "object key multi-line",
@@ -4518,10 +4544,10 @@ TestRunResult {
"totalTime": 94,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "getMaxWorkers",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Returns 1 when runInBand",
@@ -4550,7 +4576,7 @@ TestRunResult {
},
TestGroupResult {
"name": "getMaxWorkers % based",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "50% = 2 workers",
@@ -4576,10 +4602,10 @@ TestRunResult {
"totalTime": 67,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "wrapAnsiString()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "wraps a long string containing ansi chars",
@@ -4596,7 +4622,7 @@ TestRunResult {
},
TestGroupResult {
"name": "trimAndFormatPath()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "trims dirname",
@@ -4631,7 +4657,7 @@ TestRunResult {
},
TestGroupResult {
"name": "printDisplayName",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should default displayName color to white when displayName is a string",
@@ -4657,10 +4683,10 @@ TestRunResult {
"totalTime": 85,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "throw matcher can take func",
@@ -4671,7 +4697,7 @@ TestRunResult {
},
TestGroupResult {
"name": "throw matcher from promise",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "can take error",
@@ -4691,10 +4717,10 @@ TestRunResult {
"totalTime": 481,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "matcher returns matcher name, expected and actual values",
@@ -4708,10 +4734,10 @@ TestRunResult {
"totalTime": 131,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "validate pattern function",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "without passed args returns true",
@@ -4743,10 +4769,10 @@ TestRunResult {
"totalTime": 52,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "isBuiltinModule",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return true for the \`path\` module",
@@ -4778,10 +4804,10 @@ TestRunResult {
"totalTime": 36,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "throw when directly imported",
@@ -4795,10 +4821,10 @@ TestRunResult {
"totalTime": 533,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "replacePathSepForRegex() posix",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return the path",
@@ -4809,7 +4835,7 @@ TestRunResult {
},
TestGroupResult {
"name": "replacePathSepForRegex() win32",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should replace POSIX path separators",
@@ -4859,10 +4885,10 @@ TestRunResult {
"totalTime": 56,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "mock with 0 calls and default name",
@@ -4930,10 +4956,10 @@ TestRunResult {
"totalTime": 45,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "getWatermarks",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "that watermarks use thresholds as upper target",
@@ -4953,10 +4979,10 @@ TestRunResult {
"totalTime": 37,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "normal output, everything goes to stdout",
@@ -4976,10 +5002,10 @@ TestRunResult {
"totalTime": 148,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should call \`terminal-link\` correctly",
@@ -5011,10 +5037,10 @@ TestRunResult {
"totalTime": 30,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "toEqual duck type Text",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "isNot false",
@@ -5031,7 +5057,7 @@ TestRunResult {
},
TestGroupResult {
"name": "toEqual duck type Element",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "isNot false",
@@ -5048,7 +5074,7 @@ TestRunResult {
},
TestGroupResult {
"name": "toEqual duck type Fragment",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "isNot false",
@@ -5065,7 +5091,7 @@ TestRunResult {
},
TestGroupResult {
"name": "toEqual document createTextNode",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "isNot false",
@@ -5082,7 +5108,7 @@ TestRunResult {
},
TestGroupResult {
"name": "toEqual document createElement",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "isNot false",
@@ -5099,7 +5125,7 @@ TestRunResult {
},
TestGroupResult {
"name": "toEqual document createDocumentFragment",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "isNot false",
@@ -5119,10 +5145,10 @@ TestRunResult {
"totalTime": 99,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "NodeEnvironment",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "uses a copy of the process object",
@@ -5166,10 +5192,10 @@ TestRunResult {
"totalTime": 184,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Retrieves the snapshot status",
@@ -5195,10 +5221,10 @@ TestRunResult {
"totalTime": 28,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "validates yargs special options",
@@ -5242,10 +5268,10 @@ TestRunResult {
"totalTime": 83,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "creates a snapshot summary",
@@ -5277,10 +5303,10 @@ TestRunResult {
"totalTime": 49,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "for multiline test name returns",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "test name with highlighted pattern and replaced line breaks",
@@ -5291,7 +5317,7 @@ TestRunResult {
},
TestGroupResult {
"name": "for one line test name with pattern in the head returns",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "test name with highlighted pattern",
@@ -5314,7 +5340,7 @@ TestRunResult {
},
TestGroupResult {
"name": "for one line test name pattern in the middle",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "test name with highlighted pattern returns",
@@ -5343,7 +5369,7 @@ TestRunResult {
},
TestGroupResult {
"name": "for one line test name pattern in the tail returns",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "test name with highlighted pattern",
@@ -5369,10 +5395,10 @@ TestRunResult {
"totalTime": 129,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "shouldInstrument should return true",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "when testRegex is provided and file is not a test file",
@@ -5443,7 +5469,7 @@ TestRunResult {
},
TestGroupResult {
"name": "shouldInstrument should return false",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "if collectCoverage is falsy",
@@ -5535,10 +5561,10 @@ TestRunResult {
"totalTime": 155,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "ScriptTransformer",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "transforms a file properly",
@@ -5678,10 +5704,10 @@ TestRunResult {
"totalTime": 1660,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "simple test",
@@ -5701,10 +5727,10 @@ TestRunResult {
"totalTime": 2902,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "moduleMocker getMetadata",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "returns the function \`name\` property",
@@ -5769,7 +5795,7 @@ TestRunResult {
},
TestGroupResult {
"name": "moduleMocker generateFromMetadata",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "forwards the function name property",
@@ -5972,7 +5998,7 @@ TestRunResult {
},
TestGroupResult {
"name": "moduleMocker generateFromMetadata mocked functions",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "tracks calls to mocks",
@@ -6043,7 +6069,7 @@ TestRunResult {
},
TestGroupResult {
"name": "moduleMocker generateFromMetadata return values",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "tracks return values",
@@ -6066,7 +6092,7 @@ TestRunResult {
},
TestGroupResult {
"name": "moduleMocker generateFromMetadata invocationCallOrder",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "tracks invocationCallOrder made by mocks",
@@ -6095,7 +6121,7 @@ TestRunResult {
},
TestGroupResult {
"name": "moduleMocker getMockImplementation",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should mock calls to a mock function",
@@ -6106,7 +6132,7 @@ TestRunResult {
},
TestGroupResult {
"name": "moduleMocker mockImplementationOnce",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should mock constructor",
@@ -6129,7 +6155,7 @@ TestRunResult {
},
TestGroupResult {
"name": "moduleMocker",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "mockReturnValue does not override mockImplementationOnce",
@@ -6182,7 +6208,7 @@ TestRunResult {
},
TestGroupResult {
"name": "moduleMocker spyOn",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should work",
@@ -6211,7 +6237,7 @@ TestRunResult {
},
TestGroupResult {
"name": "moduleMocker spyOnProperty",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should work - getter",
@@ -6261,10 +6287,10 @@ TestRunResult {
"totalTime": 509,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "beforeEach is executed before each test in current/child describe blocks",
@@ -6290,10 +6316,10 @@ TestRunResult {
"totalTime": 3762,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Runtime requireModule",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "finds haste modules",
@@ -6454,7 +6480,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runtime requireModule on node >=12.12.0",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "overrides module.createRequire",
@@ -6468,10 +6494,10 @@ TestRunResult {
"totalTime": 2439,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Runtime jest.mock",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "uses explicitly set mocks instead of automocking",
@@ -6494,7 +6520,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runtime jest.setMock",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "uses explicitly set mocks instead of automocking",
@@ -6508,10 +6534,10 @@ TestRunResult {
"totalTime": 743,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "test/it error throwing",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "it doesn't throw an error with valid arguments",
@@ -6567,10 +6593,10 @@ TestRunResult {
"totalTime": 300,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "BaseWorkerPool",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "throws error when createWorker is not defined",
@@ -6623,7 +6649,7 @@ TestRunResult {
},
TestGroupResult {
"name": "BaseWorkerPool end",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "ends all workers",
@@ -6649,10 +6675,10 @@ TestRunResult {
"totalTime": 653,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "does not incorrectly match identity-obj-proxy as Immutable object",
@@ -6663,7 +6689,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Immutable.OrderedSet",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "supports an empty collection {min: true}",
@@ -6740,7 +6766,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Immutable.List",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "supports an empty collection {min: true}",
@@ -6817,7 +6843,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Immutable.Stack",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "supports an empty collection {min: true}",
@@ -6894,7 +6920,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Immutable.Set",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "supports an empty collection {min: true}",
@@ -6971,7 +6997,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Immutable.Map",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "supports an empty collection {min: true}",
@@ -7030,7 +7056,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Immutable.OrderedMap",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "supports an empty collection {min: true}",
@@ -7095,7 +7121,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Immutable.Record",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "supports an empty record {min: true}",
@@ -7160,7 +7186,7 @@ TestRunResult {
},
TestGroupResult {
"name": "indentation of heterogeneous collections",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "empty Immutable.List as child of Object",
@@ -7189,7 +7215,7 @@ TestRunResult {
},
TestGroupResult {
"name": "indent option",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "default implicit: 2 spaces",
@@ -7218,7 +7244,7 @@ TestRunResult {
},
TestGroupResult {
"name": "maxDepth option",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Immutable.List as child of Object",
@@ -7247,7 +7273,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Immutable.Seq",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "supports an empty sequence from array {min: true}",
@@ -7336,7 +7362,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Immutable.Seq lazy entries",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "from object properties",
@@ -7353,7 +7379,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Immutable.Seq lazy values",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "from Immutable.Range",
@@ -7391,10 +7417,10 @@ TestRunResult {
"totalTime": 443,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Runtime requireModule",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "installs source maps if available",
@@ -7408,10 +7434,10 @@ TestRunResult {
"totalTime": 584,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "JSDomEnvironment",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should configure setTimeout/setInterval to use the browser api",
@@ -7431,10 +7457,10 @@ TestRunResult {
"totalTime": 783,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "babel-plugin-jest-hoist",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "automatic react runtime",
@@ -7466,10 +7492,10 @@ TestRunResult {
"totalTime": 347,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "passes fork options down to child_process.fork, adding the defaults",
@@ -7579,10 +7605,10 @@ TestRunResult {
"totalTime": 184,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "jest-each .test",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "throws an error when not called with an array",
@@ -7653,7 +7679,7 @@ TestRunResult {
},
TestGroupResult {
"name": "jest-each .test.concurrent",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "throws an error when not called with an array",
@@ -7724,7 +7750,7 @@ TestRunResult {
},
TestGroupResult {
"name": "jest-each .test.concurrent.only",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "throws an error when not called with an array",
@@ -7795,7 +7821,7 @@ TestRunResult {
},
TestGroupResult {
"name": "jest-each .test.concurrent.skip",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "throws an error when not called with an array",
@@ -7890,7 +7916,7 @@ TestRunResult {
},
TestGroupResult {
"name": "jest-each .test.only",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "throws an error when not called with an array",
@@ -7961,7 +7987,7 @@ TestRunResult {
},
TestGroupResult {
"name": "jest-each .it",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "throws an error when not called with an array",
@@ -8032,7 +8058,7 @@ TestRunResult {
},
TestGroupResult {
"name": "jest-each .fit",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "throws an error when not called with an array",
@@ -8103,7 +8129,7 @@ TestRunResult {
},
TestGroupResult {
"name": "jest-each .it.only",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "throws an error when not called with an array",
@@ -8174,7 +8200,7 @@ TestRunResult {
},
TestGroupResult {
"name": "jest-each .describe",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "throws an error when not called with an array",
@@ -8245,7 +8271,7 @@ TestRunResult {
},
TestGroupResult {
"name": "jest-each .fdescribe",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "throws an error when not called with an array",
@@ -8316,7 +8342,7 @@ TestRunResult {
},
TestGroupResult {
"name": "jest-each .describe.only",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "throws an error when not called with an array",
@@ -8387,7 +8413,7 @@ TestRunResult {
},
TestGroupResult {
"name": "jest-each done callback",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "calls [ 'test' ] with done when cb function has more args than params of given test row",
@@ -8452,7 +8478,7 @@ TestRunResult {
},
TestGroupResult {
"name": "jest-each .xtest",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "calls global with given title",
@@ -8481,7 +8507,7 @@ TestRunResult {
},
TestGroupResult {
"name": "jest-each .test.skip",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "calls global with given title",
@@ -8510,7 +8536,7 @@ TestRunResult {
},
TestGroupResult {
"name": "jest-each .xit",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "calls global with given title",
@@ -8539,7 +8565,7 @@ TestRunResult {
},
TestGroupResult {
"name": "jest-each .it.skip",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "calls global with given title",
@@ -8568,7 +8594,7 @@ TestRunResult {
},
TestGroupResult {
"name": "jest-each .xdescribe",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "calls global with given title",
@@ -8597,7 +8623,7 @@ TestRunResult {
},
TestGroupResult {
"name": "jest-each .describe.skip",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "calls global with given title",
@@ -8629,10 +8655,10 @@ TestRunResult {
"totalTime": 192,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "jest-each .test",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "throws error when there are additional words in first column heading",
@@ -8751,7 +8777,7 @@ TestRunResult {
},
TestGroupResult {
"name": "jest-each .test.concurrent",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "throws error when there are additional words in first column heading",
@@ -8888,7 +8914,7 @@ TestRunResult {
},
TestGroupResult {
"name": "jest-each .test.concurrent.only",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "throws error when there are additional words in first column heading",
@@ -9007,7 +9033,7 @@ TestRunResult {
},
TestGroupResult {
"name": "jest-each .test.concurrent.skip",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "throws error when there are additional words in first column heading",
@@ -9144,7 +9170,7 @@ TestRunResult {
},
TestGroupResult {
"name": "jest-each .test.only",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "throws error when there are additional words in first column heading",
@@ -9263,7 +9289,7 @@ TestRunResult {
},
TestGroupResult {
"name": "jest-each .it",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "throws error when there are additional words in first column heading",
@@ -9382,7 +9408,7 @@ TestRunResult {
},
TestGroupResult {
"name": "jest-each .fit",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "throws error when there are additional words in first column heading",
@@ -9501,7 +9527,7 @@ TestRunResult {
},
TestGroupResult {
"name": "jest-each .it.only",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "throws error when there are additional words in first column heading",
@@ -9620,7 +9646,7 @@ TestRunResult {
},
TestGroupResult {
"name": "jest-each .describe",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "throws error when there are additional words in first column heading",
@@ -9739,7 +9765,7 @@ TestRunResult {
},
TestGroupResult {
"name": "jest-each .fdescribe",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "throws error when there are additional words in first column heading",
@@ -9858,7 +9884,7 @@ TestRunResult {
},
TestGroupResult {
"name": "jest-each .describe.only",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "throws error when there are additional words in first column heading",
@@ -9977,7 +10003,7 @@ TestRunResult {
},
TestGroupResult {
"name": "jest-each done callback",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "calls [ 'test' ] with done when cb function has more args than params of given test row",
@@ -10036,7 +10062,7 @@ TestRunResult {
},
TestGroupResult {
"name": "jest-each .xtest",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "calls global with given title",
@@ -10059,7 +10085,7 @@ TestRunResult {
},
TestGroupResult {
"name": "jest-each .test.skip",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "calls global with given title",
@@ -10082,7 +10108,7 @@ TestRunResult {
},
TestGroupResult {
"name": "jest-each .xit",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "calls global with given title",
@@ -10105,7 +10131,7 @@ TestRunResult {
},
TestGroupResult {
"name": "jest-each .it.skip",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "calls global with given title",
@@ -10128,7 +10154,7 @@ TestRunResult {
},
TestGroupResult {
"name": "jest-each .xdescribe",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "calls global with given title",
@@ -10151,7 +10177,7 @@ TestRunResult {
},
TestGroupResult {
"name": "jest-each .describe.skip",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "calls global with given title",
@@ -10177,10 +10203,10 @@ TestRunResult {
"totalTime": 483,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "supports a single element with no props or children",
@@ -10393,7 +10419,7 @@ TestRunResult {
},
TestCaseResult {
"error": undefined,
- "name": "throws if theme option is not of type \\"object\\"",
+ "name": "throws if theme option is not of type "object"",
"result": "success",
"time": 0,
},
@@ -10449,7 +10475,7 @@ TestRunResult {
},
TestGroupResult {
"name": "test object for subset match",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "undefined props",
@@ -10466,7 +10492,7 @@ TestRunResult {
},
TestGroupResult {
"name": "indent option",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "default implicit: 2 spaces",
@@ -10495,7 +10521,7 @@ TestRunResult {
},
TestGroupResult {
"name": "maxDepth option",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "elements",
@@ -10512,7 +10538,7 @@ TestRunResult {
},
TestGroupResult {
"name": "React.memo without displayName",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "renders the component name",
@@ -10523,7 +10549,7 @@ TestRunResult {
},
TestGroupResult {
"name": "React.memo with displayName",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "renders the displayName of component before memoizing",
@@ -10543,10 +10569,10 @@ TestRunResult {
"totalTime": 325,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "tests are not marked done until their parent afterAll runs",
@@ -10590,10 +10616,10 @@ TestRunResult {
"totalTime": 5755,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "prettyFormat()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "prints empty arguments",
@@ -11072,7 +11098,7 @@ TestRunResult {
},
TestGroupResult {
"name": "prettyFormat() indent option",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "default implicit: 2 spaces",
@@ -11101,7 +11127,7 @@ TestRunResult {
},
TestGroupResult {
"name": "prettyFormat() min",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "prints some basic values in min mode",
@@ -11127,10 +11153,10 @@ TestRunResult {
"totalTime": 219,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Farm",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "sends a request to one worker",
@@ -11198,10 +11224,10 @@ TestRunResult {
"totalTime": 158,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "lazily requires the file",
@@ -11228,13 +11254,13 @@ TestRunResult {
},
TestCaseResult {
"error": undefined,
- "name": "calls the main module if the method call is \\"default\\"",
+ "name": "calls the main module if the method call is "default"",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "calls the main export if the method call is \\"default\\" and it is a Babel transpiled one",
+ "name": "calls the main export if the method call is "default" and it is a Babel transpiled one",
"result": "success",
"time": 1,
},
@@ -11269,10 +11295,10 @@ TestRunResult {
"totalTime": 120,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "queueRunner",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "runs every function in the queue.",
@@ -11316,10 +11342,10 @@ TestRunResult {
"totalTime": 93,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "passes fork options down to child_process.fork, adding the defaults",
@@ -11417,10 +11443,10 @@ TestRunResult {
"totalTime": 258,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "lazily requires the file",
@@ -11447,13 +11473,13 @@ TestRunResult {
},
TestCaseResult {
"error": undefined,
- "name": "calls the main module if the method call is \\"default\\"",
+ "name": "calls the main module if the method call is "default"",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "calls the main export if the method call is \\"default\\" and it is a Babel transpiled one",
+ "name": "calls the main export if the method call is "default" and it is a Babel transpiled one",
"result": "success",
"time": 1,
},
@@ -11488,10 +11514,10 @@ TestRunResult {
"totalTime": 135,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "injects the serializable module map into each worker in watch mode",
@@ -11511,13 +11537,13 @@ TestRunResult {
"totalTime": 905,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "beforeEach hooks error throwing",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "beforeEach throws an error when \\"String\\" is provided as a first argument to it",
+ "name": "beforeEach throws an error when "String" is provided as a first argument to it",
"result": "success",
"time": 19,
},
@@ -11567,10 +11593,10 @@ TestRunResult {
},
TestGroupResult {
"name": "beforeAll hooks error throwing",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "beforeAll throws an error when \\"String\\" is provided as a first argument to it",
+ "name": "beforeAll throws an error when "String" is provided as a first argument to it",
"result": "success",
"time": 0,
},
@@ -11620,10 +11646,10 @@ TestRunResult {
},
TestGroupResult {
"name": "afterEach hooks error throwing",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "afterEach throws an error when \\"String\\" is provided as a first argument to it",
+ "name": "afterEach throws an error when "String" is provided as a first argument to it",
"result": "success",
"time": 0,
},
@@ -11673,10 +11699,10 @@ TestRunResult {
},
TestGroupResult {
"name": "afterAll hooks error throwing",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "afterAll throws an error when \\"String\\" is provided as a first argument to it",
+ "name": "afterAll throws an error when "String" is provided as a first argument to it",
"result": "success",
"time": 1,
},
@@ -11729,10 +11755,10 @@ TestRunResult {
"totalTime": 127,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Using V8 implementation",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "throws the error with an invalid serialization",
@@ -11743,7 +11769,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Using V8 implementation Object 0",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "serializes/deserializes in memory",
@@ -11760,7 +11786,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Using V8 implementation Object 1",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "serializes/deserializes in memory",
@@ -11777,7 +11803,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Using V8 implementation Object 2",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "serializes/deserializes in memory",
@@ -11794,7 +11820,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Using V8 implementation Object 3",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "serializes/deserializes in memory",
@@ -11811,7 +11837,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Using V8 implementation Object 4",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "serializes/deserializes in memory",
@@ -11828,7 +11854,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Using V8 implementation Object 5",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "serializes/deserializes in memory",
@@ -11845,7 +11871,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Using V8 implementation Object 6",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "serializes/deserializes in memory",
@@ -11862,7 +11888,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Using V8 implementation Object 7",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "serializes/deserializes in memory",
@@ -11882,10 +11908,10 @@ TestRunResult {
"totalTime": 158,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "CustomConsole assert",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "do not log when the assertion is truthy",
@@ -11914,7 +11940,7 @@ TestRunResult {
},
TestGroupResult {
"name": "CustomConsole count",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "count using the default counter",
@@ -11943,7 +11969,7 @@ TestRunResult {
},
TestGroupResult {
"name": "CustomConsole group",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "group without label",
@@ -11972,7 +11998,7 @@ TestRunResult {
},
TestGroupResult {
"name": "CustomConsole time",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return the time between time() and timeEnd() on default timer",
@@ -11989,7 +12015,7 @@ TestRunResult {
},
TestGroupResult {
"name": "CustomConsole dir",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should print the deepest value",
@@ -12000,7 +12026,7 @@ TestRunResult {
},
TestGroupResult {
"name": "CustomConsole timeLog",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return the time between time() and timeEnd() on default timer",
@@ -12029,7 +12055,7 @@ TestRunResult {
},
TestGroupResult {
"name": "CustomConsole console",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should be able to initialize console instance",
@@ -12043,10 +12069,10 @@ TestRunResult {
"totalTime": 171,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "CustomConsole log",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should print to stdout",
@@ -12057,7 +12083,7 @@ TestRunResult {
},
TestGroupResult {
"name": "CustomConsole error",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should print to stderr",
@@ -12068,7 +12094,7 @@ TestRunResult {
},
TestGroupResult {
"name": "CustomConsole warn",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should print to stderr",
@@ -12079,7 +12105,7 @@ TestRunResult {
},
TestGroupResult {
"name": "CustomConsole assert",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "do not log when the assertion is truthy",
@@ -12108,7 +12134,7 @@ TestRunResult {
},
TestGroupResult {
"name": "CustomConsole count",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "count using the default counter",
@@ -12137,7 +12163,7 @@ TestRunResult {
},
TestGroupResult {
"name": "CustomConsole group",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "group without label",
@@ -12166,7 +12192,7 @@ TestRunResult {
},
TestGroupResult {
"name": "CustomConsole time",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return the time between time() and timeEnd() on default timer",
@@ -12183,7 +12209,7 @@ TestRunResult {
},
TestGroupResult {
"name": "CustomConsole dir",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should print the deepest value",
@@ -12194,7 +12220,7 @@ TestRunResult {
},
TestGroupResult {
"name": "CustomConsole timeLog",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return the time between time() and timeEnd() on default timer",
@@ -12223,7 +12249,7 @@ TestRunResult {
},
TestGroupResult {
"name": "CustomConsole console",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should be able to initialize console instance",
@@ -12237,10 +12263,10 @@ TestRunResult {
"totalTime": 115,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "DOMCollection plugin for object properties",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "supports DOMStringMap",
@@ -12263,7 +12289,7 @@ TestRunResult {
},
TestGroupResult {
"name": "DOMCollection plugin for list items",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "supports HTMLCollection for getElementsByTagName",
@@ -12313,10 +12339,10 @@ TestRunResult {
"totalTime": 64,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "test/it.todo error throwing",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "todo throws error when given no arguments",
@@ -12342,10 +12368,10 @@ TestRunResult {
"totalTime": 81,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "sorts by file size if there is no timing information",
@@ -12401,10 +12427,10 @@ TestRunResult {
"totalTime": 251,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Suite",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "doesn't throw on addExpectationResult when there are no children",
@@ -12418,10 +12444,10 @@ TestRunResult {
"totalTime": 84,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "supports any(String)",
@@ -12618,7 +12644,7 @@ TestRunResult {
},
TestGroupResult {
"name": "indent option",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "default implicit: 2 spaces",
@@ -12647,7 +12673,7 @@ TestRunResult {
},
TestGroupResult {
"name": "maxDepth option",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "matchers as leaf nodes",
@@ -12667,10 +12693,10 @@ TestRunResult {
"totalTime": 137,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "ConvertAnsi plugin",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "supports style.red",
@@ -12714,10 +12740,10 @@ TestRunResult {
"totalTime": 43,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "getConsoleOutput",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "takes noStackTrace and pass it on for assert",
@@ -12797,10 +12823,10 @@ TestRunResult {
"totalTime": 56,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "expectationResultFactory",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "returns the result if passed.",
@@ -12850,10 +12876,10 @@ TestRunResult {
"totalTime": 70,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "array .add",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "returns the result of adding 0 to 0",
@@ -12876,7 +12902,7 @@ TestRunResult {
},
TestGroupResult {
"name": "concurrent .add",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "returns the result of adding 0 to 0",
@@ -12899,7 +12925,7 @@ TestRunResult {
},
TestGroupResult {
"name": "template .add",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "returns 0 when given 0 and 0",
@@ -12922,7 +12948,7 @@ TestRunResult {
},
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "throws an error when not called with the right number of arguments",
@@ -12936,10 +12962,10 @@ TestRunResult {
"totalTime": 44,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "pretty-format",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "prints global window as constructor name alone",
@@ -12950,7 +12976,7 @@ TestRunResult {
},
TestGroupResult {
"name": "DOMElement Plugin",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "supports a single HTML element",
@@ -13105,7 +13131,7 @@ TestRunResult {
},
TestGroupResult {
"name": "DOMElement Plugin matches constructor name of SVG elements",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "jsdom 9 and 10",
@@ -13125,10 +13151,10 @@ TestRunResult {
"totalTime": 148,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "formatTestResults",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "includes test full name",
@@ -13142,10 +13168,10 @@ TestRunResult {
"totalTime": 53,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "exposes the right API using default working",
@@ -13201,13 +13227,13 @@ TestRunResult {
"totalTime": 230,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "beforeEach hooks error throwing",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "beforeEach throws an error when \\"String\\" is provided as a first argument to it",
+ "name": "beforeEach throws an error when "String" is provided as a first argument to it",
"result": "success",
"time": 2,
},
@@ -13257,10 +13283,10 @@ TestRunResult {
},
TestGroupResult {
"name": "beforeAll hooks error throwing",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "beforeAll throws an error when \\"String\\" is provided as a first argument to it",
+ "name": "beforeAll throws an error when "String" is provided as a first argument to it",
"result": "success",
"time": 0,
},
@@ -13310,10 +13336,10 @@ TestRunResult {
},
TestGroupResult {
"name": "afterEach hooks error throwing",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "afterEach throws an error when \\"String\\" is provided as a first argument to it",
+ "name": "afterEach throws an error when "String" is provided as a first argument to it",
"result": "success",
"time": 0,
},
@@ -13363,10 +13389,10 @@ TestRunResult {
},
TestGroupResult {
"name": "afterAll hooks error throwing",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "afterAll throws an error when \\"String\\" is provided as a first argument to it",
+ "name": "afterAll throws an error when "String" is provided as a first argument to it",
"result": "success",
"time": 1,
},
@@ -13419,10 +13445,10 @@ TestRunResult {
"totalTime": 51,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Jasmine2Reporter",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "reports nested suites",
@@ -13436,10 +13462,10 @@ TestRunResult {
"totalTime": 107,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "test/it.todo error throwing",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "it throws error when given no arguments",
@@ -13465,10 +13491,10 @@ TestRunResult {
"totalTime": 27,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "test/it error throwing",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "it throws error with missing callback function",
@@ -13512,10 +13538,10 @@ TestRunResult {
"totalTime": 32,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "iterators",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "works for arrays",
@@ -13547,10 +13573,10 @@ TestRunResult {
"totalTime": 43,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "pTimeout",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "calls \`clearTimeout\` and resolves when \`promise\` resolves.",
@@ -13576,10 +13602,10 @@ TestRunResult {
"totalTime": 44,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "creation of a cache key",
@@ -13593,10 +13619,10 @@ TestRunResult {
"totalTime": 75,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "concurrent",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should add 1 to number",
@@ -13622,10 +13648,10 @@ TestRunResult {
"totalTime": 24,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "global.test",
@@ -13639,10 +13665,10 @@ TestRunResult {
"totalTime": 23,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "ReactElement Plugin",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "serializes forwardRef without displayName",
@@ -13668,10 +13694,10 @@ TestRunResult {
"totalTime": 64,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "returns the shared tasks in FIFO ordering",
@@ -13697,10 +13723,10 @@ TestRunResult {
"totalTime": 48,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "returns the tasks in order",
@@ -13738,10 +13764,10 @@ TestRunResult {
"totalTime": 63,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "SearchSource isTestFilePath",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "supports ../ paths and unix separators via testRegex",
@@ -13764,7 +13790,7 @@ TestRunResult {
},
TestGroupResult {
"name": "SearchSource testPathsMatching",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "finds tests matching a pattern via testRegex",
@@ -13847,7 +13873,7 @@ TestRunResult {
},
TestGroupResult {
"name": "SearchSource findRelatedTests",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "makes sure a file is related to itself",
@@ -13870,7 +13896,7 @@ TestRunResult {
},
TestGroupResult {
"name": "SearchSource findRelatedTestsFromPattern",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "returns empty search result for empty input",
@@ -13911,7 +13937,7 @@ TestRunResult {
},
TestGroupResult {
"name": "SearchSource findRelatedSourcesFromTestsInChangedFiles",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "return empty set if no SCM",
@@ -13931,10 +13957,10 @@ TestRunResult {
"totalTime": 2596,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should throw if passed two arguments",
@@ -13945,7 +13971,7 @@ TestRunResult {
},
TestGroupResult {
"name": ".rejects",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should reject",
@@ -13966,13 +13992,13 @@ TestRunResult {
},
TestCaseResult {
"error": undefined,
- "name": "fails non-promise value \\"a\\" synchronously",
+ "name": "fails non-promise value "a" synchronously",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "fails non-promise value \\"a\\"",
+ "name": "fails non-promise value "a"",
"result": "success",
"time": 2,
},
@@ -14002,13 +14028,13 @@ TestRunResult {
},
TestCaseResult {
"error": undefined,
- "name": "fails non-promise value {\\"a\\": 1} synchronously",
+ "name": "fails non-promise value {"a": 1} synchronously",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "fails non-promise value {\\"a\\": 1}",
+ "name": "fails non-promise value {"a": 1}",
"result": "success",
"time": 0,
},
@@ -14070,7 +14096,7 @@ TestRunResult {
},
TestGroupResult {
"name": ".resolves",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should resolve",
@@ -14079,13 +14105,13 @@ TestRunResult {
},
TestCaseResult {
"error": undefined,
- "name": "fails non-promise value \\"a\\" synchronously",
+ "name": "fails non-promise value "a" synchronously",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "fails non-promise value \\"a\\"",
+ "name": "fails non-promise value "a"",
"result": "success",
"time": 0,
},
@@ -14115,13 +14141,13 @@ TestRunResult {
},
TestCaseResult {
"error": undefined,
- "name": "fails non-promise value {\\"a\\": 1} synchronously",
+ "name": "fails non-promise value {"a": 1} synchronously",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "fails non-promise value {\\"a\\": 1}",
+ "name": "fails non-promise value {"a": 1}",
"result": "success",
"time": 0,
},
@@ -14183,7 +14209,7 @@ TestRunResult {
},
TestGroupResult {
"name": ".toBe()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "does not throw",
@@ -14216,25 +14242,25 @@ TestRunResult {
},
TestCaseResult {
"error": undefined,
- "name": "fails for: {\\"a\\": 1} and {\\"a\\": 1}",
+ "name": "fails for: {"a": 1} and {"a": 1}",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "fails for: {\\"a\\": 1} and {\\"a\\": 5}",
+ "name": "fails for: {"a": 1} and {"a": 5}",
"result": "success",
"time": 2,
},
TestCaseResult {
"error": undefined,
- "name": "fails for: {\\"a\\": [Function a], \\"b\\": 2} and {\\"a\\": Any, \\"b\\": 2}",
+ "name": "fails for: {"a": [Function a], "b": 2} and {"a": Any, "b": 2}",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "fails for: {\\"a\\": undefined, \\"b\\": 2} and {\\"b\\": 2}",
+ "name": "fails for: {"a": undefined, "b": 2} and {"b": 2}",
"result": "success",
"time": 8,
},
@@ -14270,37 +14296,37 @@ TestRunResult {
},
TestCaseResult {
"error": undefined,
- "name": "fails for: \\"abc\\" and \\"cde\\"",
+ "name": "fails for: "abc" and "cde"",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "fails for: \\"painless JavaScript testing\\" and \\"delightful JavaScript testing\\"",
+ "name": "fails for: "painless JavaScript testing" and "delightful JavaScript testing"",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "fails for: \\"\\" and \\"compare one-line string to empty string\\"",
+ "name": "fails for: "" and "compare one-line string to empty string"",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "fails for: \\"with
-trailing space\\" and \\"without trailing space\\"",
+ "name": "fails for: "with
+trailing space" and "without trailing space"",
"result": "success",
"time": 8,
},
TestCaseResult {
"error": undefined,
- "name": "fails for: \\"four
+ "name": "fails for: "four
4
line
-string\\" and \\"3
+string" and "3
line
-string\\"",
+string"",
"result": "success",
"time": 0,
},
@@ -14330,7 +14356,7 @@ string\\"",
},
TestCaseResult {
"error": undefined,
- "name": "fails for: {\\"a\\": 1n} and {\\"a\\": 1n}",
+ "name": "fails for: {"a": 1n} and {"a": 1n}",
"result": "success",
"time": 0,
},
@@ -14348,7 +14374,7 @@ string\\"",
},
TestCaseResult {
"error": undefined,
- "name": "fails for '\\"a\\"' with '.not'",
+ "name": "fails for '"a"' with '.not'",
"result": "success",
"time": 0,
},
@@ -14404,7 +14430,7 @@ string\\"",
},
TestGroupResult {
"name": ".toStrictEqual()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "does not ignore keys with undefined values",
@@ -14481,7 +14507,7 @@ string\\"",
},
TestGroupResult {
"name": ".toEqual()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "{pass: false} expect(true).toEqual(false)",
@@ -14532,13 +14558,13 @@ string\\"",
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect(\\"abc\\").toEqual({\\"0\\": \\"a\\", \\"1\\": \\"b\\", \\"2\\": \\"c\\"})",
+ "name": "{pass: false} expect("abc").toEqual({"0": "a", "1": "b", "2": "c"})",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"0\\": \\"a\\", \\"1\\": \\"b\\", \\"2\\": \\"c\\"}).toEqual(\\"abc\\")",
+ "name": "{pass: false} expect({"0": "a", "1": "b", "2": "c"}).toEqual("abc")",
"result": "success",
"time": 1,
},
@@ -14550,75 +14576,75 @@ string\\"",
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"a\\": 1}).toEqual({\\"a\\": 2})",
+ "name": "{pass: false} expect({"a": 1}).toEqual({"a": 2})",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"a\\": 5}).toEqual({\\"b\\": 6})",
+ "name": "{pass: false} expect({"a": 5}).toEqual({"b": 6})",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"foo\\": {\\"bar\\": 1}}).toEqual({\\"foo\\": {}})",
+ "name": "{pass: false} expect({"foo": {"bar": 1}}).toEqual({"foo": {}})",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"getterAndSetter\\": {}}).toEqual({\\"getterAndSetter\\": {\\"foo\\": \\"bar\\"}})",
+ "name": "{pass: false} expect({"getterAndSetter": {}}).toEqual({"getterAndSetter": {"foo": "bar"}})",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"frozenGetterAndSetter\\": {}}).toEqual({\\"frozenGetterAndSetter\\": {\\"foo\\": \\"bar\\"}})",
+ "name": "{pass: false} expect({"frozenGetterAndSetter": {}}).toEqual({"frozenGetterAndSetter": {"foo": "bar"}})",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"getter\\": {}}).toEqual({\\"getter\\": {\\"foo\\": \\"bar\\"}})",
+ "name": "{pass: false} expect({"getter": {}}).toEqual({"getter": {"foo": "bar"}})",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"frozenGetter\\": {}}).toEqual({\\"frozenGetter\\": {\\"foo\\": \\"bar\\"}})",
+ "name": "{pass: false} expect({"frozenGetter": {}}).toEqual({"frozenGetter": {"foo": "bar"}})",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"setter\\": undefined}).toEqual({\\"setter\\": {\\"foo\\": \\"bar\\"}})",
+ "name": "{pass: false} expect({"setter": undefined}).toEqual({"setter": {"foo": "bar"}})",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"frozenSetter\\": undefined}).toEqual({\\"frozenSetter\\": {\\"foo\\": \\"bar\\"}})",
+ "name": "{pass: false} expect({"frozenSetter": undefined}).toEqual({"frozenSetter": {"foo": "bar"}})",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect(\\"banana\\").toEqual(\\"apple\\")",
+ "name": "{pass: false} expect("banana").toEqual("apple")",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect(\\"1 234,57 $\\").toEqual(\\"1 234,57 $\\")",
+ "name": "{pass: false} expect("1 234,57 $").toEqual("1 234,57 $")",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect(\\"type TypeName = T extends Function ? \\\\\\"function\\\\\\" : \\\\\\"object\\\\\\";\\").toEqual(\\"type TypeName = T extends Function
-? \\\\\\"function\\\\\\"
-: \\\\\\"object\\\\\\";\\")",
+ "name": "{pass: false} expect("type TypeName = T extends Function ? \\"function\\" : \\"object\\";").toEqual("type TypeName = T extends Function
+? \\"function\\"
+: \\"object\\";")",
"result": "success",
"time": 1,
},
@@ -14708,55 +14734,55 @@ string\\"",
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect(Map {1 => \\"one\\", 2 => \\"two\\"}).toEqual(Map {1 => \\"one\\"})",
+ "name": "{pass: false} expect(Map {1 => "one", 2 => "two"}).toEqual(Map {1 => "one"})",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect(Map {\\"a\\" => 0}).toEqual(Map {\\"b\\" => 0})",
+ "name": "{pass: false} expect(Map {"a" => 0}).toEqual(Map {"b" => 0})",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect(Map {\\"v\\" => 1}).toEqual(Map {\\"v\\" => 2})",
+ "name": "{pass: false} expect(Map {"v" => 1}).toEqual(Map {"v" => 2})",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect(Map {[\\"v\\"] => 1}).toEqual(Map {[\\"v\\"] => 2})",
+ "name": "{pass: false} expect(Map {["v"] => 1}).toEqual(Map {["v"] => 2})",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect(Map {[1] => Map {[1] => \\"one\\"}}).toEqual(Map {[1] => Map {[1] => \\"two\\"}})",
+ "name": "{pass: false} expect(Map {[1] => Map {[1] => "one"}}).toEqual(Map {[1] => Map {[1] => "two"}})",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect(Immutable.Map {\\"a\\": 0}).toEqual(Immutable.Map {\\"b\\": 0})",
+ "name": "{pass: false} expect(Immutable.Map {"a": 0}).toEqual(Immutable.Map {"b": 0})",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect(Immutable.Map {\\"v\\": 1}).toEqual(Immutable.Map {\\"v\\": 2})",
+ "name": "{pass: false} expect(Immutable.Map {"v": 1}).toEqual(Immutable.Map {"v": 2})",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect(Immutable.OrderedMap {1: \\"one\\", 2: \\"two\\"}).toEqual(Immutable.OrderedMap {2: \\"two\\", 1: \\"one\\"})",
+ "name": "{pass: false} expect(Immutable.OrderedMap {1: "one", 2: "two"}).toEqual(Immutable.OrderedMap {2: "two", 1: "one"})",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect(Immutable.Map {\\"1\\": Immutable.Map {\\"2\\": {\\"a\\": 99}}}).toEqual(Immutable.Map {\\"1\\": Immutable.Map {\\"2\\": {\\"a\\": 11}}})",
+ "name": "{pass: false} expect(Immutable.Map {"1": Immutable.Map {"2": {"a": 99}}}).toEqual(Immutable.Map {"1": Immutable.Map {"2": {"a": 11}}})",
"result": "success",
"time": 1,
},
@@ -14768,13 +14794,13 @@ string\\"",
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"a\\": 1, \\"b\\": 2}).toEqual(ObjectContaining {\\"a\\": 2})",
+ "name": "{pass: false} expect({"a": 1, "b": 2}).toEqual(ObjectContaining {"a": 2})",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect(false).toEqual(ObjectContaining {\\"a\\": 2})",
+ "name": "{pass: false} expect(false).toEqual(ObjectContaining {"a": 2})",
"result": "success",
"time": 0,
},
@@ -14792,13 +14818,13 @@ string\\"",
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect(\\"abd\\").toEqual(StringContaining \\"bc\\")",
+ "name": "{pass: false} expect("abd").toEqual(StringContaining "bc")",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect(\\"abd\\").toEqual(StringMatching /bc/i)",
+ "name": "{pass: false} expect("abd").toEqual(StringMatching /bc/i)",
"result": "success",
"time": 0,
},
@@ -14816,19 +14842,19 @@ string\\"",
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect(\\"Eve\\").toEqual({\\"asymmetricMatch\\": [Function asymmetricMatch]})",
+ "name": "{pass: false} expect("Eve").toEqual({"asymmetricMatch": [Function asymmetricMatch]})",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"target\\": {\\"nodeType\\": 1, \\"value\\": \\"a\\"}}).toEqual({\\"target\\": {\\"nodeType\\": 1, \\"value\\": \\"b\\"}})",
+ "name": "{pass: false} expect({"target": {"nodeType": 1, "value": "a"}}).toEqual({"target": {"nodeType": 1, "value": "b"}})",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"nodeName\\": \\"div\\", \\"nodeType\\": 1}).toEqual({\\"nodeName\\": \\"p\\", \\"nodeType\\": 1})",
+ "name": "{pass: false} expect({"nodeName": "div", "nodeType": 1}).toEqual({"nodeName": "p", "nodeType": 1})",
"result": "success",
"time": 1,
},
@@ -14888,19 +14914,19 @@ string\\"",
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect(\\"abc\\").not.toEqual(\\"abc\\")",
+ "name": "{pass: true} expect("abc").not.toEqual("abc")",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect(\\"abc\\").not.toEqual(\\"abc\\")",
+ "name": "{pass: true} expect("abc").not.toEqual("abc")",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect(\\"abc\\").not.toEqual(\\"abc\\")",
+ "name": "{pass: true} expect("abc").not.toEqual("abc")",
"result": "success",
"time": 1,
},
@@ -14936,7 +14962,7 @@ string\\"",
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"a\\": 99}).not.toEqual({\\"a\\": 99})",
+ "name": "{pass: true} expect({"a": 99}).not.toEqual({"a": 99})",
"result": "success",
"time": 1,
},
@@ -14978,7 +15004,7 @@ string\\"",
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect(Set {{\\"a\\": 1}, {\\"b\\": 2}}).not.toEqual(Set {{\\"b\\": 2}, {\\"a\\": 1}})",
+ "name": "{pass: true} expect(Set {{"a": 1}, {"b": 2}}).not.toEqual(Set {{"b": 2}, {"a": 1}})",
"result": "success",
"time": 0,
},
@@ -15020,43 +15046,43 @@ string\\"",
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect(Map {1 => \\"one\\", 2 => \\"two\\"}).not.toEqual(Map {1 => \\"one\\", 2 => \\"two\\"})",
+ "name": "{pass: true} expect(Map {1 => "one", 2 => "two"}).not.toEqual(Map {1 => "one", 2 => "two"})",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect(Map {1 => \\"one\\", 2 => \\"two\\"}).not.toEqual(Map {2 => \\"two\\", 1 => \\"one\\"})",
+ "name": "{pass: true} expect(Map {1 => "one", 2 => "two"}).not.toEqual(Map {2 => "two", 1 => "one"})",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect(Map {[1] => \\"one\\", [2] => \\"two\\", [3] => \\"three\\", [3] => \\"four\\"}).not.toEqual(Map {[3] => \\"three\\", [3] => \\"four\\", [2] => \\"two\\", [1] => \\"one\\"})",
+ "name": "{pass: true} expect(Map {[1] => "one", [2] => "two", [3] => "three", [3] => "four"}).not.toEqual(Map {[3] => "three", [3] => "four", [2] => "two", [1] => "one"})",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect(Map {[1] => Map {[1] => \\"one\\"}, [2] => Map {[2] => \\"two\\"}}).not.toEqual(Map {[2] => Map {[2] => \\"two\\"}, [1] => Map {[1] => \\"one\\"}})",
+ "name": "{pass: true} expect(Map {[1] => Map {[1] => "one"}, [2] => Map {[2] => "two"}}).not.toEqual(Map {[2] => Map {[2] => "two"}, [1] => Map {[1] => "one"}})",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect(Map {[1] => \\"one\\", [2] => \\"two\\"}).not.toEqual(Map {[2] => \\"two\\", [1] => \\"one\\"})",
+ "name": "{pass: true} expect(Map {[1] => "one", [2] => "two"}).not.toEqual(Map {[2] => "two", [1] => "one"})",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect(Map {{\\"a\\": 1} => \\"one\\", {\\"b\\": 2} => \\"two\\"}).not.toEqual(Map {{\\"b\\": 2} => \\"two\\", {\\"a\\": 1} => \\"one\\"})",
+ "name": "{pass: true} expect(Map {{"a": 1} => "one", {"b": 2} => "two"}).not.toEqual(Map {{"b": 2} => "two", {"a": 1} => "one"})",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect(Map {1 => [\\"one\\"], 2 => [\\"two\\"]}).not.toEqual(Map {2 => [\\"two\\"], 1 => [\\"one\\"]})",
+ "name": "{pass: true} expect(Map {1 => ["one"], 2 => ["two"]}).not.toEqual(Map {2 => ["two"], 1 => ["one"]})",
"result": "success",
"time": 1,
},
@@ -15068,25 +15094,25 @@ string\\"",
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect(Immutable.Map {1: \\"one\\", 2: \\"two\\"}).not.toEqual(Immutable.Map {1: \\"one\\", 2: \\"two\\"})",
+ "name": "{pass: true} expect(Immutable.Map {1: "one", 2: "two"}).not.toEqual(Immutable.Map {1: "one", 2: "two"})",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect(Immutable.Map {1: \\"one\\", 2: \\"two\\"}).not.toEqual(Immutable.Map {2: \\"two\\", 1: \\"one\\"})",
+ "name": "{pass: true} expect(Immutable.Map {1: "one", 2: "two"}).not.toEqual(Immutable.Map {2: "two", 1: "one"})",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect(Immutable.OrderedMap {1: \\"one\\", 2: \\"two\\"}).not.toEqual(Immutable.OrderedMap {1: \\"one\\", 2: \\"two\\"})",
+ "name": "{pass: true} expect(Immutable.OrderedMap {1: "one", 2: "two"}).not.toEqual(Immutable.OrderedMap {1: "one", 2: "two"})",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect(Immutable.Map {\\"1\\": Immutable.Map {\\"2\\": {\\"a\\": 99}}}).not.toEqual(Immutable.Map {\\"1\\": Immutable.Map {\\"2\\": {\\"a\\": 99}}})",
+ "name": "{pass: true} expect(Immutable.Map {"1": Immutable.Map {"2": {"a": 99}}}).not.toEqual(Immutable.Map {"1": Immutable.Map {"2": {"a": 99}}})",
"result": "success",
"time": 1,
},
@@ -15098,7 +15124,7 @@ string\\"",
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"a\\": 1, \\"b\\": 2}).not.toEqual(ObjectContaining {\\"a\\": 1})",
+ "name": "{pass: true} expect({"a": 1, "b": 2}).not.toEqual(ObjectContaining {"a": 1})",
"result": "success",
"time": 0,
},
@@ -15110,13 +15136,13 @@ string\\"",
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect(\\"abcd\\").not.toEqual(StringContaining \\"bc\\")",
+ "name": "{pass: true} expect("abcd").not.toEqual(StringContaining "bc")",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect(\\"abcd\\").not.toEqual(StringMatching /bc/)",
+ "name": "{pass: true} expect("abcd").not.toEqual(StringMatching /bc/)",
"result": "success",
"time": 1,
},
@@ -15134,19 +15160,19 @@ string\\"",
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"a\\": 1, \\"b\\": [Function b], \\"c\\": true}).not.toEqual({\\"a\\": 1, \\"b\\": Any, \\"c\\": Anything})",
+ "name": "{pass: true} expect({"a": 1, "b": [Function b], "c": true}).not.toEqual({"a": 1, "b": Any, "c": Anything})",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect(\\"Alice\\").not.toEqual({\\"asymmetricMatch\\": [Function asymmetricMatch]})",
+ "name": "{pass: true} expect("Alice").not.toEqual({"asymmetricMatch": [Function asymmetricMatch]})",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"nodeName\\": \\"div\\", \\"nodeType\\": 1}).not.toEqual({\\"nodeName\\": \\"div\\", \\"nodeType\\": 1})",
+ "name": "{pass: true} expect({"nodeName": "div", "nodeType": 1}).not.toEqual({"nodeName": "div", "nodeType": 1})",
"result": "success",
"time": 0,
},
@@ -15188,7 +15214,7 @@ string\\"",
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"a\\": 99n}).not.toEqual({\\"a\\": 99n})",
+ "name": "{pass: true} expect({"a": 99n}).not.toEqual({"a": 99n})",
"result": "success",
"time": 0,
},
@@ -15226,7 +15252,7 @@ string\\"",
},
TestGroupResult {
"name": ".toEqual() cyclic object equality",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "properties with the same circularity are equal",
@@ -15249,7 +15275,7 @@ string\\"",
},
TestGroupResult {
"name": ".toBeInstanceOf()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "passing Map {} and [Function Map]",
@@ -15300,7 +15326,7 @@ string\\"",
},
TestCaseResult {
"error": undefined,
- "name": "failing \\"a\\" and [Function String]",
+ "name": "failing "a" and [Function String]",
"result": "success",
"time": 0,
},
@@ -15342,7 +15368,7 @@ string\\"",
},
TestCaseResult {
"error": undefined,
- "name": "failing /\\\\w+/ and [Function anonymous]",
+ "name": "failing /\\w+/ and [Function anonymous]",
"result": "success",
"time": 1,
},
@@ -15362,7 +15388,7 @@ string\\"",
},
TestGroupResult {
"name": ".toBeTruthy(), .toBeFalsy()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "does not accept arguments",
@@ -15395,7 +15421,7 @@ string\\"",
},
TestCaseResult {
"error": undefined,
- "name": "'\\"a\\"' is truthy",
+ "name": "'"a"' is truthy",
"result": "success",
"time": 1,
},
@@ -15455,7 +15481,7 @@ string\\"",
},
TestCaseResult {
"error": undefined,
- "name": "'\\"\\"' is falsy",
+ "name": "'""' is falsy",
"result": "success",
"time": 1,
},
@@ -15475,7 +15501,7 @@ string\\"",
},
TestGroupResult {
"name": ".toBeNaN()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "{pass: true} expect(NaN).toBeNaN()",
@@ -15492,7 +15518,7 @@ string\\"",
},
TestGroupResult {
"name": ".toBeNull()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "fails for '{}'",
@@ -15519,7 +15545,7 @@ string\\"",
},
TestCaseResult {
"error": undefined,
- "name": "fails for '\\"a\\"'",
+ "name": "fails for '"a"'",
"result": "success",
"time": 0,
},
@@ -15563,7 +15589,7 @@ string\\"",
},
TestGroupResult {
"name": ".toBeDefined(), .toBeUndefined()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "'{}' is defined",
@@ -15590,7 +15616,7 @@ string\\"",
},
TestCaseResult {
"error": undefined,
- "name": "'\\"a\\"' is defined",
+ "name": "'"a"' is defined",
"result": "success",
"time": 0,
},
@@ -15634,7 +15660,7 @@ string\\"",
},
TestGroupResult {
"name": ".toBeGreaterThan(), .toBeLessThan(), .toBeGreaterThanOrEqual(), .toBeLessThanOrEqual()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "{pass: true} expect(1).toBeLessThan(2)",
@@ -16227,7 +16253,7 @@ string\\"",
},
TestGroupResult {
"name": ".toContain(), .toContainEqual()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "iterable",
@@ -16242,7 +16268,7 @@ string\\"",
},
TestCaseResult {
"error": undefined,
- "name": "'[\\"a\\", \\"b\\", \\"c\\", \\"d\\"]' contains '\\"a\\"'",
+ "name": "'["a", "b", "c", "d"]' contains '"a"'",
"result": "success",
"time": 1,
},
@@ -16266,19 +16292,19 @@ string\\"",
},
TestCaseResult {
"error": undefined,
- "name": "'\\"abcdef\\"' contains '\\"abc\\"'",
+ "name": "'"abcdef"' contains '"abc"'",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "'\\"11112111\\"' contains '\\"2\\"'",
+ "name": "'"11112111"' contains '"2"'",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "'Set {\\"abc\\", \\"def\\"}' contains '\\"abc\\"'",
+ "name": "'Set {"abc", "def"}' contains '"abc"'",
"result": "success",
"time": 0,
},
@@ -16344,7 +16370,7 @@ string\\"",
},
TestCaseResult {
"error": undefined,
- "name": "'[\\"a\\", \\"b\\", \\"c\\", \\"d\\"]' contains a value equal to '\\"a\\"'",
+ "name": "'["a", "b", "c", "d"]' contains a value equal to '"a"'",
"result": "success",
"time": 0,
},
@@ -16368,7 +16394,7 @@ string\\"",
},
TestCaseResult {
"error": undefined,
- "name": "'[{\\"a\\": \\"b\\"}, {\\"a\\": \\"c\\"}]' contains a value equal to '{\\"a\\": \\"b\\"}'",
+ "name": "'[{"a": "b"}, {"a": "c"}]' contains a value equal to '{"a": "b"}'",
"result": "success",
"time": 1,
},
@@ -16386,7 +16412,7 @@ string\\"",
},
TestCaseResult {
"error": undefined,
- "name": "'[{\\"a\\": \\"b\\"}, {\\"a\\": \\"c\\"}]' does not contain a value equal to'{\\"a\\": \\"d\\"}'",
+ "name": "'[{"a": "b"}, {"a": "c"}]' does not contain a value equal to'{"a": "d"}'",
"result": "success",
"time": 2,
},
@@ -16400,7 +16426,7 @@ string\\"",
},
TestGroupResult {
"name": ".toBeCloseTo",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "{pass: true} expect(0).toBeCloseTo(0)",
@@ -16525,7 +16551,7 @@ string\\"",
},
TestGroupResult {
"name": ".toBeCloseTo throws: Matcher error",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "promise empty isNot false received",
@@ -16566,7 +16592,7 @@ string\\"",
},
TestGroupResult {
"name": ".toMatch()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "{pass: true} expect(foo).toMatch(foo)",
@@ -16593,79 +16619,79 @@ string\\"",
},
TestCaseResult {
"error": undefined,
- "name": "throws if non String actual value passed: [1, \\"foo\\"]",
+ "name": "throws if non String actual value passed: [1, "foo"]",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "throws if non String actual value passed: [{}, \\"foo\\"]",
+ "name": "throws if non String actual value passed: [{}, "foo"]",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "throws if non String actual value passed: [[], \\"foo\\"]",
+ "name": "throws if non String actual value passed: [[], "foo"]",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "throws if non String actual value passed: [true, \\"foo\\"]",
+ "name": "throws if non String actual value passed: [true, "foo"]",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "throws if non String actual value passed: [/foo/i, \\"foo\\"]",
+ "name": "throws if non String actual value passed: [/foo/i, "foo"]",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "throws if non String actual value passed: [[Function anonymous], \\"foo\\"]",
+ "name": "throws if non String actual value passed: [[Function anonymous], "foo"]",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "throws if non String actual value passed: [undefined, \\"foo\\"]",
+ "name": "throws if non String actual value passed: [undefined, "foo"]",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "throws if non String/RegExp expected value passed: [\\"foo\\", 1]",
+ "name": "throws if non String/RegExp expected value passed: ["foo", 1]",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "throws if non String/RegExp expected value passed: [\\"foo\\", {}]",
+ "name": "throws if non String/RegExp expected value passed: ["foo", {}]",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "throws if non String/RegExp expected value passed: [\\"foo\\", []]",
+ "name": "throws if non String/RegExp expected value passed: ["foo", []]",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "throws if non String/RegExp expected value passed: [\\"foo\\", true]",
+ "name": "throws if non String/RegExp expected value passed: ["foo", true]",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "throws if non String/RegExp expected value passed: [\\"foo\\", [Function anonymous]]",
+ "name": "throws if non String/RegExp expected value passed: ["foo", [Function anonymous]]",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "throws if non String/RegExp expected value passed: [\\"foo\\", undefined]",
+ "name": "throws if non String/RegExp expected value passed: ["foo", undefined]",
"result": "success",
"time": 0,
},
@@ -16685,7 +16711,7 @@ string\\"",
},
TestGroupResult {
"name": ".toHaveLength",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "{pass: true} expect([1, 2]).toHaveLength(2)",
@@ -16700,19 +16726,19 @@ string\\"",
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect([\\"a\\", \\"b\\"]).toHaveLength(2)",
+ "name": "{pass: true} expect(["a", "b"]).toHaveLength(2)",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect(\\"abc\\").toHaveLength(3)",
+ "name": "{pass: true} expect("abc").toHaveLength(3)",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect(\\"\\").toHaveLength(0)",
+ "name": "{pass: true} expect("").toHaveLength(0)",
"result": "success",
"time": 0,
},
@@ -16736,19 +16762,19 @@ string\\"",
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect([\\"a\\", \\"b\\"]).toHaveLength(99)",
+ "name": "{pass: false} expect(["a", "b"]).toHaveLength(99)",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect(\\"abc\\").toHaveLength(66)",
+ "name": "{pass: false} expect("abc").toHaveLength(66)",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect(\\"\\").toHaveLength(1)",
+ "name": "{pass: false} expect("").toHaveLength(1)",
"result": "success",
"time": 1,
},
@@ -16762,7 +16788,7 @@ string\\"",
},
TestGroupResult {
"name": ".toHaveLength matcher error expected length",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "not number",
@@ -16797,64 +16823,64 @@ string\\"",
},
TestGroupResult {
"name": ".toHaveProperty()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"a\\": {\\"b\\": {\\"c\\": {\\"d\\": 1}}}}).toHaveProperty('a.b.c.d', 1)",
+ "name": "{pass: true} expect({"a": {"b": {"c": {"d": 1}}}}).toHaveProperty('a.b.c.d', 1)",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"a\\": {\\"b\\": {\\"c\\": {\\"d\\": 1}}}}).toHaveProperty('a,b,c,d', 1)",
+ "name": "{pass: true} expect({"a": {"b": {"c": {"d": 1}}}}).toHaveProperty('a,b,c,d', 1)",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"a.b.c.d\\": 1}).toHaveProperty('a.b.c.d', 1)",
+ "name": "{pass: true} expect({"a.b.c.d": 1}).toHaveProperty('a.b.c.d', 1)",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"a\\": {\\"b\\": [1, 2, 3]}}).toHaveProperty('a,b,1', 2)",
+ "name": "{pass: true} expect({"a": {"b": [1, 2, 3]}}).toHaveProperty('a,b,1', 2)",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"a\\": {\\"b\\": [1, 2, 3]}}).toHaveProperty('a,b,1', Any)",
+ "name": "{pass: true} expect({"a": {"b": [1, 2, 3]}}).toHaveProperty('a,b,1', Any)",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"a\\": 0}).toHaveProperty('a', 0)",
+ "name": "{pass: true} expect({"a": 0}).toHaveProperty('a', 0)",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"a\\": {\\"b\\": undefined}}).toHaveProperty('a.b', undefined)",
+ "name": "{pass: true} expect({"a": {"b": undefined}}).toHaveProperty('a.b', undefined)",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"a\\": {}}).toHaveProperty('a.b', undefined)",
+ "name": "{pass: true} expect({"a": {}}).toHaveProperty('a.b', undefined)",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"a\\": {\\"b\\": {\\"c\\": 5}}}).toHaveProperty('a.b', {\\"c\\": 5})",
+ "name": "{pass: true} expect({"a": {"b": {"c": 5}}}).toHaveProperty('a.b', {"c": 5})",
"result": "success",
"time": 2,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"property\\": 1}).toHaveProperty('property', 1)",
+ "name": "{pass: true} expect({"property": 1}).toHaveProperty('property', 1)",
"result": "success",
"time": 0,
},
@@ -16866,7 +16892,7 @@ string\\"",
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({}).toHaveProperty('b', \\"b\\")",
+ "name": "{pass: true} expect({}).toHaveProperty('b', "b")",
"result": "success",
"time": 0,
},
@@ -16878,31 +16904,31 @@ string\\"",
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"val\\": true}).toHaveProperty('a', undefined)",
+ "name": "{pass: true} expect({"val": true}).toHaveProperty('a', undefined)",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"val\\": true}).toHaveProperty('c', \\"c\\")",
+ "name": "{pass: true} expect({"val": true}).toHaveProperty('c', "c")",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"val\\": true}).toHaveProperty('val', true)",
+ "name": "{pass: true} expect({"val": true}).toHaveProperty('val', true)",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"nodeName\\": \\"DIV\\"}).toHaveProperty('nodeType', 1)",
+ "name": "{pass: true} expect({"nodeName": "DIV"}).toHaveProperty('nodeType', 1)",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect(\\"\\").toHaveProperty('length', 0)",
+ "name": "{pass: true} expect("").toHaveProperty('length', 0)",
"result": "success",
"time": 0,
},
@@ -16914,95 +16940,95 @@ string\\"",
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"a\\": {\\"b\\": {\\"c\\": {\\"d\\": 1}}}}).toHaveProperty('a.b.ttt.d', 1)",
+ "name": "{pass: false} expect({"a": {"b": {"c": {"d": 1}}}}).toHaveProperty('a.b.ttt.d', 1)",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"a\\": {\\"b\\": {\\"c\\": {\\"d\\": 1}}}}).toHaveProperty('a.b.c.d', 2)",
+ "name": "{pass: false} expect({"a": {"b": {"c": {"d": 1}}}}).toHaveProperty('a.b.c.d', 2)",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"a.b.c.d\\": 1}).toHaveProperty('a.b.c.d', 2)",
+ "name": "{pass: false} expect({"a.b.c.d": 1}).toHaveProperty('a.b.c.d', 2)",
"result": "success",
"time": 2,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"a.b.c.d\\": 1}).toHaveProperty('a.b.c.d', 2)",
+ "name": "{pass: false} expect({"a.b.c.d": 1}).toHaveProperty('a.b.c.d', 2)",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"children\\": [\\"\\\\\\"That cartoon\\\\\\"\\"], \\"props\\": null, \\"type\\": \\"p\\"}).toHaveProperty('children,0', \\"\\\\\\"That cat cartoon\\\\\\"\\")",
+ "name": "{pass: false} expect({"children": ["\\"That cartoon\\""], "props": null, "type": "p"}).toHaveProperty('children,0', "\\"That cat cartoon\\"")",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"children\\": [\\"Roses are red.
+ "name": "{pass: false} expect({"children": ["Roses are red.
Violets are blue.
-Testing with Jest is good for you.\\"], \\"props\\": null, \\"type\\": \\"pre\\"}).toHaveProperty('children,0', \\"Roses are red, violets are blue.
+Testing with Jest is good for you."], "props": null, "type": "pre"}).toHaveProperty('children,0', "Roses are red, violets are blue.
Testing with Jest
-Is good for you.\\")",
+Is good for you.")",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"a\\": {\\"b\\": {\\"c\\": {\\"d\\": 1}}}}).toHaveProperty('a,b,c,d', 2)",
+ "name": "{pass: false} expect({"a": {"b": {"c": {"d": 1}}}}).toHaveProperty('a,b,c,d', 2)",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"a\\": {\\"b\\": {\\"c\\": {}}}}).toHaveProperty('a.b.c.d', 1)",
+ "name": "{pass: false} expect({"a": {"b": {"c": {}}}}).toHaveProperty('a.b.c.d', 1)",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"a\\": 1}).toHaveProperty('a.b.c.d', 5)",
+ "name": "{pass: false} expect({"a": 1}).toHaveProperty('a.b.c.d', 5)",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({}).toHaveProperty('a', \\"test\\")",
+ "name": "{pass: false} expect({}).toHaveProperty('a', "test")",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"a\\": {\\"b\\": 3}}).toHaveProperty('a.b', undefined)",
+ "name": "{pass: false} expect({"a": {"b": 3}}).toHaveProperty('a.b', undefined)",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect(1).toHaveProperty('a.b.c', \\"test\\")",
+ "name": "{pass: false} expect(1).toHaveProperty('a.b.c', "test")",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect(\\"abc\\").toHaveProperty('a.b.c', {\\"a\\": 5})",
+ "name": "{pass: false} expect("abc").toHaveProperty('a.b.c', {"a": 5})",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"a\\": {\\"b\\": {\\"c\\": 5}}}).toHaveProperty('a.b', {\\"c\\": 4})",
+ "name": "{pass: false} expect({"a": {"b": {"c": 5}}}).toHaveProperty('a.b', {"c": 4})",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({}).toHaveProperty('a', \\"a\\")",
+ "name": "{pass: false} expect({}).toHaveProperty('a', "a")",
"result": "success",
"time": 1,
},
@@ -17014,49 +17040,49 @@ Is good for you.\\")",
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"a\\": {\\"b\\": {\\"c\\": {\\"d\\": 1}}}}).toHaveProperty('a.b.c.d')",
+ "name": "{pass: true} expect({"a": {"b": {"c": {"d": 1}}}}).toHaveProperty('a.b.c.d')",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"a\\": {\\"b\\": {\\"c\\": {\\"d\\": 1}}}}).toHaveProperty('a,b,c,d')",
+ "name": "{pass: true} expect({"a": {"b": {"c": {"d": 1}}}}).toHaveProperty('a,b,c,d')",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"a.b.c.d\\": 1}).toHaveProperty('a.b.c.d')",
+ "name": "{pass: true} expect({"a.b.c.d": 1}).toHaveProperty('a.b.c.d')",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"a\\": {\\"b\\": [1, 2, 3]}}).toHaveProperty('a,b,1')",
+ "name": "{pass: true} expect({"a": {"b": [1, 2, 3]}}).toHaveProperty('a,b,1')",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"a\\": 0}).toHaveProperty('a')",
+ "name": "{pass: true} expect({"a": 0}).toHaveProperty('a')",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"a\\": {\\"b\\": undefined}}).toHaveProperty('a.b')",
+ "name": "{pass: true} expect({"a": {"b": undefined}}).toHaveProperty('a.b')",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"a\\": {\\"b\\": {\\"c\\": {}}}}).toHaveProperty('a.b.c.d')",
+ "name": "{pass: false} expect({"a": {"b": {"c": {}}}}).toHaveProperty('a.b.c.d')",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"a\\": 1}).toHaveProperty('a.b.c.d')",
+ "name": "{pass: false} expect({"a": 1}).toHaveProperty('a.b.c.d')",
"result": "success",
"time": 0,
},
@@ -17074,7 +17100,7 @@ Is good for you.\\")",
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect(\\"abc\\").toHaveProperty('a.b.c')",
+ "name": "{pass: false} expect("abc").toHaveProperty('a.b.c')",
"result": "success",
"time": 0,
},
@@ -17092,7 +17118,7 @@ Is good for you.\\")",
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect(\\"\\").toHaveProperty('key')",
+ "name": "{pass: false} expect("").toHaveProperty('key')",
"result": "success",
"time": 0,
},
@@ -17104,7 +17130,7 @@ Is good for you.\\")",
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"key\\": 1}).toHaveProperty('not')",
+ "name": "{pass: false} expect({"key": 1}).toHaveProperty('not')",
"result": "success",
"time": 0,
},
@@ -17122,19 +17148,19 @@ Is good for you.\\")",
},
TestCaseResult {
"error": undefined,
- "name": "{error} expect({\\"a\\": {\\"b\\": {}}}).toHaveProperty('undefined')",
+ "name": "{error} expect({"a": {"b": {}}}).toHaveProperty('undefined')",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{error} expect({\\"a\\": {\\"b\\": {}}}).toHaveProperty('null')",
+ "name": "{error} expect({"a": {"b": {}}}).toHaveProperty('null')",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{error} expect({\\"a\\": {\\"b\\": {}}}).toHaveProperty('1')",
+ "name": "{error} expect({"a": {"b": {}}}).toHaveProperty('1')",
"result": "success",
"time": 0,
},
@@ -17148,34 +17174,34 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "toMatchObject() circular references simple circular references",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"a\\": \\"hello\\", \\"ref\\": [Circular]}).toMatchObject({})",
+ "name": "{pass: true} expect({"a": "hello", "ref": [Circular]}).toMatchObject({})",
"result": "success",
"time": 3,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"a\\": \\"hello\\", \\"ref\\": [Circular]}).toMatchObject({\\"a\\": \\"hello\\", \\"ref\\": [Circular]})",
+ "name": "{pass: true} expect({"a": "hello", "ref": [Circular]}).toMatchObject({"a": "hello", "ref": [Circular]})",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({}).toMatchObject({\\"a\\": \\"hello\\", \\"ref\\": [Circular]})",
+ "name": "{pass: false} expect({}).toMatchObject({"a": "hello", "ref": [Circular]})",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"a\\": \\"hello\\", \\"ref\\": [Circular]}).toMatchObject({\\"a\\": \\"world\\", \\"ref\\": [Circular]})",
+ "name": "{pass: false} expect({"a": "hello", "ref": [Circular]}).toMatchObject({"a": "world", "ref": [Circular]})",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"ref\\": \\"not a ref\\"}).toMatchObject({\\"a\\": \\"hello\\", \\"ref\\": [Circular]})",
+ "name": "{pass: false} expect({"ref": "not a ref"}).toMatchObject({"a": "hello", "ref": [Circular]})",
"result": "success",
"time": 1,
},
@@ -17183,34 +17209,34 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "toMatchObject() circular references transitive circular references",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"a\\": \\"hello\\", \\"nestedObj\\": {\\"parentObj\\": [Circular]}}).toMatchObject({})",
+ "name": "{pass: true} expect({"a": "hello", "nestedObj": {"parentObj": [Circular]}}).toMatchObject({})",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"a\\": \\"hello\\", \\"nestedObj\\": {\\"parentObj\\": [Circular]}}).toMatchObject({\\"a\\": \\"hello\\", \\"nestedObj\\": {\\"parentObj\\": [Circular]}})",
+ "name": "{pass: true} expect({"a": "hello", "nestedObj": {"parentObj": [Circular]}}).toMatchObject({"a": "hello", "nestedObj": {"parentObj": [Circular]}})",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({}).toMatchObject({\\"a\\": \\"hello\\", \\"nestedObj\\": {\\"parentObj\\": [Circular]}})",
+ "name": "{pass: false} expect({}).toMatchObject({"a": "hello", "nestedObj": {"parentObj": [Circular]}})",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"a\\": \\"world\\", \\"nestedObj\\": {\\"parentObj\\": [Circular]}}).toMatchObject({\\"a\\": \\"hello\\", \\"nestedObj\\": {\\"parentObj\\": [Circular]}})",
+ "name": "{pass: false} expect({"a": "world", "nestedObj": {"parentObj": [Circular]}}).toMatchObject({"a": "hello", "nestedObj": {"parentObj": [Circular]}})",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"nestedObj\\": {\\"parentObj\\": \\"not the parent ref\\"}}).toMatchObject({\\"a\\": \\"hello\\", \\"nestedObj\\": {\\"parentObj\\": [Circular]}})",
+ "name": "{pass: false} expect({"nestedObj": {"parentObj": "not the parent ref"}}).toMatchObject({"a": "hello", "nestedObj": {"parentObj": [Circular]}})",
"result": "success",
"time": 1,
},
@@ -17218,52 +17244,52 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "toMatchObject()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"a\\": \\"b\\", \\"c\\": \\"d\\"}).toMatchObject({\\"a\\": \\"b\\"})",
+ "name": "{pass: true} expect({"a": "b", "c": "d"}).toMatchObject({"a": "b"})",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"a\\": \\"b\\", \\"c\\": \\"d\\"}).toMatchObject({\\"a\\": \\"b\\", \\"c\\": \\"d\\"})",
+ "name": "{pass: true} expect({"a": "b", "c": "d"}).toMatchObject({"a": "b", "c": "d"})",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"a\\": \\"b\\", \\"t\\": {\\"x\\": {\\"r\\": \\"r\\"}, \\"z\\": \\"z\\"}}).toMatchObject({\\"a\\": \\"b\\", \\"t\\": {\\"z\\": \\"z\\"}})",
+ "name": "{pass: true} expect({"a": "b", "t": {"x": {"r": "r"}, "z": "z"}}).toMatchObject({"a": "b", "t": {"z": "z"}})",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"a\\": \\"b\\", \\"t\\": {\\"x\\": {\\"r\\": \\"r\\"}, \\"z\\": \\"z\\"}}).toMatchObject({\\"t\\": {\\"x\\": {\\"r\\": \\"r\\"}}})",
+ "name": "{pass: true} expect({"a": "b", "t": {"x": {"r": "r"}, "z": "z"}}).toMatchObject({"t": {"x": {"r": "r"}}})",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"a\\": [3, 4, 5], \\"b\\": \\"b\\"}).toMatchObject({\\"a\\": [3, 4, 5]})",
+ "name": "{pass: true} expect({"a": [3, 4, 5], "b": "b"}).toMatchObject({"a": [3, 4, 5]})",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"a\\": [3, 4, 5, \\"v\\"], \\"b\\": \\"b\\"}).toMatchObject({\\"a\\": [3, 4, 5, \\"v\\"]})",
+ "name": "{pass: true} expect({"a": [3, 4, 5, "v"], "b": "b"}).toMatchObject({"a": [3, 4, 5, "v"]})",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"a\\": 1, \\"c\\": 2}).toMatchObject({\\"a\\": Any})",
+ "name": "{pass: true} expect({"a": 1, "c": 2}).toMatchObject({"a": Any})",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"a\\": {\\"x\\": \\"x\\", \\"y\\": \\"y\\"}}).toMatchObject({\\"a\\": {\\"x\\": Any}})",
+ "name": "{pass: true} expect({"a": {"x": "x", "y": "y"}}).toMatchObject({"a": {"x": Any}})",
"result": "success",
"time": 0,
},
@@ -17287,25 +17313,25 @@ Is good for you.\\")",
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"a\\": 2015-11-30T00:00:00.000Z, \\"b\\": \\"b\\"}).toMatchObject({\\"a\\": 2015-11-30T00:00:00.000Z})",
+ "name": "{pass: true} expect({"a": 2015-11-30T00:00:00.000Z, "b": "b"}).toMatchObject({"a": 2015-11-30T00:00:00.000Z})",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"a\\": null, \\"b\\": \\"b\\"}).toMatchObject({\\"a\\": null})",
+ "name": "{pass: true} expect({"a": null, "b": "b"}).toMatchObject({"a": null})",
"result": "success",
"time": 2,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"a\\": undefined, \\"b\\": \\"b\\"}).toMatchObject({\\"a\\": undefined})",
+ "name": "{pass: true} expect({"a": undefined, "b": "b"}).toMatchObject({"a": undefined})",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"a\\": [{\\"a\\": \\"a\\", \\"b\\": \\"b\\"}]}).toMatchObject({\\"a\\": [{\\"a\\": \\"a\\"}]})",
+ "name": "{pass: true} expect({"a": [{"a": "a", "b": "b"}]}).toMatchObject({"a": [{"a": "a"}]})",
"result": "success",
"time": 1,
},
@@ -17317,7 +17343,7 @@ Is good for you.\\")",
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"a\\": undefined}).toMatchObject({\\"a\\": undefined})",
+ "name": "{pass: true} expect({"a": undefined}).toMatchObject({"a": undefined})",
"result": "success",
"time": 1,
},
@@ -17335,109 +17361,109 @@ Is good for you.\\")",
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect([Error: bar]).toMatchObject({\\"message\\": \\"bar\\"})",
+ "name": "{pass: true} expect([Error: bar]).toMatchObject({"message": "bar"})",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({}).toMatchObject({\\"a\\": undefined, \\"b\\": \\"b\\"})",
+ "name": "{pass: true} expect({}).toMatchObject({"a": undefined, "b": "b"})",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"a\\": \\"b\\"}).toMatchObject({\\"a\\": \\"b\\"})",
+ "name": "{pass: true} expect({"a": "b"}).toMatchObject({"a": "b"})",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"a\\": \\"b\\", \\"c\\": \\"d\\", Symbol(jest): \\"jest\\"}).toMatchObject({\\"a\\": \\"b\\", Symbol(jest): \\"jest\\"})",
+ "name": "{pass: true} expect({"a": "b", "c": "d", Symbol(jest): "jest"}).toMatchObject({"a": "b", Symbol(jest): "jest"})",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"a\\": \\"b\\", \\"c\\": \\"d\\", Symbol(jest): \\"jest\\"}).toMatchObject({\\"a\\": \\"b\\", \\"c\\": \\"d\\", Symbol(jest): \\"jest\\"})",
+ "name": "{pass: true} expect({"a": "b", "c": "d", Symbol(jest): "jest"}).toMatchObject({"a": "b", "c": "d", Symbol(jest): "jest"})",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({}).toMatchObject({\\"a\\": undefined, \\"b\\": \\"b\\", \\"c\\": \\"c\\"})",
+ "name": "{pass: true} expect({}).toMatchObject({"a": undefined, "b": "b", "c": "c"})",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({}).toMatchObject({\\"d\\": 4})",
+ "name": "{pass: true} expect({}).toMatchObject({"d": 4})",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: true} expect({\\"a\\": \\"b\\", \\"toString\\": [Function toString]}).toMatchObject({\\"toString\\": Any})",
+ "name": "{pass: true} expect({"a": "b", "toString": [Function toString]}).toMatchObject({"toString": Any})",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"a\\": \\"b\\", \\"c\\": \\"d\\"}).toMatchObject({\\"e\\": \\"b\\"})",
+ "name": "{pass: false} expect({"a": "b", "c": "d"}).toMatchObject({"e": "b"})",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"a\\": \\"b\\", \\"c\\": \\"d\\"}).toMatchObject({\\"a\\": \\"b!\\", \\"c\\": \\"d\\"})",
+ "name": "{pass: false} expect({"a": "b", "c": "d"}).toMatchObject({"a": "b!", "c": "d"})",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"a\\": \\"a\\", \\"c\\": \\"d\\"}).toMatchObject({\\"a\\": Any})",
+ "name": "{pass: false} expect({"a": "a", "c": "d"}).toMatchObject({"a": Any})",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"a\\": \\"b\\", \\"t\\": {\\"x\\": {\\"r\\": \\"r\\"}, \\"z\\": \\"z\\"}}).toMatchObject({\\"a\\": \\"b\\", \\"t\\": {\\"z\\": [3]}})",
+ "name": "{pass: false} expect({"a": "b", "t": {"x": {"r": "r"}, "z": "z"}}).toMatchObject({"a": "b", "t": {"z": [3]}})",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"a\\": \\"b\\", \\"t\\": {\\"x\\": {\\"r\\": \\"r\\"}, \\"z\\": \\"z\\"}}).toMatchObject({\\"t\\": {\\"l\\": {\\"r\\": \\"r\\"}}})",
+ "name": "{pass: false} expect({"a": "b", "t": {"x": {"r": "r"}, "z": "z"}}).toMatchObject({"t": {"l": {"r": "r"}}})",
"result": "success",
"time": 2,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"a\\": [3, 4, 5], \\"b\\": \\"b\\"}).toMatchObject({\\"a\\": [3, 4, 5, 6]})",
+ "name": "{pass: false} expect({"a": [3, 4, 5], "b": "b"}).toMatchObject({"a": [3, 4, 5, 6]})",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"a\\": [3, 4, 5], \\"b\\": \\"b\\"}).toMatchObject({\\"a\\": [3, 4]})",
+ "name": "{pass: false} expect({"a": [3, 4, 5], "b": "b"}).toMatchObject({"a": [3, 4]})",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"a\\": [3, 4, \\"v\\"], \\"b\\": \\"b\\"}).toMatchObject({\\"a\\": [\\"v\\"]})",
+ "name": "{pass: false} expect({"a": [3, 4, "v"], "b": "b"}).toMatchObject({"a": ["v"]})",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"a\\": [3, 4, 5], \\"b\\": \\"b\\"}).toMatchObject({\\"a\\": {\\"b\\": 4}})",
+ "name": "{pass: false} expect({"a": [3, 4, 5], "b": "b"}).toMatchObject({"a": {"b": 4}})",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"a\\": [3, 4, 5], \\"b\\": \\"b\\"}).toMatchObject({\\"a\\": {\\"b\\": Any}})",
+ "name": "{pass: false} expect({"a": [3, 4, 5], "b": "b"}).toMatchObject({"a": {"b": Any}})",
"result": "success",
"time": 1,
},
@@ -17467,43 +17493,43 @@ Is good for you.\\")",
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"a\\": 2015-11-30T00:00:00.000Z, \\"b\\": \\"b\\"}).toMatchObject({\\"a\\": 2015-10-10T00:00:00.000Z})",
+ "name": "{pass: false} expect({"a": 2015-11-30T00:00:00.000Z, "b": "b"}).toMatchObject({"a": 2015-10-10T00:00:00.000Z})",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"a\\": null, \\"b\\": \\"b\\"}).toMatchObject({\\"a\\": \\"4\\"})",
+ "name": "{pass: false} expect({"a": null, "b": "b"}).toMatchObject({"a": "4"})",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"a\\": null, \\"b\\": \\"b\\"}).toMatchObject({\\"a\\": undefined})",
+ "name": "{pass: false} expect({"a": null, "b": "b"}).toMatchObject({"a": undefined})",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"a\\": undefined}).toMatchObject({\\"a\\": null})",
+ "name": "{pass: false} expect({"a": undefined}).toMatchObject({"a": null})",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"a\\": [{\\"a\\": \\"a\\", \\"b\\": \\"b\\"}]}).toMatchObject({\\"a\\": [{\\"a\\": \\"c\\"}]})",
+ "name": "{pass: false} expect({"a": [{"a": "a", "b": "b"}]}).toMatchObject({"a": [{"a": "c"}]})",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"a\\": 1, \\"b\\": 1, \\"c\\": 1, \\"d\\": {\\"e\\": {\\"f\\": 555}}}).toMatchObject({\\"d\\": {\\"e\\": {\\"f\\": 222}}})",
+ "name": "{pass: false} expect({"a": 1, "b": 1, "c": 1, "d": {"e": {"f": 555}}}).toMatchObject({"d": {"e": {"f": 222}}})",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({}).toMatchObject({\\"a\\": undefined})",
+ "name": "{pass: false} expect({}).toMatchObject({"a": undefined})",
"result": "success",
"time": 0,
},
@@ -17527,19 +17553,19 @@ Is good for you.\\")",
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"a\\": \\"b\\"}).toMatchObject({\\"c\\": \\"d\\"})",
+ "name": "{pass: false} expect({"a": "b"}).toMatchObject({"c": "d"})",
"result": "success",
"time": 4,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"a\\": \\"b\\", \\"c\\": \\"d\\", Symbol(jest): \\"jest\\"}).toMatchObject({\\"a\\": \\"c\\", Symbol(jest): Any})",
+ "name": "{pass: false} expect({"a": "b", "c": "d", Symbol(jest): "jest"}).toMatchObject({"a": "c", Symbol(jest): Any})",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "{pass: false} expect({\\"a\\": \\"b\\"}).toMatchObject({\\"toString\\": Any})",
+ "name": "{pass: false} expect({"a": "b"}).toMatchObject({"toString": Any})",
"result": "success",
"time": 0,
},
@@ -17557,7 +17583,7 @@ Is good for you.\\")",
},
TestCaseResult {
"error": undefined,
- "name": "throws expect(\\"44\\").toMatchObject({})",
+ "name": "throws expect("44").toMatchObject({})",
"result": "success",
"time": 0,
},
@@ -17587,7 +17613,7 @@ Is good for you.\\")",
},
TestCaseResult {
"error": undefined,
- "name": "throws expect({}).toMatchObject(\\"some string\\")",
+ "name": "throws expect({}).toMatchObject("some string")",
"result": "success",
"time": 0,
},
@@ -17616,10 +17642,10 @@ Is good for you.\\")",
"totalTime": 862,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "understands dependencies using jest.requireActual",
@@ -17633,10 +17659,10 @@ Is good for you.\\")",
"totalTime": 1665,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Watch mode flows",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Correctly passing test path pattern",
@@ -18029,43 +18055,43 @@ Is good for you.\\")",
},
TestCaseResult {
"error": undefined,
- "name": "Pressing \\"o\\" runs test in \\"only changed files\\" mode",
+ "name": "Pressing "o" runs test in "only changed files" mode",
"result": "success",
"time": 69,
},
TestCaseResult {
"error": undefined,
- "name": "Pressing \\"a\\" runs test in \\"watch all\\" mode",
+ "name": "Pressing "a" runs test in "watch all" mode",
"result": "success",
"time": 62,
},
TestCaseResult {
"error": undefined,
- "name": "Pressing \\"ENTER\\" reruns the tests",
+ "name": "Pressing "ENTER" reruns the tests",
"result": "success",
"time": 108,
},
TestCaseResult {
"error": undefined,
- "name": "Pressing \\"t\\" reruns the tests in \\"test name pattern\\" mode",
+ "name": "Pressing "t" reruns the tests in "test name pattern" mode",
"result": "success",
"time": 93,
},
TestCaseResult {
"error": undefined,
- "name": "Pressing \\"p\\" reruns the tests in \\"filename pattern\\" mode",
+ "name": "Pressing "p" reruns the tests in "filename pattern" mode",
"result": "success",
"time": 80,
},
TestCaseResult {
"error": undefined,
- "name": "Can combine \\"p\\" and \\"t\\" filters",
+ "name": "Can combine "p" and "t" filters",
"result": "success",
"time": 68,
},
TestCaseResult {
"error": undefined,
- "name": "Pressing \\"u\\" reruns the tests in \\"update snapshot\\" mode",
+ "name": "Pressing "u" reruns the tests in "update snapshot" mode",
"result": "success",
"time": 67,
},
@@ -18077,7 +18103,7 @@ Is good for you.\\")",
},
TestCaseResult {
"error": undefined,
- "name": "shows the correct usage for the f key in \\"only failed tests\\" mode",
+ "name": "shows the correct usage for the f key in "only failed tests" mode",
"result": "success",
"time": 62,
},
@@ -18085,7 +18111,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "Watch mode flows when dealing with potential watch plugin key conflicts",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "forbids WatchPlugins overriding reserved internal plugins",
@@ -18129,10 +18155,10 @@ Is good for you.\\")",
"totalTime": 6755,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "transitive dependencies",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "mocks a manually mocked and mapped module",
@@ -18176,10 +18202,10 @@ Is good for you.\\")",
"totalTime": 2366,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Watch mode flows with changed files",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should correct require new files without legacy cache",
@@ -18193,10 +18219,10 @@ Is good for you.\\")",
"totalTime": 1514,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "HasteMap",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "exports constants",
@@ -18301,7 +18327,7 @@ Is good for you.\\")",
},
TestCaseResult {
"error": undefined,
- "name": "throws on duplicate module ids if \\"throwOnModuleCollision\\" is set to true",
+ "name": "throws on duplicate module ids if "throwOnModuleCollision" is set to true",
"result": "success",
"time": 5,
},
@@ -18387,7 +18413,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "HasteMap builds a haste map on a fresh cache with SHA-1s",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "uses watchman: false",
@@ -18404,7 +18430,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "HasteMap duplicate modules",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "recovers when a duplicate file is deleted",
@@ -18427,7 +18453,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "HasteMap file system changes processing",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "provides a new set of hasteHS and moduleMap",
@@ -18462,7 +18488,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "HasteMap file system changes processing recovery from duplicate module IDs",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "recovers when the oldest version of the duplicates is fixed",
@@ -18488,10 +18514,10 @@ Is good for you.\\")",
"totalTime": 1145,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "code coverage for Handlebars",
@@ -18505,10 +18531,10 @@ Is good for you.\\")",
"totalTime": 1873,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "does not crash when expect involving a DOM node fails",
@@ -18522,10 +18548,10 @@ Is good for you.\\")",
"totalTime": 1407,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "check is not leaking memory",
@@ -18539,10 +18565,10 @@ Is good for you.\\")",
"totalTime": 1744,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "resolve platform modules",
@@ -18556,10 +18582,10 @@ Is good for you.\\")",
"totalTime": 1863,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Snapshot",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "stores new snapshots on the first run",
@@ -18588,7 +18614,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "Snapshot Validation",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "does not save snapshots in CI mode by default",
@@ -18626,10 +18652,10 @@ Is good for you.\\")",
"totalTime": 13899,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "mocks modules by default when using automocking",
@@ -18694,7 +18720,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "resetModules",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "resets all the modules",
@@ -18705,7 +18731,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "isolateModules",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "keeps it's registry isolated from global one",
@@ -18740,7 +18766,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "isolateModules can use isolateModules from a beforeEach block",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "can use the required module from beforeEach and re-require it",
@@ -18754,10 +18780,10 @@ Is good for you.\\")",
"totalTime": 1223,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Runtime requireMock",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "uses manual mocks before attempting to automock",
@@ -18843,10 +18869,10 @@ Is good for you.\\")",
"totalTime": 962,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Runtime",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "uses NODE_PATH to find modules",
@@ -18878,10 +18904,10 @@ Is good for you.\\")",
"totalTime": 1088,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Runtime require.resolve",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "resolves a module path",
@@ -18898,7 +18924,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "Runtime require.resolve with the jest-resolve-outside-vm-option",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "forwards to the real Node require in an internal context",
@@ -18924,10 +18950,10 @@ Is good for you.\\")",
"totalTime": 707,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "complains if the value is a primitive",
@@ -18971,10 +18997,10 @@ Is good for you.\\")",
"totalTime": 986,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "async jasmine with pending during test",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "does not work on jest-circus",
@@ -18994,10 +19020,10 @@ Is good for you.\\")",
"totalTime": 72,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "config for reporters supports \`default\`",
@@ -19053,10 +19079,10 @@ Is good for you.\\")",
"totalTime": 520,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "expect works correctly with RegExps created inside a VM",
@@ -19070,10 +19096,10 @@ Is good for you.\\")",
"totalTime": 1527,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Runtime requireActual",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "requires node module when manual mock exists",
@@ -19093,10 +19119,10 @@ Is good for you.\\")",
"totalTime": 478,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Runtime require.cache",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "require.cache returns loaded module list as native Nodejs require does",
@@ -19116,10 +19142,10 @@ Is good for you.\\")",
"totalTime": 454,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Runtime",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "uses configured moduleDirectories",
@@ -19151,10 +19177,10 @@ Is good for you.\\")",
"totalTime": 525,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Runtime internalModule",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "loads modules and applies transforms",
@@ -19186,10 +19212,10 @@ Is good for you.\\")",
"totalTime": 727,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "check",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "returns true if the arguments are valid",
@@ -19240,31 +19266,31 @@ Is good for you.\\")",
},
TestCaseResult {
"error": undefined,
- "name": "allows using \\"js\\" file for --config option",
+ "name": "allows using "js" file for --config option",
"result": "success",
"time": 10,
},
TestCaseResult {
"error": undefined,
- "name": "allows using \\"ts\\" file for --config option",
+ "name": "allows using "ts" file for --config option",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "allows using \\"mjs\\" file for --config option",
+ "name": "allows using "mjs" file for --config option",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "allows using \\"cjs\\" file for --config option",
+ "name": "allows using "cjs" file for --config option",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "allows using \\"json\\" file for --config option",
+ "name": "allows using "json" file for --config option",
"result": "success",
"time": 0,
},
@@ -19290,7 +19316,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "buildArgv",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return only camelcased args",
@@ -19304,10 +19330,10 @@ Is good for you.\\")",
"totalTime": 345,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Runtime jest.spyOn",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "calls the original function",
@@ -19318,7 +19344,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "Runtime jest.spyOnProperty",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "calls the original function",
@@ -19332,10 +19358,10 @@ Is good for you.\\")",
"totalTime": 521,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "resolves no dependencies for non-existent path",
@@ -19409,10 +19435,10 @@ Is good for you.\\")",
"totalTime": 666,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should exclude jasmine from stack trace for Unix paths.",
@@ -19465,7 +19491,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "formatStackTrace",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "prints code frame and stacktrace",
@@ -19491,10 +19517,10 @@ Is good for you.\\")",
"totalTime": 205,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "different types",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "'1' and 'a'",
@@ -19529,10 +19555,10 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "no visual difference",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "'\\"a\\"' and '\\"a\\"'",
+ "name": "'"a"' and '"a"'",
"result": "success",
"time": 2,
},
@@ -19598,13 +19624,13 @@ Is good for you.\\")",
},
TestCaseResult {
"error": undefined,
- "name": "'{\\"a\\":1}' and '{\\"a\\":1}'",
+ "name": "'{"a":1}' and '{"a":1}'",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "'{\\"a\\":{\\"b\\":5}}' and '{\\"a\\":{\\"b\\":5}}'",
+ "name": "'{"a":{"b":5}}' and '{"a":{"b":5}}'",
"result": "success",
"time": 0,
},
@@ -19624,7 +19650,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "oneline strings",
@@ -19659,7 +19685,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "falls back to not call toJSON if serialization has no differences",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "but then objects have differences",
@@ -19676,7 +19702,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "falls back to not call toJSON if it throws",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "and then objects have differences",
@@ -19693,7 +19719,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "multiline strings",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "(unexpanded)",
@@ -19710,7 +19736,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "objects",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "(unexpanded)",
@@ -19727,7 +19753,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "multiline string non-snapshot",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "(unexpanded)",
@@ -19744,7 +19770,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "multiline string snapshot",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "(unexpanded)",
@@ -19761,7 +19787,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "React elements",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "(unexpanded)",
@@ -19778,7 +19804,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "multiline string as value of object property (non-snapshot)",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "(unexpanded)",
@@ -19795,7 +19821,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "multiline string as value of object property (snapshot)",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "(unexpanded)",
@@ -19812,7 +19838,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "indentation in JavaScript structures from less to more",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "(unexpanded)",
@@ -19829,7 +19855,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "indentation in JavaScript structures from more to less",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "(unexpanded)",
@@ -19846,7 +19872,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "color of text",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "(expanded)",
@@ -19863,7 +19889,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "indentation in React elements (non-snapshot) from less to more",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "(unexpanded)",
@@ -19880,7 +19906,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "indentation in React elements (non-snapshot) from more to less",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "(unexpanded)",
@@ -19897,7 +19923,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "indentation in React elements (snapshot) from less to more",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "(unexpanded)",
@@ -19914,7 +19940,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "indentation in React elements (snapshot) from more to less",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "(unexpanded)",
@@ -19931,7 +19957,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "outer React element (non-snapshot) from less to more",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "(unexpanded)",
@@ -19948,7 +19974,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "outer React element (non-snapshot) from more to less",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "(unexpanded)",
@@ -19965,7 +19991,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "trailing newline in multiline string not enclosed in quotes from less to more",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "(unexpanded)",
@@ -19982,7 +20008,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "trailing newline in multiline string not enclosed in quotes from more to less",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "(unexpanded)",
@@ -19999,7 +20025,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "context",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "number of lines: -1 (5 default)",
@@ -20040,7 +20066,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "diffLinesUnified edge cases",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "a empty string b empty string",
@@ -20069,7 +20095,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "diffLinesUnified2 edge cases",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "a empty string b empty string",
@@ -20098,7 +20124,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "diffLinesUnified2 edge cases lengths not equal",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "a",
@@ -20115,7 +20141,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "diffStringsUnified edge cases",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "empty both a and b",
@@ -20156,7 +20182,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "options 7980",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "diff",
@@ -20173,7 +20199,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "options change indicators",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "diff",
@@ -20184,7 +20210,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "options change color",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "diffStringsUnified",
@@ -20201,7 +20227,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "options common",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "diff",
@@ -20218,7 +20244,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "options includeChangeCounts false",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "diffLinesUnified",
@@ -20235,7 +20261,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "options includeChangeCounts true padding",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "diffLinesUnified a has 2 digits",
@@ -20258,7 +20284,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "options omitAnnotationLines true",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "diff",
@@ -20281,7 +20307,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "options trailingSpaceFormatter",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "diffDefault default no color",
@@ -20304,7 +20330,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "options emptyFirstOrLastLinePlaceholder default empty string",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "diffDefault",
@@ -20324,13 +20350,13 @@ Is good for you.\\")",
"totalTime": 625,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Watch mode flows",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "Pressing \\"T\\" enters pattern mode",
+ "name": "Pressing "T" enters pattern mode",
"result": "success",
"time": 8,
},
@@ -20341,10 +20367,10 @@ Is good for you.\\")",
"totalTime": 246,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "toBeCalled",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "works only on spies or jest.fn",
@@ -20385,7 +20411,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "toHaveBeenCalled",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "works only on spies or jest.fn",
@@ -20426,7 +20452,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "toBeCalledTimes",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": ".not works only on spies or jest.fn",
@@ -20473,7 +20499,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "toHaveBeenCalledTimes",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": ".not works only on spies or jest.fn",
@@ -20520,7 +20546,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "lastCalledWith",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "works only on spies or jest.fn",
@@ -20597,7 +20623,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "toHaveBeenLastCalledWith",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "works only on spies or jest.fn",
@@ -20674,7 +20700,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "nthCalledWith",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "works only on spies or jest.fn",
@@ -20763,7 +20789,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "toHaveBeenNthCalledWith",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "works only on spies or jest.fn",
@@ -20852,7 +20878,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "toBeCalledWith",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "works only on spies or jest.fn",
@@ -20929,7 +20955,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "toHaveBeenCalledWith",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "works only on spies or jest.fn",
@@ -21006,7 +21032,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "toReturn",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": ".not works only on jest.fn",
@@ -21083,7 +21109,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "toHaveReturned",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": ".not works only on jest.fn",
@@ -21160,7 +21186,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "toReturnTimes",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "throw matcher error if received is spy",
@@ -21231,7 +21257,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "toHaveReturnedTimes",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "throw matcher error if received is spy",
@@ -21302,7 +21328,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "lastReturnedWith",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "works only on spies or jest.fn",
@@ -21385,7 +21411,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "lastReturnedWith lastReturnedWith",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "works with three calls",
@@ -21402,7 +21428,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "toHaveLastReturnedWith",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "works only on spies or jest.fn",
@@ -21485,7 +21511,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "toHaveLastReturnedWith lastReturnedWith",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "works with three calls",
@@ -21502,7 +21528,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "nthReturnedWith",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "works only on spies or jest.fn",
@@ -21585,7 +21611,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "nthReturnedWith nthReturnedWith",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "works with three calls",
@@ -21632,7 +21658,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "toHaveNthReturnedWith",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "works only on spies or jest.fn",
@@ -21715,7 +21741,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "toHaveNthReturnedWith nthReturnedWith",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "works with three calls",
@@ -21762,7 +21788,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "toReturnWith",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "works only on spies or jest.fn",
@@ -21845,7 +21871,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "toReturnWith returnedWith",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "works with more calls than the limit",
@@ -21862,7 +21888,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "toHaveReturnedWith",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "works only on spies or jest.fn",
@@ -21945,7 +21971,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "toHaveReturnedWith returnedWith",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "works with more calls than the limit",
@@ -21965,10 +21991,10 @@ Is good for you.\\")",
"totalTime": 395,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "gets hg SCM roots and dedupes them",
@@ -22007,12 +22033,12 @@ Is good for you.\\")",
},
TestCaseResult {
"error": undefined,
- "name": "handles a bad revision for \\"changedSince\\", for git",
+ "name": "handles a bad revision for "changedSince", for git",
"result": "success",
"time": 878,
},
TestCaseResult {
- "error": Object {
+ "error": {
"details": "Error: abort: empty revision range
at makeError (/home/dorny/dorny/jest/node_modules/execa/lib/error.js:59:11)
at handlePromise (/home/dorny/dorny/jest/node_modules/execa/index.js:114:26)
@@ -22039,7 +22065,7 @@ Is good for you.\\")",
},
TestCaseResult {
"error": undefined,
- "name": "handles a bad revision for \\"changedSince\\", for hg",
+ "name": "handles a bad revision for "changedSince", for hg",
"result": "success",
"time": 949,
},
@@ -22050,10 +22076,10 @@ Is good for you.\\")",
"totalTime": 9045,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "stringify()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "[]",
@@ -22098,7 +22124,7 @@ Is good for you.\\")",
},
TestCaseResult {
"error": undefined,
- "name": "\\"abc\\"",
+ "name": ""abc"",
"result": "success",
"time": 0,
},
@@ -22128,7 +22154,7 @@ Is good for you.\\")",
},
TestCaseResult {
"error": undefined,
- "name": "/ab\\\\.c/gi",
+ "name": "/ab\\.c/gi",
"result": "success",
"time": 0,
},
@@ -22172,7 +22198,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "ensureNumbers()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "dont throw error when variables are numbers",
@@ -22195,7 +22221,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "ensureNumbers() with options",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "promise empty isNot false received",
@@ -22236,7 +22262,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "ensureNoExpected()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "dont throw error when undefined",
@@ -22259,7 +22285,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "diff",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "forwards to jest-diff",
@@ -22288,7 +22314,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "pluralize()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "one",
@@ -22311,7 +22337,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "getLabelPrinter",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "0 args",
@@ -22358,7 +22384,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "matcherHint",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "expectedColor",
@@ -22384,19 +22410,19 @@ Is good for you.\\")",
"totalTime": 391,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Watch mode flows",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "Pressing \\"P\\" enters pattern mode",
+ "name": "Pressing "P" enters pattern mode",
"result": "success",
"time": 7,
},
TestCaseResult {
"error": undefined,
- "name": "Pressing \\"c\\" clears the filters",
+ "name": "Pressing "c" clears the filters",
"result": "success",
"time": 1,
},
@@ -22407,10 +22433,10 @@ Is good for you.\\")",
"totalTime": 165,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Runtime createMockFromModule",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "does not cause side effects in the rest of the module system when generating a mock",
@@ -22427,7 +22453,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "Runtime",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "creates mock objects in the right environment",
@@ -22441,10 +22467,10 @@ Is good for you.\\")",
"totalTime": 606,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Runtime requireModule",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "emulates a node stack trace during module load",
@@ -22464,10 +22490,10 @@ Is good for you.\\")",
"totalTime": 497,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "watchman crawler and node crawler both include dotfiles",
@@ -22481,10 +22507,10 @@ Is good for you.\\")",
"totalTime": 337,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "watchman watch",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "returns a list of all files when there are no clocks",
@@ -22540,10 +22566,10 @@ Is good for you.\\")",
"totalTime": 153,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "FakeTimers construction",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "installs setTimeout mock",
@@ -22596,7 +22622,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "FakeTimers runAllTicks",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "runs all ticks, in order",
@@ -22655,7 +22681,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "FakeTimers runAllTimers",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "runs all timers in order",
@@ -22708,7 +22734,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "FakeTimers advanceTimersByTime",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "runs timers in order",
@@ -22731,7 +22757,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "FakeTimers advanceTimersToNextTimer",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "runs timers in order",
@@ -22760,7 +22786,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "FakeTimers reset",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "resets all pending setTimeouts",
@@ -22789,7 +22815,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "FakeTimers runOnlyPendingTimers",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "runs all timers in order",
@@ -22806,7 +22832,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "FakeTimers runWithRealTimers",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "executes callback with native timers",
@@ -22829,7 +22855,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "FakeTimers useRealTimers",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "resets native timer APIs",
@@ -22852,7 +22878,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "FakeTimers useFakeTimers",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "resets mock timer APIs",
@@ -22875,7 +22901,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "FakeTimers getTimerCount",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "returns the correct count",
@@ -22901,10 +22927,10 @@ Is good for you.\\")",
"totalTime": 302,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Runtime jest.fn",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "creates mock functions",
@@ -22921,7 +22947,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "Runtime jest.isMockFunction",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "recognizes a mocked function",
@@ -22932,7 +22958,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "Runtime jest.clearAllMocks",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "clears all mocks",
@@ -22946,10 +22972,10 @@ Is good for you.\\")",
"totalTime": 479,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "toStrictEqual",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should be reflexive",
@@ -22966,7 +22992,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "toStrictEqual on node >=9",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should be equivalent to Node deepStrictEqual",
@@ -22980,10 +23006,10 @@ Is good for you.\\")",
"totalTime": 394,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should be reflexive",
@@ -23033,10 +23059,10 @@ Is good for you.\\")",
"totalTime": 357,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "FakeTimers construction",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "installs setTimeout mock",
@@ -23083,7 +23109,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "FakeTimers runAllTicks",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "runs all ticks, in order",
@@ -23112,7 +23138,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "FakeTimers runAllTimers",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "runs all timers in order",
@@ -23165,7 +23191,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "FakeTimers advanceTimersByTime",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "runs timers in order",
@@ -23182,7 +23208,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "FakeTimers advanceTimersToNextTimer",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "runs timers in order",
@@ -23211,7 +23237,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "FakeTimers reset",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "resets all pending setTimeouts",
@@ -23240,7 +23266,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "FakeTimers runOnlyPendingTimers",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "runs all timers in order",
@@ -23257,7 +23283,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "FakeTimers useRealTimers",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "resets native timer APIs",
@@ -23280,7 +23306,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "FakeTimers useFakeTimers",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "resets mock timer APIs",
@@ -23303,7 +23329,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "FakeTimers getTimerCount",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "returns the correct count",
@@ -23329,10 +23355,10 @@ Is good for you.\\")",
"totalTime": 317,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "toContain",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should always find the value when inside the array",
@@ -23352,10 +23378,10 @@ Is good for you.\\")",
"totalTime": 236,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Runtime wrapCodeInModuleWrapper",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "generates the correct args for the module wrapper",
@@ -23364,7 +23390,7 @@ Is good for you.\\")",
},
TestCaseResult {
"error": undefined,
- "name": "injects \\"extra globals\\"",
+ "name": "injects "extra globals"",
"result": "success",
"time": 43,
},
@@ -23375,10 +23401,10 @@ Is good for you.\\")",
"totalTime": 263,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "toContainEqual",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should always find the value when inside the array",
@@ -23398,10 +23424,10 @@ Is good for you.\\")",
"totalTime": 287,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "invalid arg length",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "is not a number",
@@ -23442,7 +23468,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "invalid arg callback",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "null is not a function",
@@ -23459,7 +23485,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "input callback encapsulates comparison zero and negative zero",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "are not common according to Object.is method",
@@ -23476,7 +23502,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "input callback encapsulates comparison Not a Number",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "is common according to Object.is method",
@@ -23493,7 +23519,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "input callback encapsulates sequences",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "arrays of strings",
@@ -23516,7 +23542,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "no common items negative zero is equivalent to zero for length",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "of a",
@@ -23539,7 +23565,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "no common items",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "a empty and b empty",
@@ -23562,7 +23588,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "no common items a non-empty and b non-empty",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "baDeltaLength 0 even",
@@ -23591,7 +23617,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "only common items",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "length 1",
@@ -23608,7 +23634,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "all common items outside",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "preceding changes",
@@ -23631,7 +23657,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "some common items inside and outside",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "preceding changes adjacent to common in both sequences",
@@ -23648,7 +23674,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "all common items inside non-recursive",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "move from start to end relative to change",
@@ -23689,7 +23715,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "all common items inside recursive",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "prev reverse at depth 1 and preceding at depth 2",
@@ -23736,7 +23762,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "common substrings",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "progress",
@@ -23762,10 +23788,10 @@ Is good for you.\\")",
"totalTime": 195,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": ".getType()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "null",
@@ -23857,10 +23883,10 @@ Is good for you.\\")",
"totalTime": 45,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
- "name": "init project with package.json and no jest config all questions answered with answer: \\"No\\"",
- "tests": Array [
+ "name": "init project with package.json and no jest config all questions answered with answer: "No"",
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return the default configuration (an empty config)",
@@ -23876,8 +23902,8 @@ Is good for you.\\")",
],
},
TestGroupResult {
- "name": "init project with package.json and no jest config some questions answered with answer: \\"Yes\\"",
- "tests": Array [
+ "name": "init project with package.json and no jest config some questions answered with answer: "Yes"",
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should create configuration for {clearMocks: true}",
@@ -23892,25 +23918,25 @@ Is good for you.\\")",
},
TestCaseResult {
"error": undefined,
- "name": "should create configuration for {coverageProvider: \\"babel\\"}",
+ "name": "should create configuration for {coverageProvider: "babel"}",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "should create configuration for {coverageProvider: \\"v8\\"}",
+ "name": "should create configuration for {coverageProvider: "v8"}",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "should create configuration for {environment: \\"jsdom\\"}",
+ "name": "should create configuration for {environment: "jsdom"}",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "should create configuration for {environment: \\"node\\"}",
+ "name": "should create configuration for {environment: "node"}",
"result": "success",
"time": 1,
},
@@ -23924,7 +23950,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "init no package json",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should throw an error if there is no package.json file",
@@ -23935,16 +23961,16 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "init has-jest-config-file-js ask the user whether to override config or not",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "user answered with \\"Yes\\"",
+ "name": "user answered with "Yes"",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "user answered with \\"No\\"",
+ "name": "user answered with "No"",
"result": "success",
"time": 0,
},
@@ -23952,16 +23978,16 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "init has-jest-config-file-ts ask the user whether to override config or not",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "user answered with \\"Yes\\"",
+ "name": "user answered with "Yes"",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "user answered with \\"No\\"",
+ "name": "user answered with "No"",
"result": "success",
"time": 0,
},
@@ -23969,16 +23995,16 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "init has-jest-config-file-mjs ask the user whether to override config or not",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "user answered with \\"Yes\\"",
+ "name": "user answered with "Yes"",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "user answered with \\"No\\"",
+ "name": "user answered with "No"",
"result": "success",
"time": 1,
},
@@ -23986,16 +24012,16 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "init has-jest-config-file-cjs ask the user whether to override config or not",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "user answered with \\"Yes\\"",
+ "name": "user answered with "Yes"",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "user answered with \\"No\\"",
+ "name": "user answered with "No"",
"result": "success",
"time": 1,
},
@@ -24003,16 +24029,16 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "init has-jest-config-file-json ask the user whether to override config or not",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "user answered with \\"Yes\\"",
+ "name": "user answered with "Yes"",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "user answered with \\"No\\"",
+ "name": "user answered with "No"",
"result": "success",
"time": 0,
},
@@ -24020,16 +24046,16 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "init project using jest.config.ts ask the user whether he wants to use Typescript or not",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "user answered with \\"Yes\\"",
+ "name": "user answered with "Yes"",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "user answered with \\"No\\"",
+ "name": "user answered with "No"",
"result": "success",
"time": 1,
},
@@ -24037,7 +24063,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "init has jest config in package.json",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should ask the user whether to override config or not",
@@ -24047,11 +24073,11 @@ Is good for you.\\")",
],
},
TestGroupResult {
- "name": "init already has \\"jest\\" in packageJson.scripts.test",
- "tests": Array [
+ "name": "init already has "jest" in packageJson.scripts.test",
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "should not ask \\"test script question\\"",
+ "name": "should not ask "test script question"",
"result": "success",
"time": 0,
},
@@ -24062,10 +24088,10 @@ Is good for you.\\")",
"totalTime": 119,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Runtime requireModule with no extension",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "throws error pointing out file with extension",
@@ -24079,10 +24105,10 @@ Is good for you.\\")",
"totalTime": 261,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "returns the same value for primitive or function values",
@@ -24162,10 +24188,10 @@ Is good for you.\\")",
"totalTime": 86,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "works with jest.config.js",
@@ -24179,10 +24205,10 @@ Is good for you.\\")",
"totalTime": 138,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "creates a process object that looks like the original one",
@@ -24191,7 +24217,7 @@ Is good for you.\\")",
},
TestCaseResult {
"error": undefined,
- "name": "fakes require(\\"process\\") so it is equal to \\"global.process\\"",
+ "name": "fakes require("process") so it is equal to "global.process"",
"result": "success",
"time": 0,
},
@@ -24214,10 +24240,10 @@ Is good for you.\\")",
"totalTime": 81,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "instruments files",
@@ -24231,10 +24257,10 @@ Is good for you.\\")",
"totalTime": 275,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "runJest",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "when watch is set then exit process",
@@ -24254,10 +24280,10 @@ Is good for you.\\")",
"totalTime": 261,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Replaceable constructor",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "init with object",
@@ -24286,7 +24312,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "Replaceable get",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "get object item",
@@ -24309,7 +24335,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "Replaceable set",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "set object item",
@@ -24332,7 +24358,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "Replaceable forEach",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "object forEach",
@@ -24361,7 +24387,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "Replaceable isReplaceable",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return true if two object types equal and support",
@@ -24387,10 +24413,10 @@ Is good for you.\\")",
"totalTime": 111,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "defaults to milliseconds",
@@ -24464,10 +24490,10 @@ Is good for you.\\")",
"totalTime": 82,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Jest Worker Process Integration",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "calls a single method from the worker",
@@ -24511,10 +24537,10 @@ Is good for you.\\")",
"totalTime": 114,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "worker",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "parses JavaScript files and extracts module information",
@@ -24564,10 +24590,10 @@ Is good for you.\\")",
"totalTime": 100,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "printDiffOrStringify",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "expected is empty and received is single line",
@@ -24614,7 +24640,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "printDiffOrStringify MAX_DIFF_STRING_LENGTH",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "both are less",
@@ -24637,7 +24663,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "printDiffOrStringify asymmetricMatcher",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "minimal test",
@@ -24711,10 +24737,10 @@ Is good for you.\\")",
"totalTime": 114,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "getPath()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "property exists",
@@ -24761,22 +24787,22 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "getObjectSubset",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "expect(getObjectSubset({\\"a\\": \\"b\\", \\"c\\": \\"d\\"}, {\\"a\\": \\"d\\"})).toEqual({\\"a\\": \\"b\\"})",
+ "name": "expect(getObjectSubset({"a": "b", "c": "d"}, {"a": "d"})).toEqual({"a": "b"})",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "expect(getObjectSubset({\\"a\\": [1, 2], \\"b\\": \\"b\\"}, {\\"a\\": [3, 4]})).toEqual({\\"a\\": [1, 2]})",
+ "name": "expect(getObjectSubset({"a": [1, 2], "b": "b"}, {"a": [3, 4]})).toEqual({"a": [1, 2]})",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "expect(getObjectSubset([{\\"a\\": \\"b\\", \\"c\\": \\"d\\"}], [{\\"a\\": \\"z\\"}])).toEqual([{\\"a\\": \\"b\\"}])",
+ "name": "expect(getObjectSubset([{"a": "b", "c": "d"}], [{"a": "z"}])).toEqual([{"a": "b"}])",
"result": "success",
"time": 1,
},
@@ -24788,7 +24814,7 @@ Is good for you.\\")",
},
TestCaseResult {
"error": undefined,
- "name": "expect(getObjectSubset({\\"a\\": [1]}, {\\"a\\": [1, 2]})).toEqual({\\"a\\": [1]})",
+ "name": "expect(getObjectSubset({"a": [1]}, {"a": [1, 2]})).toEqual({"a": [1]})",
"result": "success",
"time": 0,
},
@@ -24802,7 +24828,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "getObjectSubset returns the object instance if the subset has no extra properties",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Date",
@@ -24813,7 +24839,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "getObjectSubset returns the subset instance if its property values are equal",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Object",
@@ -24824,7 +24850,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "getObjectSubset returns the subset instance if its property values are equal Uint8Array",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "expected",
@@ -24841,7 +24867,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "getObjectSubset calculating subsets of objects with circular references",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "simple circular references",
@@ -24858,7 +24884,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "emptyObject()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "matches an empty object",
@@ -24881,7 +24907,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "subsetEquality()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "matching object returns true",
@@ -24916,7 +24942,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "subsetEquality() matching subsets with circular references",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "simple circular references",
@@ -24939,7 +24965,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "iterableEquality",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "returns true when given circular iterators",
@@ -25013,10 +25039,10 @@ Is good for you.\\")",
"totalTime": 147,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "returns the same value for primitive or function values",
@@ -25090,10 +25116,10 @@ Is good for you.\\")",
"totalTime": 49,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "isError",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not assume objects are errors",
@@ -25125,10 +25151,10 @@ Is good for you.\\")",
"totalTime": 43,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": ".isPrimitive()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "returns true when given primitive value of: null",
@@ -25227,7 +25253,7 @@ Is good for you.\\")",
},
TestCaseResult {
"error": undefined,
- "name": "returns false when given non primitive value of: \\"2021-01-24T19:22:19.272Z\\"",
+ "name": "returns false when given non primitive value of: "2021-01-24T19:22:19.272Z"",
"result": "success",
"time": 0,
},
@@ -25244,10 +25270,10 @@ Is good for you.\\")",
"totalTime": 36,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "node crawler",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "crawls for files based on patterns",
@@ -25280,7 +25306,7 @@ Is good for you.\\")",
},
TestCaseResult {
"error": undefined,
- "name": "uses node fs APIs if \\"forceNodeFilesystemAPI\\" is set to true, regardless of platform",
+ "name": "uses node fs APIs if "forceNodeFilesystemAPI" is set to true, regardless of platform",
"result": "success",
"time": 6,
},
@@ -25300,7 +25326,7 @@ Is good for you.\\")",
},
TestGroupResult {
"name": "node crawler readdir withFileTypes support",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "calls lstat for directories and symlinks if readdir withFileTypes is not supported",
@@ -25320,13 +25346,13 @@ Is good for you.\\")",
"totalTime": 170,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "run for \\"onlyChanged\\" and \\"changedSince\\"",
+ "name": "run for "onlyChanged" and "changedSince"",
"result": "success",
"time": 1464,
},
@@ -25367,14 +25393,14 @@ Is good for you.\\")",
"time": 7023,
},
TestCaseResult {
- "error": Object {
+ "error": {
"details": "Error: expect(received).toMatch(expected)
-Expected pattern: /PASS __tests__(\\\\/|\\\\\\\\)file2.test.js/
-Received string: \\"·
+Expected pattern: /PASS __tests__(\\/|\\\\)file2.test.js/
+Received string: "·
● Test suite failed to run·
abort: empty revision range
-\\"
+"
at Object.toMatch (/home/dorny/dorny/jest/e2e/__tests__/onlyChanged.test.ts:360:18)
at Promise.then.completed (/home/dorny/dorny/jest/packages/jest-circus/build/utils.js:307:28)
at new Promise ()
@@ -25405,10 +25431,10 @@ Received string: \\"·
"totalTime": 22281,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "joinAlignedDiffsExpand",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "first line is empty common",
@@ -25419,7 +25445,7 @@ Received string: \\"·
},
TestGroupResult {
"name": "joinAlignedDiffsNoExpand",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "patch 0 with context 1 and change at start and end",
@@ -25457,10 +25483,10 @@ Received string: \\"·
"totalTime": 44,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "SnapshotInteractiveMode",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "is inactive at construction",
@@ -25546,10 +25572,10 @@ Received string: \\"·
"totalTime": 89,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Runtime statics",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Runtime.createHasteMap passes correct ignore files to HasteMap",
@@ -25569,10 +25595,10 @@ Received string: \\"·
"totalTime": 162,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "getAlignedDiffs lines",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "change preceding and following common",
@@ -25607,7 +25633,7 @@ Received string: \\"·
},
TestGroupResult {
"name": "getAlignedDiffs newline",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "delete only",
@@ -25648,7 +25674,7 @@ Received string: \\"·
},
TestGroupResult {
"name": "getAlignedDiffs substrings first",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "common when both current change lines are empty",
@@ -25677,7 +25703,7 @@ Received string: \\"·
},
TestGroupResult {
"name": "getAlignedDiffs substrings middle",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "is empty in delete between common",
@@ -25706,7 +25732,7 @@ Received string: \\"·
},
TestGroupResult {
"name": "getAlignedDiffs substrings last",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "is empty in delete at end",
@@ -25729,7 +25755,7 @@ Received string: \\"·
},
TestGroupResult {
"name": "getAlignedDiffs strings",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "change at start and delete or insert at end",
@@ -25749,10 +25775,10 @@ Received string: \\"·
"totalTime": 72,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": ".assertions()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "does not throw",
@@ -25775,7 +25801,7 @@ Received string: \\"·
},
TestGroupResult {
"name": ".hasAssertions()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "does not throw if there is an assertion",
@@ -25801,10 +25827,10 @@ Received string: \\"·
"totalTime": 60,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "getPlatformExtension",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should get platform ext",
@@ -25818,10 +25844,10 @@ Received string: \\"·
"totalTime": 35,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "isRegExpSupported",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return true when passing valid regular expression",
@@ -25841,10 +25867,10 @@ Received string: \\"·
"totalTime": 31,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "stack trace points to correct location when using matchers",
@@ -25870,10 +25896,10 @@ Received string: \\"·
"totalTime": 69,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Jest Worker Integration",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "calls a single method from the worker",
@@ -25911,10 +25937,10 @@ Received string: \\"·
"totalTime": 62,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "is valid when it is a file inside roots",
@@ -25940,10 +25966,10 @@ Received string: \\"·
"totalTime": 166,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "ErrorWithStack",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "calls Error.captureStackTrace with given callsite when capture exists",
@@ -25957,10 +25983,10 @@ Received string: \\"·
"totalTime": 41,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Returns true when running on interactive environment",
@@ -25980,10 +26006,10 @@ Received string: \\"·
"totalTime": 35,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "diffStringsRaw",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "one-line with cleanup",
@@ -26003,10 +26029,10 @@ Received string: \\"·
"totalTime": 55,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "works like micromatch with only positive globs",
@@ -26038,10 +26064,10 @@ Received string: \\"·
"totalTime": 56,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "shouldRunInBand() - should return true for runInBand mode",
@@ -26121,10 +26147,10 @@ Received string: \\"·
"totalTime": 48,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "returns the passed object",
@@ -26144,10 +26170,10 @@ Received string: \\"·
"totalTime": 68,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "getMockName",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "extracts mock name from file path",
@@ -26161,10 +26187,10 @@ Received string: \\"·
"totalTime": 22,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "WorkerPool",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should create a ChildProcessWorker and send to it",
@@ -26190,10 +26216,10 @@ Received string: \\"·
"totalTime": 51,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "dependencyExtractor",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not extract dependencies inside comments",
@@ -26291,10 +26317,10 @@ Received string: \\"·
"totalTime": 56,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "normalizePathSep",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "does nothing on posix",
@@ -26314,10 +26340,10 @@ Received string: \\"·
"totalTime": 35,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "fastPath.relative",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should get relative paths inside the root",
@@ -26340,7 +26366,7 @@ Received string: \\"·
},
TestGroupResult {
"name": "fastPath.resolve",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should get the absolute path for paths inside the root",
@@ -26360,10 +26386,10 @@ Received string: \\"·
"totalTime": 29,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "FailedTestsCache",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should filter tests",
@@ -26377,10 +26403,10 @@ Received string: \\"·
"totalTime": 25,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "getNoTestsFoundMessage",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "returns correct message when monitoring only failures",
@@ -26418,10 +26444,10 @@ Received string: \\"·
"totalTime": 61,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Common globals",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "check process",
@@ -26435,10 +26461,10 @@ Received string: \\"·
"totalTime": 22,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "prints the jest version",
@@ -26464,10 +26490,10 @@ Received string: \\"·
"totalTime": 48,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "not a Promise: ",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "undefined",
@@ -26494,7 +26520,7 @@ Received string: \\"·
},
TestCaseResult {
"error": undefined,
- "name": "\\"1337\\"",
+ "name": ""1337"",
"result": "success",
"time": 0,
},
@@ -26520,7 +26546,7 @@ Received string: \\"·
},
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "a resolved Promise",
@@ -26540,10 +26566,10 @@ Received string: \\"·
"totalTime": 30,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should remove jest config if exists",
@@ -26575,10 +26601,10 @@ Received string: \\"·
"totalTime": 30,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Symbol in objects",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should compare objects with Symbol keys",
@@ -26604,10 +26630,10 @@ Received string: \\"·
"totalTime": 33,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "stub",
@@ -26621,10 +26647,10 @@ Received string: \\"·
"totalTime": 37,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "stub",
@@ -26638,10 +26664,10 @@ Received string: \\"·
"totalTime": 19,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "dummy-test",
@@ -26655,10 +26681,10 @@ Received string: \\"·
"totalTime": 31,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should copy dom element",
@@ -26678,10 +26704,10 @@ Received string: \\"·
"totalTime": 48,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "on node ^12.16.0 || >=13.7.0",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "runs TS test with native ESM",
@@ -26695,10 +26721,10 @@ Received string: \\"·
"totalTime": 956,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "maps code coverage against original source",
@@ -26712,10 +26738,10 @@ Received string: \\"·
"totalTime": 12701,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "globalTeardown is triggered once after all test suites",
@@ -26765,10 +26791,10 @@ Received string: \\"·
"totalTime": 11886,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "--listTests doesn't duplicate the test files",
@@ -26783,7 +26809,7 @@ Received string: \\"·
},
TestCaseResult {
"error": undefined,
- "name": "\\"No tests found\\" message for projects",
+ "name": ""No tests found" message for projects",
"result": "success",
"time": 977,
},
@@ -26845,7 +26871,7 @@ Received string: \\"·
},
TestGroupResult {
"name": "doesn't bleed module file extensions resolution with multiple workers",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "external config files",
@@ -26865,10 +26891,10 @@ Received string: \\"·
"totalTime": 16360,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "basic support",
@@ -26930,10 +26956,10 @@ Received string: \\"·
"totalTime": 17025,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "prints message about flag on slow tests",
@@ -26968,7 +26994,7 @@ Received string: \\"·
},
TestGroupResult {
"name": "on node >=11.10.0",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "does not report ELD histograms",
@@ -26979,7 +27005,7 @@ Received string: \\"·
},
TestGroupResult {
"name": "notify",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "does not report --notify flag",
@@ -26990,7 +27016,7 @@ Received string: \\"·
},
TestGroupResult {
"name": "on node >=11",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "does not report timeouts using unref",
@@ -27004,10 +27030,10 @@ Received string: \\"·
"totalTime": 7528,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "not throwing Error objects",
@@ -27057,10 +27083,10 @@ Received string: \\"·
"totalTime": 10353,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "console printing",
@@ -27110,10 +27136,10 @@ Received string: \\"·
"totalTime": 8071.999999999999,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "basic test constructs",
@@ -27181,10 +27207,10 @@ Received string: \\"·
"totalTime": 7505,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "exits with 1 if coverage threshold is not met",
@@ -27222,10 +27248,10 @@ Received string: \\"·
"totalTime": 4868,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "prints a message with path pattern at the end",
@@ -27239,10 +27265,10 @@ Received string: \\"·
"totalTime": 3076,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Dynamic test filtering",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "uses the default JSON option",
@@ -27292,10 +27318,10 @@ Received string: \\"·
"totalTime": 5422,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Given a config with two named projects, first-project and second-project when Jest is started with \`--selectProjects first-project\`",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "runs the tests in the first project only",
@@ -27312,7 +27338,7 @@ Received string: \\"·
},
TestGroupResult {
"name": "Given a config with two named projects, first-project and second-project when Jest is started with \`--selectProjects second-project\`",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "runs the tests in the second project only",
@@ -27329,7 +27355,7 @@ Received string: \\"·
},
TestGroupResult {
"name": "Given a config with two named projects, first-project and second-project when Jest is started with \`--selectProjects first-project second-project\`",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "runs the tests in the first and second projects",
@@ -27346,7 +27372,7 @@ Received string: \\"·
},
TestGroupResult {
"name": "Given a config with two named projects, first-project and second-project when Jest is started without providing \`--selectProjects\`",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "runs the tests in the first and second projects",
@@ -27363,7 +27389,7 @@ Received string: \\"·
},
TestGroupResult {
"name": "Given a config with two named projects, first-project and second-project when Jest is started with \`--selectProjects third-project\`",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "fails",
@@ -27380,7 +27406,7 @@ Received string: \\"·
},
TestGroupResult {
"name": "Given a config with two projects, first-project and an unnamed project when Jest is started with \`--selectProjects first-project\`",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "runs the tests in the first project only",
@@ -27403,7 +27429,7 @@ Received string: \\"·
},
TestGroupResult {
"name": "Given a config with two projects, first-project and an unnamed project when Jest is started without providing \`--selectProjects\`",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "runs the tests in the first and second projects",
@@ -27420,7 +27446,7 @@ Received string: \\"·
},
TestGroupResult {
"name": "Given a config with two projects, first-project and an unnamed project when Jest is started with \`--selectProjects third-project\`",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "fails",
@@ -27446,10 +27472,10 @@ Received string: \\"·
"totalTime": 5236,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "suite without mock name, mock called",
@@ -27505,10 +27531,10 @@ Received string: \\"·
"totalTime": 6771,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Stack Trace",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "prints a stack trace for runtime errors",
@@ -27558,10 +27584,10 @@ Received string: \\"·
"totalTime": 4725,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "works with passing tests",
@@ -27611,10 +27637,10 @@ Received string: \\"·
"totalTime": 4721,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "works fine when function throws error",
@@ -27646,10 +27672,10 @@ Received string: \\"·
"totalTime": 3562,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "does not re-run tests when only access time is modified",
@@ -27663,10 +27689,10 @@ Received string: \\"·
"totalTime": 4370,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "successfully runs the tests inside \`pnp/\`",
@@ -27680,10 +27706,10 @@ Received string: \\"·
"totalTime": 2715,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "errors if describe returns a Promise",
@@ -27709,10 +27735,10 @@ Received string: \\"·
"totalTime": 2389,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Wrong globals for environment",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "print useful error for window",
@@ -27750,10 +27776,10 @@ Received string: \\"·
"totalTime": 3877,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "setupFilesAfterEnv",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "requires multiple setup files before each file in the suite",
@@ -27773,10 +27799,10 @@ Received string: \\"·
"totalTime": 1967,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "No tests are found",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "fails the test suite in standard situation",
@@ -27814,10 +27840,10 @@ Received string: \\"·
"totalTime": 2739,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "works with custom matchers",
@@ -27837,10 +27863,10 @@ Received string: \\"·
"totalTime": 1539,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "print correct error message with nested test definitions outside describe",
@@ -27872,10 +27898,10 @@ Received string: \\"·
"totalTime": 4641,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "suite with auto-clear",
@@ -27895,10 +27921,10 @@ Received string: \\"·
"totalTime": 1681,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "exits the process after test are done but before timers complete",
@@ -27912,10 +27938,10 @@ Received string: \\"·
"totalTime": 2208,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "exits with a specified code when test fail",
@@ -27935,10 +27961,10 @@ Received string: \\"·
"totalTime": 4476,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "",
@@ -27952,10 +27978,10 @@ Received string: \\"·
"totalTime": 967,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "run timers after resetAllMocks test",
@@ -27975,10 +28001,10 @@ Received string: \\"·
"totalTime": 1878,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "triggers setup/teardown hooks",
@@ -27992,10 +28018,10 @@ Received string: \\"·
"totalTime": 1493,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "show error message with matching files",
@@ -28015,10 +28041,10 @@ Received string: \\"·
"totalTime": 1263,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "works with nested event loops",
@@ -28032,10 +28058,10 @@ Received string: \\"·
"totalTime": 1422,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "no tests found message is redirected to stderr",
@@ -28049,10 +28075,10 @@ Received string: \\"·
"totalTime": 1352,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should work without error",
@@ -28066,10 +28092,10 @@ Received string: \\"·
"totalTime": 1361,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "console printing",
@@ -28083,10 +28109,10 @@ Received string: \\"·
"totalTime": 1341,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "runs tests in only test.js and spec.js",
@@ -28100,10 +28126,10 @@ Received string: \\"·
"totalTime": 1008.9999999999999,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "\`require.main\` on using \`jest.isolateModules\` should not be undefined",
@@ -28117,10 +28143,10 @@ Received string: \\"·
"totalTime": 976,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "jest --clearCache",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "normal run results in cache directory being written",
@@ -28140,10 +28166,10 @@ Received string: \\"·
"totalTime": 1004,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Runtime Internal Module Registry",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "correctly makes use of internal module registry when requiring modules",
@@ -28157,10 +28183,10 @@ Received string: \\"·
"totalTime": 1202,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "resolve node module",
@@ -28174,10 +28200,10 @@ Received string: \\"·
"totalTime": 943,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "setImmediate",
@@ -28191,10 +28217,10 @@ Received string: \\"·
"totalTime": 904,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "JSON Reporter",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "fails the test suite if it contains no tests",
@@ -28208,10 +28234,10 @@ Received string: \\"·
"totalTime": 885,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "suite with test cases that contain malformed sourcemaps",
@@ -28225,13 +28251,13 @@ Received string: \\"·
"totalTime": 858,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "useRealTimers cancels \\"timers\\": \\"fake\\" for whole test file",
+ "name": "useRealTimers cancels "timers": "fake" for whole test file",
"result": "success",
"time": 986,
},
@@ -28242,10 +28268,10 @@ Received string: \\"·
"totalTime": 1018,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "can redefine global",
@@ -28259,10 +28285,10 @@ Received string: \\"·
"totalTime": 40,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "run Jest programmatically cjs",
@@ -28282,10 +28308,10 @@ Received string: \\"·
"totalTime": 575,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Symbol deletion",
@@ -28299,10 +28325,10 @@ Received string: \\"·
"totalTime": 49,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not warn when a mock file changes",
@@ -28316,10 +28342,10 @@ Received string: \\"·
"totalTime": 379,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "error when rootDir does not exist",
@@ -28351,10 +28377,10 @@ Received string: \\"·
"totalTime": 627,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "\`done()\` works properly in hooks",
@@ -28368,10 +28394,10 @@ Received string: \\"·
"totalTime": 855,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "calls asynchronous handleTestEvent in testEnvironment",
@@ -28385,10 +28411,10 @@ Received string: \\"·
"totalTime": 1507,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "moduleNameMapper wrong configuration",
@@ -28426,10 +28452,10 @@ Received string: \\"·
"totalTime": 5395,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Custom Reporters Integration",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "valid string format for adding reporters",
@@ -28491,10 +28517,10 @@ Received string: \\"·
"totalTime": 6553,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "--findRelatedTests flag",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "runs tests related to filename",
@@ -28532,10 +28558,10 @@ Received string: \\"·
"totalTime": 6230,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Environment override",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "uses jsdom when specified",
@@ -28564,7 +28590,7 @@ Received string: \\"·
},
TestGroupResult {
"name": "Environment equivalent",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "uses jsdom",
@@ -28584,10 +28610,10 @@ Received string: \\"·
"totalTime": 5221,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "globalSetup is triggered once before all test suites",
@@ -28655,10 +28681,10 @@ Received string: \\"·
"totalTime": 13926,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "prints a warning if a worker is force exited",
@@ -28678,10 +28704,10 @@ Received string: \\"·
"totalTime": 4751,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "successfully runs the tests inside \`babel-plugin-jest-hoist/\`",
@@ -28695,10 +28721,10 @@ Received string: \\"·
"totalTime": 6249,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "code coverage for transform instrumented code",
@@ -28712,10 +28738,10 @@ Received string: \\"·
"totalTime": 5029,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "does not work on jest-circus",
@@ -28747,10 +28773,10 @@ Received string: \\"·
"totalTime": 71,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "successfully transpiles async",
@@ -28764,10 +28790,10 @@ Received string: \\"·
"totalTime": 4127,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "works fine when function throws error",
@@ -28805,10 +28831,10 @@ Received string: \\"·
"totalTime": 3524,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "works with all statuses",
@@ -28846,10 +28872,10 @@ Received string: \\"·
"totalTime": 3573,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "onlyFailures flag works in non-watch mode",
@@ -28863,10 +28889,10 @@ Received string: \\"·
"totalTime": 2893,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "supports json preset",
@@ -28886,10 +28912,10 @@ Received string: \\"·
"totalTime": 1966,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "works with passing tests",
@@ -28909,10 +28935,10 @@ Received string: \\"·
"totalTime": 2732,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "babel-jest",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "runs transpiled code",
@@ -28929,7 +28955,7 @@ Received string: \\"·
},
TestGroupResult {
"name": "babel-jest ignored",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "tells user to match ignored files",
@@ -28940,7 +28966,7 @@ Received string: \\"·
},
TestGroupResult {
"name": "babel-jest with manual transformer",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "runs transpiled code",
@@ -28951,7 +28977,7 @@ Received string: \\"·
},
TestGroupResult {
"name": "no babel-jest",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "fails with syntax error on flow types",
@@ -28968,7 +28994,7 @@ Received string: \\"·
},
TestGroupResult {
"name": "custom transformer",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "proprocesses files",
@@ -28985,7 +29011,7 @@ Received string: \\"·
},
TestGroupResult {
"name": "multiple-transformers",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "transforms dependencies using specific transformers",
@@ -28996,7 +29022,7 @@ Received string: \\"·
},
TestGroupResult {
"name": "ecmascript-modules-support",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "runs transpiled code",
@@ -29007,7 +29033,7 @@ Received string: \\"·
},
TestGroupResult {
"name": "transformer-config",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "runs transpiled code",
@@ -29024,7 +29050,7 @@ Received string: \\"·
},
TestGroupResult {
"name": "transformer caching",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "does not rerun transform within worker",
@@ -29035,7 +29061,7 @@ Received string: \\"·
},
TestGroupResult {
"name": "transform-environment",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should transform the environment",
@@ -29046,7 +29072,7 @@ Received string: \\"·
},
TestGroupResult {
"name": "transform-runner",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should transform runner",
@@ -29057,7 +29083,7 @@ Received string: \\"·
},
TestGroupResult {
"name": "transform-testrunner",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should transform testRunner",
@@ -29071,10 +29097,10 @@ Received string: \\"·
"totalTime": 26740,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "chai assertion errors should display properly",
@@ -29088,10 +29114,10 @@ Received string: \\"·
"totalTime": 1902,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "processes stack traces and code frames with source maps with coverage",
@@ -29105,10 +29131,10 @@ Received string: \\"·
"totalTime": 2444,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "run prioritySequence first sync",
@@ -29134,10 +29160,10 @@ Received string: \\"·
"totalTime": 2757,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Correct BeforeAll run",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "ensures the BeforeAll of ignored suite is not run",
@@ -29151,10 +29177,10 @@ Received string: \\"·
"totalTime": 958,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Fake promises",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should be possible to resolve with fake timers using immediates",
@@ -29174,10 +29200,10 @@ Received string: \\"·
"totalTime": 1716,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "processes stack traces and code frames with source maps",
@@ -29191,10 +29217,10 @@ Received string: \\"·
"totalTime": 2185,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "successfully runs tests with dynamic dependencies",
@@ -29208,10 +29234,10 @@ Received string: \\"·
"totalTime": 847,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "overriding native promise does not freeze Jest",
@@ -29231,10 +29257,10 @@ Received string: \\"·
"totalTime": 2045.9999999999998,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Tests are executed only once even in an MPR",
@@ -29248,10 +29274,10 @@ Received string: \\"·
"totalTime": 976,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "module.parent should be null in test files",
@@ -29265,10 +29291,10 @@ Received string: \\"·
"totalTime": 886,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "prints useful error for requires after test is done",
@@ -29282,10 +29308,10 @@ Received string: \\"·
"totalTime": 921,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "suite with invalid assertions in afterAll",
@@ -29299,10 +29325,10 @@ Received string: \\"·
"totalTime": 861,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "exits the process after test are done but before timers complete",
@@ -29316,10 +29342,10 @@ Received string: \\"·
"totalTime": 298,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "JSON is available in the global scope",
@@ -29339,10 +29365,10 @@ Received string: \\"·
"totalTime": 29,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testNamePattern",
@@ -29356,10 +29382,10 @@ Received string: \\"·
"totalTime": 910,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "jest --debug",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "outputs debugging info before running the test",
@@ -29373,10 +29399,10 @@ Received string: \\"·
"totalTime": 899,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "imported globals",
@@ -29390,10 +29416,10 @@ Received string: \\"·
"totalTime": 1043,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "use the custom resolver",
@@ -29407,10 +29433,10 @@ Received string: \\"·
"totalTime": 826,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "handles circular inequality properly",
@@ -29424,10 +29450,10 @@ Received string: \\"·
"totalTime": 1451,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "globals are undefined if passed \`false\` from CLI",
@@ -29447,10 +29473,10 @@ Received string: \\"·
"totalTime": 1860,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "correctly skip \`beforeAll\`s in skipped tests",
@@ -29464,10 +29490,10 @@ Received string: \\"·
"totalTime": 1061,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "works with custom inline snapshot matchers",
@@ -29481,10 +29507,10 @@ Received string: \\"·
"totalTime": 2206,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Regex Char In Path",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "parses paths containing regex chars correctly",
@@ -29498,10 +29524,10 @@ Received string: \\"·
"totalTime": 962,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Coverage Report",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "outputs coverage report",
@@ -29512,7 +29538,7 @@ Received string: \\"·
},
TestGroupResult {
"name": "File path not found in mulit-project scenario",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "outputs coverage report",
@@ -29526,10 +29552,10 @@ Received string: \\"·
"totalTime": 1063,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "test config is without transform",
@@ -29540,7 +29566,7 @@ Received string: \\"·
},
TestGroupResult {
"name": "on node ^12.16.0 || >=13.7.0",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "runs test with native ESM",
@@ -29551,7 +29577,7 @@ Received string: \\"·
},
TestGroupResult {
"name": "on node >=14.3.0",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "supports top-level await",
@@ -29565,10 +29591,10 @@ Received string: \\"·
"totalTime": 905,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "works with passing tests",
@@ -29588,10 +29614,10 @@ Received string: \\"·
"totalTime": 968,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should transform linked modules",
@@ -29605,10 +29631,10 @@ Received string: \\"·
"totalTime": 783,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testNamePattern",
@@ -29622,10 +29648,10 @@ Received string: \\"·
"totalTime": 859,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "mocks async functions",
@@ -29639,10 +29665,10 @@ Received string: \\"·
"totalTime": 55,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "reports the correct file size",
@@ -29662,10 +29688,10 @@ Received string: \\"·
"totalTime": 397,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "defining tests and hooks asynchronously throws",
@@ -29679,10 +29705,10 @@ Received string: \\"·
"totalTime": 869,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "calls testEnvironment handleTestEvent",
@@ -29696,10 +29722,10 @@ Received string: \\"·
"totalTime": 1501,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "\`done()\` should not be called more than once",
@@ -29713,10 +29739,10 @@ Received string: \\"·
"totalTime": 882,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "hook in empty describe",
@@ -29748,10 +29774,10 @@ Received string: \\"·
"totalTime": 2886,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "does not work on jest-circus",
@@ -29909,10 +29935,10 @@ Received string: \\"·
"totalTime": 56,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Test Retries",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "retries failed tests",
@@ -29944,10 +29970,10 @@ Received string: \\"·
"totalTime": 3277,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "works with jest.config.ts",
@@ -29985,10 +30011,10 @@ Received string: \\"·
"totalTime": 14322,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "outputs coverage report",
@@ -30068,10 +30094,10 @@ Received string: \\"·
"totalTime": 22264,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "basic support",
@@ -30151,10 +30177,10 @@ Received string: \\"·
"totalTime": 23917,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "renders correctly",
@@ -30186,10 +30212,10 @@ Received string: \\"·
"totalTime": 8559,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "works with a single snapshot",
@@ -30215,10 +30241,10 @@ Received string: \\"·
"totalTime": 4670,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "exceeds the timeout",
@@ -30250,10 +30276,10 @@ Received string: \\"·
"totalTime": 4029,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "empty external",
@@ -30279,10 +30305,10 @@ Received string: \\"·
"totalTime": 3544,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "async jasmine",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "works with beforeAll",
@@ -30380,10 +30406,10 @@ Received string: \\"·
"totalTime": 28291,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "config as JSON",
@@ -30427,10 +30453,10 @@ Received string: \\"·
"totalTime": 3945,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "fails a test that terminates the worker with a fatal error",
@@ -30444,10 +30470,10 @@ Received string: \\"·
"totalTime": 3167,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "works with a single snapshot",
@@ -30467,19 +30493,19 @@ Received string: \\"·
"totalTime": 4435,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "can press \\"p\\" to filter by file name",
+ "name": "can press "p" to filter by file name",
"result": "success",
"time": 1471,
},
TestCaseResult {
"error": undefined,
- "name": "can press \\"t\\" to filter by test name",
+ "name": "can press "t" to filter by test name",
"result": "success",
"time": 1775,
},
@@ -30490,10 +30516,10 @@ Received string: \\"·
"totalTime": 3503,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "triggers unexpected token error message for non-JS assets",
@@ -30519,10 +30545,10 @@ Received string: \\"·
"totalTime": 3411,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "understands dependencies using jest.requireMock",
@@ -30536,10 +30562,10 @@ Received string: \\"·
"totalTime": 2119,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "instruments and collects coverage for typescript files",
@@ -30553,10 +30579,10 @@ Received string: \\"·
"totalTime": 2893,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "works with jest.config.js",
@@ -30582,10 +30608,10 @@ Received string: \\"·
"totalTime": 2134,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "\`require.main\` on using \`--resetModules='true'\` should not be undefined",
@@ -30605,10 +30631,10 @@ Received string: \\"·
"totalTime": 1961,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "modern implementation of fake timers",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should be possible to use modern implementation from config",
@@ -30628,10 +30654,10 @@ Received string: \\"·
"totalTime": 1680,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "runs tests by exact path",
@@ -30645,10 +30671,10 @@ Received string: \\"·
"totalTime": 1999,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "respects testEnvironment docblock",
@@ -30662,10 +30688,10 @@ Received string: \\"·
"totalTime": 1628,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "works with concurrent.each",
@@ -30685,10 +30711,10 @@ Received string: \\"·
"totalTime": 1591,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "suite with auto-restore",
@@ -30708,10 +30734,10 @@ Received string: \\"·
"totalTime": 1797,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "JSON Reporter",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "writes test result to sum.result.json",
@@ -30731,10 +30757,10 @@ Received string: \\"·
"totalTime": 1514,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "suite with auto-reset",
@@ -30754,13 +30780,13 @@ Received string: \\"·
"totalTime": 1666,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "runs only \\"it.only\\" tests",
+ "name": "runs only "it.only" tests",
"result": "success",
"time": 834,
},
@@ -30771,13 +30797,13 @@ Received string: \\"·
"totalTime": 888,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "can press \\"f\\" to run only failed tests",
+ "name": "can press "f" to run only failed tests",
"result": "success",
"time": 1341,
},
@@ -30788,10 +30814,10 @@ Received string: \\"·
"totalTime": 1394,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "does not work on jest-circus",
@@ -30802,7 +30828,7 @@ Received string: \\"·
},
TestGroupResult {
"name": "Correct beforeEach order",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "ensures the correct order for beforeEach",
@@ -30816,10 +30842,10 @@ Received string: \\"·
"totalTime": 55,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "works with injected globals",
@@ -30833,10 +30859,10 @@ Received string: \\"·
"totalTime": 1010.9999999999999,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Snapshot serializers",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "renders snapshot",
@@ -30856,10 +30882,10 @@ Received string: \\"·
"totalTime": 2065,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "defaults to null for location",
@@ -30879,10 +30905,10 @@ Received string: \\"·
"totalTime": 1764,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "prints console.logs when run with forceExit",
@@ -30896,10 +30922,10 @@ Received string: \\"·
"totalTime": 793,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "does not require project modules from inside node_modules",
@@ -30913,10 +30939,10 @@ Received string: \\"·
"totalTime": 833,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "produces code coverage for uncovered files without transformer",
@@ -30930,10 +30956,10 @@ Received string: \\"·
"totalTime": 1075,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "CLI accepts exact file names if matchers matched",
@@ -30953,10 +30979,10 @@ Received string: \\"·
"totalTime": 1230,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "on node >=12.2.0",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "\`require.main\` not undefined after createRequire",
@@ -30970,10 +30996,10 @@ Received string: \\"·
"totalTime": 966,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "jest.resetModules should not error when _isMockFunction is defined but not boolean",
@@ -30987,13 +31013,13 @@ Received string: \\"·
"totalTime": 926,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "can press \\"u\\" to update snapshots",
+ "name": "can press "u" to update snapshots",
"result": "success",
"time": 993,
},
@@ -31004,10 +31030,10 @@ Received string: \\"·
"totalTime": 1075,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "mock works with generator",
@@ -31021,10 +31047,10 @@ Received string: \\"·
"totalTime": 1027,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "require.resolve.paths",
@@ -31038,10 +31064,10 @@ Received string: \\"·
"totalTime": 1155,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "prints coverage with missing sourcemaps",
@@ -31061,10 +31087,10 @@ Received string: \\"·
"totalTime": 2412,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "require.resolve with paths",
@@ -31078,10 +31104,10 @@ Received string: \\"·
"totalTime": 1170,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "logs memory usage",
@@ -31095,10 +31121,10 @@ Received string: \\"·
"totalTime": 884,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "provides \`require.main\` set to test suite module",
@@ -31112,10 +31138,10 @@ Received string: \\"·
"totalTime": 1137,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "store snapshot even if fs is mocked",
@@ -31129,10 +31155,10 @@ Received string: \\"·
"totalTime": 883,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Snapshot serializers",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "renders snapshot",
@@ -31146,10 +31172,10 @@ Received string: \\"·
"totalTime": 838,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "AppComponent",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should create the app",
@@ -31175,10 +31201,10 @@ Received string: \\"·
"totalTime": 654,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "prints a usable stack trace even if no Error.captureStackTrace",
@@ -31192,10 +31218,10 @@ Received string: \\"·
"totalTime": 899,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "testNamePattern skipped",
@@ -31209,10 +31235,10 @@ Received string: \\"·
"totalTime": 991,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "that the failureDetails property is set",
@@ -31226,10 +31252,10 @@ Received string: \\"·
"totalTime": 907,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Custom snapshot resolver",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Resolves snapshot files using custom resolver",
@@ -31243,10 +31269,10 @@ Received string: \\"·
"totalTime": 823,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "prints stack trace pointing to process.exit call",
@@ -31260,10 +31286,10 @@ Received string: \\"·
"totalTime": 1070,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "supports NODE_PATH",
@@ -31277,10 +31303,10 @@ Received string: \\"·
"totalTime": 866,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Verbose Reporter",
@@ -31294,10 +31320,10 @@ Received string: \\"·
"totalTime": 683,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "--listTests flag",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "causes tests to be printed in different lines",
@@ -31317,10 +31343,10 @@ Received string: \\"·
"totalTime": 945,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "allows retrieving the current domain",
@@ -31334,10 +31360,10 @@ Received string: \\"·
"totalTime": 908,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "CheckboxWithLabel changes the text after click",
@@ -31351,10 +31377,10 @@ Received string: \\"·
"totalTime": 469,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Service: DataService",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should create service",
@@ -31374,10 +31400,10 @@ Received string: \\"·
"totalTime": 431,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "prints useful error for environment methods after test is done",
@@ -31391,10 +31417,10 @@ Received string: \\"·
"totalTime": 892,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "reads config from cjs file",
@@ -31405,7 +31431,7 @@ Received string: \\"·
},
TestGroupResult {
"name": "on node ^12.17.0 || >=13.2.0",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "reads config from mjs file",
@@ -31425,10 +31451,10 @@ Received string: \\"·
"totalTime": 526,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "CheckboxWithLabel changes the text after click",
@@ -31442,10 +31468,10 @@ Received string: \\"·
"totalTime": 434,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "define mock per test",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "uses mocked module",
@@ -31465,10 +31491,10 @@ Received string: \\"·
"totalTime": 116,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should aggregate docs from collection",
@@ -31482,10 +31508,10 @@ Received string: \\"·
"totalTime": 236,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "renders correctly",
@@ -31517,10 +31543,10 @@ Received string: \\"·
"totalTime": 181,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "CheckboxWithLabel changes the text after click",
@@ -31534,10 +31560,10 @@ Received string: \\"·
"totalTime": 227,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "CheckboxWithLabel changes the text after click",
@@ -31551,10 +31577,10 @@ Received string: \\"·
"totalTime": 256,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "--showConfig outputs config info and exits",
@@ -31568,10 +31594,10 @@ Received string: \\"·
"totalTime": 195,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "renders correctly",
@@ -31585,10 +31611,10 @@ Received string: \\"·
"totalTime": 62,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "schedules a 10-second timer after 1 second",
@@ -31602,10 +31628,10 @@ Received string: \\"·
"totalTime": 94,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "calls into $.ajax with the correct params",
@@ -31625,10 +31651,10 @@ Received string: \\"·
"totalTime": 196,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "displays a user after a click",
@@ -31642,10 +31668,10 @@ Received string: \\"·
"totalTime": 196,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "timerGame",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "waits 1 second before ending the game",
@@ -31671,10 +31697,10 @@ Received string: \\"·
"totalTime": 74,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "works with resolves",
@@ -31730,10 +31756,10 @@ Received string: \\"·
"totalTime": 96,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "implementation created by automock",
@@ -31753,10 +31779,10 @@ Received string: \\"·
"totalTime": 115,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "listFilesInDirectorySync",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "includes all files in the directory in the summary",
@@ -31770,10 +31796,10 @@ Received string: \\"·
"totalTime": 87,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "calc - mocks",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "returns result from subtract",
@@ -31817,10 +31843,10 @@ Received string: \\"·
"totalTime": 276,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "adds 1 + 2 to equal 3",
@@ -31834,10 +31860,10 @@ Received string: \\"·
"totalTime": 78,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Service: SubService",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should create service",
@@ -31851,10 +31877,10 @@ Received string: \\"·
"totalTime": 109,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "if orginal user model",
@@ -31868,10 +31894,10 @@ Received string: \\"·
"totalTime": 41,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "adds 1 + 2 to equal 3 in TScript",
@@ -31891,10 +31917,10 @@ Received string: \\"·
"totalTime": 69,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "if utils are mocked",
@@ -31914,10 +31940,10 @@ Received string: \\"·
"totalTime": 74,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "if lodash head is mocked",
@@ -31931,10 +31957,10 @@ Received string: \\"·
"totalTime": 109,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "if user model is mocked",
@@ -31948,10 +31974,10 @@ Received string: \\"·
"totalTime": 105,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "adds 1 + 2 to equal 3 in Typescript",
@@ -31971,10 +31997,10 @@ Received string: \\"·
"totalTime": 100,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "b",
@@ -31988,10 +32014,10 @@ Received string: \\"·
"totalTime": 21,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "subtracts 5 - 1 to equal 4 in TypeScript",
@@ -32005,10 +32031,10 @@ Received string: \\"·
"totalTime": 43,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "does a full mock",
@@ -32022,10 +32048,10 @@ Received string: \\"·
"totalTime": 60,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "globals are properly defined",
@@ -32039,10 +32065,10 @@ Received string: \\"·
"totalTime": 31,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "original implementation",
@@ -32056,10 +32082,10 @@ Received string: \\"·
"totalTime": 24,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "timers",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should work before calling resetAllMocks",
@@ -32079,10 +32105,10 @@ Received string: \\"·
"totalTime": 30,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "v8 module",
@@ -32096,10 +32122,10 @@ Received string: \\"·
"totalTime": 30,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "timers",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should work before calling resetAllMocks",
@@ -32113,10 +32139,10 @@ Received string: \\"·
"totalTime": 34,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "does a partial mock",
@@ -32130,10 +32156,10 @@ Received string: \\"·
"totalTime": 215,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "d",
@@ -32147,10 +32173,10 @@ Received string: \\"·
"totalTime": 21,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "a",
@@ -32164,10 +32190,10 @@ Received string: \\"·
"totalTime": 29,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "e",
@@ -32181,10 +32207,10 @@ Received string: \\"·
"totalTime": 27,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "c",
@@ -32198,10 +32224,10 @@ Received string: \\"·
"totalTime": 42,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "errors when a test both returns a promise and takes a callback",
diff --git a/__tests__/__snapshots__/mocha-json.test.ts.snap b/__tests__/__snapshots__/mocha-json.test.ts.snap
index 70b4b96..7038239 100644
--- a/__tests__/__snapshots__/mocha-json.test.ts.snap
+++ b/__tests__/__snapshots__/mocha-json.test.ts.snap
@@ -3,12 +3,12 @@
exports[`mocha-json tests report from ./reports/mocha-json test results matches snapshot 1`] = `
TestRunResult {
"path": "fixtures/mocha-json.json",
- "suites": Array [
+ "suites": [
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Test 1",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Passing test",
@@ -19,12 +19,12 @@ TestRunResult {
},
TestGroupResult {
"name": "Test 1 Test 1.1",
- "tests": Array [
+ "tests": [
TestCaseResult {
- "error": Object {
+ "error": {
"details": "Error: Some error
- at Object.throwError (lib\\\\main.js:2:9)
- at Context. (test\\\\main.test.js:15:11)
+ at Object.throwError (lib\\main.js:2:9)
+ at Context. (test\\main.test.js:15:11)
at processImmediate (internal/timers.js:461:21)",
"line": 2,
"message": "Some error",
@@ -35,12 +35,12 @@ TestRunResult {
"time": 0,
},
TestCaseResult {
- "error": Object {
+ "error": {
"details": "AssertionError [ERR_ASSERTION]: Expected values to be strictly equal:
false !== true
- at Context. (test\\\\main.test.js:11:14)
+ at Context. (test\\main.test.js:11:14)
at processImmediate (internal/timers.js:461:21)",
"line": 11,
"message": "Expected values to be strictly equal:
@@ -57,11 +57,11 @@ false !== true
},
TestGroupResult {
"name": "Test 2",
- "tests": Array [
+ "tests": [
TestCaseResult {
- "error": Object {
+ "error": {
"details": "Error: Some error
- at Context. (test\\\\main.test.js:22:11)
+ at Context. (test\\main.test.js:22:11)
at processImmediate (internal/timers.js:461:21)",
"line": 22,
"message": "Some error",
@@ -78,10 +78,10 @@ false !== true
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": null,
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "Skipped test",
@@ -89,12 +89,12 @@ false !== true
"time": 0,
},
TestCaseResult {
- "error": Object {
- "details": "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)
+ "error": {
+ "details": "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)
at listOnTimeout (internal/timers.js:554:17)
at processTimers (internal/timers.js:497:7)",
"line": undefined,
- "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)",
+ "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)",
"path": undefined,
},
"name": "Timeout test",
@@ -115,12 +115,12 @@ false !== true
exports[`mocha-json tests report from mochajs/mocha test results matches snapshot 1`] = `
TestRunResult {
"path": "fixtures/external/mocha/mocha-test-results.json",
- "suites": Array [
+ "suites": [
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "class BufferedWorkerPool constructor",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should apply defaults",
@@ -131,7 +131,7 @@ TestRunResult {
},
TestGroupResult {
"name": "class BufferedWorkerPool instance method run()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should deserialize the result",
@@ -148,7 +148,7 @@ TestRunResult {
},
TestGroupResult {
"name": "class BufferedWorkerPool instance method run() when passed a non-string filepath",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should reject",
@@ -159,7 +159,7 @@ TestRunResult {
},
TestGroupResult {
"name": "class BufferedWorkerPool instance method run() when passed no arguments",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should reject",
@@ -170,7 +170,7 @@ TestRunResult {
},
TestGroupResult {
"name": "class BufferedWorkerPool instance method stats()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return the object returned by \`workerpool.Pool#stats\`",
@@ -181,10 +181,10 @@ TestRunResult {
},
TestGroupResult {
"name": "class BufferedWorkerPool instance method terminate() when called with \`force\`",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "should delegate to the underlying pool w/ \\"force\\" behavior",
+ "name": "should delegate to the underlying pool w/ "force" behavior",
"result": "success",
"time": 1,
},
@@ -192,10 +192,10 @@ TestRunResult {
},
TestGroupResult {
"name": "class BufferedWorkerPool instance method terminate() when called without \`force\`",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "should delegate to the underlying pool w/o \\"force\\" behavior",
+ "name": "should delegate to the underlying pool w/o "force" behavior",
"result": "success",
"time": 1,
},
@@ -203,7 +203,7 @@ TestRunResult {
},
TestGroupResult {
"name": "class BufferedWorkerPool static method create()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return a BufferedWorkerPool instance",
@@ -214,7 +214,7 @@ TestRunResult {
},
TestGroupResult {
"name": "class BufferedWorkerPool static method create() when passed no arguments",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not throw",
@@ -225,7 +225,7 @@ TestRunResult {
},
TestGroupResult {
"name": "class BufferedWorkerPool static method serializeOptions()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return a serialized string",
@@ -236,7 +236,7 @@ TestRunResult {
},
TestGroupResult {
"name": "class BufferedWorkerPool static method serializeOptions() when called multiple times with the same object",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not perform serialization twice",
@@ -253,7 +253,7 @@ TestRunResult {
},
TestGroupResult {
"name": "class BufferedWorkerPool static method serializeOptions() when passed no arguments",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not throw",
@@ -267,10 +267,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "cli/config findConfig()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should look for one of the config files using findup-sync",
@@ -287,7 +287,7 @@ TestRunResult {
},
TestGroupResult {
"name": "cli/config loadConfig() when config file parsing fails",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should throw",
@@ -297,8 +297,8 @@ TestRunResult {
],
},
TestGroupResult {
- "name": "cli/config loadConfig() when parsing succeeds when supplied a filepath with \\".cjs\\" extension",
- "tests": Array [
+ "name": "cli/config loadConfig() when parsing succeeds when supplied a filepath with ".cjs" extension",
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should use the JS parser",
@@ -308,8 +308,8 @@ TestRunResult {
],
},
TestGroupResult {
- "name": "cli/config loadConfig() when parsing succeeds when supplied a filepath with \\".js\\" extension",
- "tests": Array [
+ "name": "cli/config loadConfig() when parsing succeeds when supplied a filepath with ".js" extension",
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should use the JS parser",
@@ -319,8 +319,8 @@ TestRunResult {
],
},
TestGroupResult {
- "name": "cli/config loadConfig() when parsing succeeds when supplied a filepath with \\".json\\" extension",
- "tests": Array [
+ "name": "cli/config loadConfig() when parsing succeeds when supplied a filepath with ".json" extension",
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should use the JSON parser",
@@ -330,8 +330,8 @@ TestRunResult {
],
},
TestGroupResult {
- "name": "cli/config loadConfig() when parsing succeeds when supplied a filepath with \\".jsonc\\" extension",
- "tests": Array [
+ "name": "cli/config loadConfig() when parsing succeeds when supplied a filepath with ".jsonc" extension",
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should use the JSON parser",
@@ -341,8 +341,8 @@ TestRunResult {
],
},
TestGroupResult {
- "name": "cli/config loadConfig() when parsing succeeds when supplied a filepath with \\".yaml\\" extension",
- "tests": Array [
+ "name": "cli/config loadConfig() when parsing succeeds when supplied a filepath with ".yaml" extension",
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should use the YAML parser",
@@ -352,8 +352,8 @@ TestRunResult {
],
},
TestGroupResult {
- "name": "cli/config loadConfig() when parsing succeeds when supplied a filepath with \\".yml\\" extension",
- "tests": Array [
+ "name": "cli/config loadConfig() when parsing succeeds when supplied a filepath with ".yml" extension",
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should use the YAML parser",
@@ -364,7 +364,7 @@ TestRunResult {
},
TestGroupResult {
"name": "cli/config loadConfig() when supplied a filepath with unsupported extension",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should use the JSON parser",
@@ -378,10 +378,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "node-flags impliesNoTimeouts()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return true for inspect flags",
@@ -392,7 +392,7 @@ TestRunResult {
},
TestGroupResult {
"name": "node-flags isNodeFlag() for all allowed node env flags which conflict with mocha flags",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "--require should return false",
@@ -409,7 +409,7 @@ TestRunResult {
},
TestGroupResult {
"name": "node-flags isNodeFlag() for all allowed node environment flags",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "--abort-on-uncaught-exception should return true",
@@ -960,52 +960,52 @@ TestRunResult {
},
TestGroupResult {
"name": "node-flags isNodeFlag() special cases",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "should return true for \\"es-staging\\"",
+ "name": "should return true for "es-staging"",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "should return true for \\"gc-global\\"",
+ "name": "should return true for "gc-global"",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "should return true for \\"harmony\\" itself",
+ "name": "should return true for "harmony" itself",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "should return true for \\"use-strict\\"",
+ "name": "should return true for "use-strict"",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "should return true for flags starting with \\"--v8-\\"",
+ "name": "should return true for flags starting with "--v8-"",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "should return true for flags starting with \\"harmony-\\" or \\"harmony_\\"",
+ "name": "should return true for flags starting with "harmony-" or "harmony_"",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "should return true for flags starting with \\"preserve-symlinks\\"",
+ "name": "should return true for flags starting with "preserve-symlinks"",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "should return true for flags starting with \\"trace-\\" or \\"trace_\\"",
+ "name": "should return true for flags starting with "trace-" or "trace_"",
"result": "success",
"time": 0,
},
@@ -1013,7 +1013,7 @@ TestRunResult {
},
TestGroupResult {
"name": "node-flags isNodeFlag() when expecting leading dashes",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should require leading dashes",
@@ -1024,7 +1024,7 @@ TestRunResult {
},
TestGroupResult {
"name": "node-flags unparseNodeFlags()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should handle multiple v8 flags",
@@ -1044,10 +1044,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
- "name": "options loadOptions() \\"extension\\" handling when user does not supply \\"extension\\" option",
- "tests": Array [
+ "name": "options loadOptions() "extension" handling when user does not supply "extension" option",
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should retain the default",
@@ -1057,8 +1057,8 @@ TestRunResult {
],
},
TestGroupResult {
- "name": "options loadOptions() \\"extension\\" handling when user supplies \\"extension\\" option",
- "tests": Array [
+ "name": "options loadOptions() "extension" handling when user supplies "extension" option",
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not concatenate the default value",
@@ -1068,8 +1068,8 @@ TestRunResult {
],
},
TestGroupResult {
- "name": "options loadOptions() \\"ignore\\" handling",
- "tests": Array [
+ "name": "options loadOptions() "ignore" handling",
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not split option values by comma",
@@ -1079,8 +1079,8 @@ TestRunResult {
],
},
TestGroupResult {
- "name": "options loadOptions() \\"spec\\" handling when user supplies \\"spec\\" in config and positional arguments",
- "tests": Array [
+ "name": "options loadOptions() "spec" handling when user supplies "spec" in config and positional arguments",
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should place both - unsplitted - into the positional arguments array",
@@ -1091,7 +1091,7 @@ TestRunResult {
},
TestGroupResult {
"name": "options loadOptions() config priority",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should prioritize args over rc file",
@@ -1113,8 +1113,8 @@ TestRunResult {
],
},
TestGroupResult {
- "name": "options loadOptions() when called with a one-and-done arg \\"h\\"",
- "tests": Array [
+ "name": "options loadOptions() when called with a one-and-done arg "h"",
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return basic parsed arguments and flag",
@@ -1124,8 +1124,8 @@ TestRunResult {
],
},
TestGroupResult {
- "name": "options loadOptions() when called with a one-and-done arg \\"help\\"",
- "tests": Array [
+ "name": "options loadOptions() when called with a one-and-done arg "help"",
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return basic parsed arguments and flag",
@@ -1135,8 +1135,8 @@ TestRunResult {
],
},
TestGroupResult {
- "name": "options loadOptions() when called with a one-and-done arg \\"list-interfaces\\"",
- "tests": Array [
+ "name": "options loadOptions() when called with a one-and-done arg "list-interfaces"",
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return basic parsed arguments and flag",
@@ -1146,8 +1146,8 @@ TestRunResult {
],
},
TestGroupResult {
- "name": "options loadOptions() when called with a one-and-done arg \\"list-reporters\\"",
- "tests": Array [
+ "name": "options loadOptions() when called with a one-and-done arg "list-reporters"",
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return basic parsed arguments and flag",
@@ -1157,8 +1157,8 @@ TestRunResult {
],
},
TestGroupResult {
- "name": "options loadOptions() when called with a one-and-done arg \\"V\\"",
- "tests": Array [
+ "name": "options loadOptions() when called with a one-and-done arg "V"",
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return basic parsed arguments and flag",
@@ -1168,8 +1168,8 @@ TestRunResult {
],
},
TestGroupResult {
- "name": "options loadOptions() when called with a one-and-done arg \\"version\\"",
- "tests": Array [
+ "name": "options loadOptions() when called with a one-and-done arg "version"",
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return basic parsed arguments and flag",
@@ -1180,7 +1180,7 @@ TestRunResult {
},
TestGroupResult {
"name": "options loadOptions() when no parameter provided",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return an object containing positional args, defaults, and anti-reloading flags",
@@ -1191,7 +1191,7 @@ TestRunResult {
},
TestGroupResult {
"name": "options loadOptions() when parameter provided package.json when called with package = false (\`--no-package\`)",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not look for package.json",
@@ -1214,7 +1214,7 @@ TestRunResult {
},
TestGroupResult {
"name": "options loadOptions() when parameter provided package.json when path to package.json (\`--package \`) is invalid",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should throw",
@@ -1225,7 +1225,7 @@ TestRunResult {
},
TestGroupResult {
"name": "options loadOptions() when parameter provided package.json when path to package.json (\`--package \`) is valid",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not try to find a package.json",
@@ -1248,7 +1248,7 @@ TestRunResult {
},
TestGroupResult {
"name": "options loadOptions() when parameter provided package.json when path to package.json unspecified",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return merged options incl. found package.json",
@@ -1265,7 +1265,7 @@ TestRunResult {
},
TestGroupResult {
"name": "options loadOptions() when parameter provided rc file when called with config = false (\`--no-config\`)",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not attempt to find a config file",
@@ -1294,7 +1294,7 @@ TestRunResult {
},
TestGroupResult {
"name": "options loadOptions() when parameter provided rc file when called with unspecified config when an rc file would be found",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should attempt to load file at found path",
@@ -1317,7 +1317,7 @@ TestRunResult {
},
TestGroupResult {
"name": "options loadOptions() when parameter provided rc file when called with unspecified config when an rc file would not be found",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should look for a config",
@@ -1340,7 +1340,7 @@ TestRunResult {
},
TestGroupResult {
"name": "options loadOptions() when parameter provided rc file when path to config (\`--config \`) is invalid",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should attempt to load file at path",
@@ -1366,10 +1366,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "helpers list() when given a comma-delimited string",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return a flat array",
@@ -1380,7 +1380,7 @@ TestRunResult {
},
TestGroupResult {
"name": "helpers list() when provided a flat array",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return a flat array",
@@ -1391,7 +1391,7 @@ TestRunResult {
},
TestGroupResult {
"name": "helpers list() when provided a nested array",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return a flat array",
@@ -1402,7 +1402,7 @@ TestRunResult {
},
TestGroupResult {
"name": "helpers validateLegacyPlugin() when a plugin throws an exception upon load",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should fail and report the original error",
@@ -1412,8 +1412,8 @@ TestRunResult {
],
},
TestGroupResult {
- "name": "helpers validateLegacyPlugin() when used with \\"reporter\\" key",
- "tests": Array [
+ "name": "helpers validateLegacyPlugin() when used with "reporter" key",
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should disallow an array of names",
@@ -1429,8 +1429,8 @@ TestRunResult {
],
},
TestGroupResult {
- "name": "helpers validateLegacyPlugin() when used with an \\"interfaces\\" key",
- "tests": Array [
+ "name": "helpers validateLegacyPlugin() when used with an "interfaces" key",
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should disallow an array of names",
@@ -1447,7 +1447,7 @@ TestRunResult {
},
TestGroupResult {
"name": "helpers validateLegacyPlugin() when used with an unknown plugin type",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should fail",
@@ -1461,10 +1461,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "command run builder array type",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should include option extension",
@@ -1523,7 +1523,7 @@ TestRunResult {
},
TestGroupResult {
"name": "command run builder boolean type",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should include option allow-uncaught",
@@ -1654,7 +1654,7 @@ TestRunResult {
},
TestGroupResult {
"name": "command run builder number type",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should include option jobs",
@@ -1671,7 +1671,7 @@ TestRunResult {
},
TestGroupResult {
"name": "command run builder string type",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should include option config",
@@ -1727,10 +1727,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Mocha instance method addFile()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should add the given file to the files array",
@@ -1747,7 +1747,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method lazyLoadFiles()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return the \`Mocha\` instance",
@@ -1758,7 +1758,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method lazyLoadFiles() when passed \`true\`",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should enable lazy loading",
@@ -1769,7 +1769,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method lazyLoadFiles() when passed a non-\`true\` value",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should enable eager loading",
@@ -1780,7 +1780,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method loadFiles()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should execute the optional callback if given",
@@ -1797,7 +1797,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method parallelMode() when \`Mocha\` is running in Node.js",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return the Mocha instance",
@@ -1808,7 +1808,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method parallelMode() when \`Mocha\` is running in Node.js when \`Mocha\` instance in serial mode when passed \`true\` value when \`Mocha\` instance is in \`INIT\` state",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should enable parallel mode",
@@ -1819,7 +1819,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method parallelMode() when \`Mocha\` is running in Node.js when \`Mocha\` instance in serial mode when passed \`true\` value when \`Mocha\` instance is not in \`INIT\` state",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should throw",
@@ -1830,7 +1830,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method parallelMode() when \`Mocha\` is running in Node.js when \`Mocha\` instance in serial mode when passed non-\`true\` value when \`Mocha\` instance is in \`INIT\` state",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should enable serial mode",
@@ -1841,7 +1841,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method parallelMode() when \`Mocha\` is running in Node.js when parallel mode is already disabled",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not swap the Runner, nor change lazy loading setting",
@@ -1852,7 +1852,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method parallelMode() when \`Mocha\` is running in Node.js when parallel mode is already enabled",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not swap the Runner, nor change lazy loading setting",
@@ -1862,8 +1862,8 @@ TestRunResult {
],
},
TestGroupResult {
- "name": "Mocha instance method reporter() when a reporter exists relative to the \\"mocha\\" module path",
- "tests": Array [
+ "name": "Mocha instance method reporter() when a reporter exists relative to the "mocha" module path",
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should load from module path",
@@ -1873,11 +1873,11 @@ TestRunResult {
],
},
TestGroupResult {
- "name": "Mocha instance method reporter() when a reporter exists relative to the \\"mocha\\" module path when the reporter throws upon load",
- "tests": Array [
+ "name": "Mocha instance method reporter() when a reporter exists relative to the "mocha" module path when the reporter throws upon load",
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "should throw \\"invalid reporter\\" exception",
+ "name": "should throw "invalid reporter" exception",
"result": "success",
"time": 2,
},
@@ -1891,7 +1891,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method reporter() when a reporter exists relative to the cwd",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should load from current working directory",
@@ -1902,10 +1902,10 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method reporter() when a reporter exists relative to the cwd when the reporter throws upon load",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "should throw \\"invalid reporter\\" exception",
+ "name": "should throw "invalid reporter" exception",
"result": "success",
"time": 2,
},
@@ -1919,7 +1919,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method unloadFiles()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should be chainable",
@@ -1948,7 +1948,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha static method unloadFile()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should unload a specific file from cache",
@@ -1962,13 +1962,13 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "parallel-buffered-runner ParallelBufferedRunner constructor",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "should start in \\"IDLE\\" state",
+ "name": "should start in "IDLE" state",
"result": "success",
"time": 1,
},
@@ -1976,7 +1976,7 @@ TestRunResult {
},
TestGroupResult {
"name": "parallel-buffered-runner ParallelBufferedRunner event EVENT_RUN_END",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should change the state to COMPLETE",
@@ -1987,7 +1987,7 @@ TestRunResult {
},
TestGroupResult {
"name": "parallel-buffered-runner ParallelBufferedRunner instance method isParallelMode()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return true",
@@ -1998,7 +1998,7 @@ TestRunResult {
},
TestGroupResult {
"name": "parallel-buffered-runner ParallelBufferedRunner instance method linkPartialObjects()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return the runner",
@@ -2009,7 +2009,7 @@ TestRunResult {
},
TestGroupResult {
"name": "parallel-buffered-runner ParallelBufferedRunner instance method run()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should be chainable",
@@ -2026,7 +2026,7 @@ TestRunResult {
},
TestGroupResult {
"name": "parallel-buffered-runner ParallelBufferedRunner instance method run() when a suite has a bail flag when an event contains an error and has positive failures when subsequent files already started running",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should cleanly terminate the thread pool",
@@ -2037,7 +2037,7 @@ TestRunResult {
},
TestGroupResult {
"name": "parallel-buffered-runner ParallelBufferedRunner instance method run() when a suite has a bail flag when an event contains an error and has positive failures when subsequent files have not yet been run",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should cleanly terminate the thread pool",
@@ -2054,7 +2054,7 @@ TestRunResult {
},
TestGroupResult {
"name": "parallel-buffered-runner ParallelBufferedRunner instance method run() when a suite has a bail flag when no event contains an error",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not force-terminate",
@@ -2065,7 +2065,7 @@ TestRunResult {
},
TestGroupResult {
"name": "parallel-buffered-runner ParallelBufferedRunner instance method run() when a worker fails",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should delegate to Runner#uncaught",
@@ -2082,7 +2082,7 @@ TestRunResult {
},
TestGroupResult {
"name": "parallel-buffered-runner ParallelBufferedRunner instance method run() when instructed to link objects",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should create object references",
@@ -2093,7 +2093,7 @@ TestRunResult {
},
TestGroupResult {
"name": "parallel-buffered-runner ParallelBufferedRunner instance method run() when instructed to link objects when event data object is missing an ID",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should result in an uncaught exception",
@@ -2104,7 +2104,7 @@ TestRunResult {
},
TestGroupResult {
"name": "parallel-buffered-runner ParallelBufferedRunner instance method run() when suite should bail when an event contains an error and has positive failures when subsequent files already started running",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should cleanly terminate the thread pool",
@@ -2115,7 +2115,7 @@ TestRunResult {
},
TestGroupResult {
"name": "parallel-buffered-runner ParallelBufferedRunner instance method run() when suite should bail when an event contains an error and has positive failures when subsequent files have not yet been run",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should cleanly terminate the thread pool",
@@ -2126,7 +2126,7 @@ TestRunResult {
},
TestGroupResult {
"name": "parallel-buffered-runner ParallelBufferedRunner instance method run() when suite should bail when no event contains an error",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not force-terminate",
@@ -2137,7 +2137,7 @@ TestRunResult {
},
TestGroupResult {
"name": "parallel-buffered-runner ParallelBufferedRunner instance method workerReporter()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return its context",
@@ -2148,7 +2148,7 @@ TestRunResult {
},
TestGroupResult {
"name": "parallel-buffered-runner ParallelBufferedRunner instance property _state",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should disallow an invalid state transition",
@@ -2162,10 +2162,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "ParallelBuffered constructor",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should listen for Runner events",
@@ -2182,7 +2182,7 @@ TestRunResult {
},
TestGroupResult {
"name": "ParallelBuffered event on any other event listened for",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should populate its \`events\` array with SerializableEvents",
@@ -2193,7 +2193,7 @@ TestRunResult {
},
TestGroupResult {
"name": "ParallelBuffered event on EVENT_RUN_END",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should remove all listeners",
@@ -2204,7 +2204,7 @@ TestRunResult {
},
TestGroupResult {
"name": "ParallelBuffered instance method done",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should execute its callback with a SerializableWorkerResult",
@@ -2224,10 +2224,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "serializer function deserialize when passed a non-object value",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return the value",
@@ -2238,7 +2238,7 @@ TestRunResult {
},
TestGroupResult {
"name": "serializer function deserialize when passed a SerializedWorkerResult object",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return the result of \`SerializableWorkerResult.deserialize\` called on the value",
@@ -2249,7 +2249,7 @@ TestRunResult {
},
TestGroupResult {
"name": "serializer function deserialize when passed an object value which is not a SerializedWorkerResult",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return the value",
@@ -2260,7 +2260,7 @@ TestRunResult {
},
TestGroupResult {
"name": "serializer function deserialize when passed nothing",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return \`undefined\`",
@@ -2271,7 +2271,7 @@ TestRunResult {
},
TestGroupResult {
"name": "serializer function serialize when not passed anything",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return \`undefined\`",
@@ -2282,7 +2282,7 @@ TestRunResult {
},
TestGroupResult {
"name": "serializer function serialize when passed a non-object value",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return the value",
@@ -2293,7 +2293,7 @@ TestRunResult {
},
TestGroupResult {
"name": "serializer function serialize when passed an object value having a \`serialize\` method",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return the result of the \`serialize\` method",
@@ -2304,7 +2304,7 @@ TestRunResult {
},
TestGroupResult {
"name": "serializer function serialize when passed an object value w/o a \`serialize\` method",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return the value",
@@ -2315,10 +2315,10 @@ TestRunResult {
},
TestGroupResult {
"name": "serializer SerializableEvent constructor when called with a non-object \`rawObject\`",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "should throw \\"invalid arg type\\" error",
+ "name": "should throw "invalid arg type" error",
"result": "success",
"time": 1,
},
@@ -2326,10 +2326,10 @@ TestRunResult {
},
TestGroupResult {
"name": "serializer SerializableEvent constructor when called without \`eventName\`",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "should throw \\"invalid arg value\\" error",
+ "name": "should throw "invalid arg value" error",
"result": "success",
"time": 0,
},
@@ -2337,7 +2337,7 @@ TestRunResult {
},
TestGroupResult {
"name": "serializer SerializableEvent instance method serialize",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should freeze the instance",
@@ -2354,7 +2354,7 @@ TestRunResult {
},
TestGroupResult {
"name": "serializer SerializableEvent instance method serialize when passed an error",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not retain not-own props",
@@ -2377,7 +2377,7 @@ TestRunResult {
},
TestGroupResult {
"name": "serializer SerializableEvent instance method serialize when passed an object containing a nested prop with an Error value",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should serialize the Error",
@@ -2388,7 +2388,7 @@ TestRunResult {
},
TestGroupResult {
"name": "serializer SerializableEvent instance method serialize when passed an object containing a non-\`serialize\` method",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should remove the method",
@@ -2399,7 +2399,7 @@ TestRunResult {
},
TestGroupResult {
"name": "serializer SerializableEvent instance method serialize when passed an object containing a top-level prop with an Error value",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should serialize the Error",
@@ -2410,7 +2410,7 @@ TestRunResult {
},
TestGroupResult {
"name": "serializer SerializableEvent instance method serialize when passed an object containing an array",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should serialize the array",
@@ -2421,7 +2421,7 @@ TestRunResult {
},
TestGroupResult {
"name": "serializer SerializableEvent instance method serialize when passed an object containing an object with a \`serialize\` method",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should call the \`serialize\` method",
@@ -2432,7 +2432,7 @@ TestRunResult {
},
TestGroupResult {
"name": "serializer SerializableEvent instance method serialize when passed an object with a \`serialize\` method",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should call the \`serialize\` method",
@@ -2443,7 +2443,7 @@ TestRunResult {
},
TestGroupResult {
"name": "serializer SerializableEvent static method create",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should instantiate a SerializableEvent",
@@ -2454,7 +2454,7 @@ TestRunResult {
},
TestGroupResult {
"name": "serializer SerializableEvent static method deserialize",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return a new object w/ null prototype",
@@ -2465,10 +2465,10 @@ TestRunResult {
},
TestGroupResult {
"name": "serializer SerializableEvent static method deserialize when passed a falsy parameter",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "should throw \\"invalid arg type\\" error",
+ "name": "should throw "invalid arg type" error",
"result": "success",
"time": 0,
},
@@ -2476,7 +2476,7 @@ TestRunResult {
},
TestGroupResult {
"name": "serializer SerializableEvent static method deserialize when passed value contains \`data\` prop",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should ignore __proto__",
@@ -2487,7 +2487,7 @@ TestRunResult {
},
TestGroupResult {
"name": "serializer SerializableEvent static method deserialize when passed value contains \`data\` prop when \`data\` prop contains a nested serialized Error prop",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should create an Error instance from the nested serialized Error prop",
@@ -2498,7 +2498,7 @@ TestRunResult {
},
TestGroupResult {
"name": "serializer SerializableEvent static method deserialize when passed value contains an \`error\` prop",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should create an Error instance from the prop",
@@ -2508,8 +2508,8 @@ TestRunResult {
],
},
TestGroupResult {
- "name": "serializer SerializableEvent static method deserialize when passed value data contains a prop beginning with \\"$$\\"",
- "tests": Array [
+ "name": "serializer SerializableEvent static method deserialize when passed value data contains a prop beginning with "$$"",
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should create a new prop having a function value",
@@ -2524,7 +2524,7 @@ TestRunResult {
},
TestCaseResult {
"error": undefined,
- "name": "should remove the prop with the \\"$$\\" prefix",
+ "name": "should remove the prop with the "$$" prefix",
"result": "success",
"time": 0,
},
@@ -2532,7 +2532,7 @@ TestRunResult {
},
TestGroupResult {
"name": "serializer SerializableEvent static method deserialize when the value data contains a prop with an array value",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should deserialize each prop",
@@ -2543,7 +2543,7 @@ TestRunResult {
},
TestGroupResult {
"name": "serializer SerializableWorkerResult constructor",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should add a readonly \`__type\` prop",
@@ -2554,7 +2554,7 @@ TestRunResult {
},
TestGroupResult {
"name": "serializer SerializableWorkerResult instance method serialize",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should call \`SerializableEvent#serialize\` of each of its events",
@@ -2571,7 +2571,7 @@ TestRunResult {
},
TestGroupResult {
"name": "serializer SerializableWorkerResult static method create",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return a new SerializableWorkerResult instance",
@@ -2582,7 +2582,7 @@ TestRunResult {
},
TestGroupResult {
"name": "serializer SerializableWorkerResult static method deserialize",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should call SerializableEvent#deserialize on each item in its \`events\` prop",
@@ -2599,7 +2599,7 @@ TestRunResult {
},
TestGroupResult {
"name": "serializer SerializableWorkerResult static method isSerializedWorkerResult when passed an instance",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return \`true\`",
@@ -2610,7 +2610,7 @@ TestRunResult {
},
TestGroupResult {
"name": "serializer SerializableWorkerResult static method isSerializedWorkerResult when passed an object with an appropriate \`__type\` prop",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return \`true\`",
@@ -2621,7 +2621,7 @@ TestRunResult {
},
TestGroupResult {
"name": "serializer SerializableWorkerResult static method isSerializedWorkerResult when passed an object without an appropriate \`__type\` prop",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return \`false\`",
@@ -2635,10 +2635,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "stackTraceFilter() on browser",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "does not strip out other bower_components",
@@ -2649,7 +2649,7 @@ TestRunResult {
},
TestGroupResult {
"name": "stackTraceFilter() on node on POSIX OS",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "does not ignore other bower_components and components",
@@ -2678,7 +2678,7 @@ TestRunResult {
},
TestGroupResult {
"name": "stackTraceFilter() on node on Windows",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should work on Windows",
@@ -2692,19 +2692,19 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "utils function canonicalType()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "should return \\"asyncfunction\\" if the parameter is an async function",
+ "name": "should return "asyncfunction" if the parameter is an async function",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "should return \\"buffer\\" if the parameter is a Buffer",
+ "name": "should return "buffer" if the parameter is a Buffer",
"result": "success",
"time": 0,
},
@@ -2712,7 +2712,7 @@ TestRunResult {
},
TestGroupResult {
"name": "utils function cwd()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return the current working directory",
@@ -2723,16 +2723,16 @@ TestRunResult {
},
TestGroupResult {
"name": "utils function type()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "should return \\"error\\" if the parameter is an Error",
+ "name": "should return "error" if the parameter is an Error",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "should return \\"function\\" if the parameter is an async function",
+ "name": "should return "function" if the parameter is an async function",
"result": "success",
"time": 0,
},
@@ -2743,10 +2743,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "worker when run as main process",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should throw",
@@ -2757,7 +2757,7 @@ TestRunResult {
},
TestGroupResult {
"name": "worker when run as worker process",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should register itself with workerpool",
@@ -2767,8 +2767,8 @@ TestRunResult {
],
},
TestGroupResult {
- "name": "worker when run as worker process function run() when called with empty \\"filepath\\" argument",
- "tests": Array [
+ "name": "worker when run as worker process function run() when called with empty "filepath" argument",
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should reject",
@@ -2779,7 +2779,7 @@ TestRunResult {
},
TestGroupResult {
"name": "worker when run as worker process function run() when called without arguments",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should reject",
@@ -2790,7 +2790,7 @@ TestRunResult {
},
TestGroupResult {
"name": "worker when run as worker process function run() when passed a non-string \`options\` value",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should reject",
@@ -2801,7 +2801,7 @@ TestRunResult {
},
TestGroupResult {
"name": "worker when run as worker process function run() when passed an invalid string \`options\` value",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should reject",
@@ -2811,8 +2811,8 @@ TestRunResult {
],
},
TestGroupResult {
- "name": "worker when run as worker process function run() when the file at \\"filepath\\" argument is unloadable",
- "tests": Array [
+ "name": "worker when run as worker process function run() when the file at "filepath" argument is unloadable",
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should reject",
@@ -2822,8 +2822,8 @@ TestRunResult {
],
},
TestGroupResult {
- "name": "worker when run as worker process function run() when the file at \\"filepath\\" is loadable",
- "tests": Array [
+ "name": "worker when run as worker process function run() when the file at "filepath" is loadable",
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should call Mocha#run",
@@ -2832,13 +2832,13 @@ TestRunResult {
},
TestCaseResult {
"error": undefined,
- "name": "should handle \\"--require\\"",
+ "name": "should handle "--require"",
"result": "success",
"time": 2,
},
TestCaseResult {
"error": undefined,
- "name": "should handle \\"--ui\\"",
+ "name": "should handle "--ui"",
"result": "success",
"time": 3,
},
@@ -2857,8 +2857,8 @@ TestRunResult {
],
},
TestGroupResult {
- "name": "worker when run as worker process function run() when the file at \\"filepath\\" is loadable when run twice",
- "tests": Array [
+ "name": "worker when run as worker process function run() when the file at "filepath" is loadable when run twice",
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should initialize only once",
@@ -2868,8 +2868,8 @@ TestRunResult {
],
},
TestGroupResult {
- "name": "worker when run as worker process function run() when the file at \\"filepath\\" is loadable when serialization fails",
- "tests": Array [
+ "name": "worker when run as worker process function run() when the file at "filepath" is loadable when serialization fails",
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should reject",
@@ -2879,8 +2879,8 @@ TestRunResult {
],
},
TestGroupResult {
- "name": "worker when run as worker process function run() when the file at \\"filepath\\" is loadable when serialization succeeds",
- "tests": Array [
+ "name": "worker when run as worker process function run() when the file at "filepath" is loadable when serialization succeeds",
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should resolve with a SerializedWorkerResult",
@@ -2894,10 +2894,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Context nested",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should work",
@@ -2908,7 +2908,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Context Siblings sequestered sibling",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should work",
@@ -2919,7 +2919,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Context Siblings sibling verifiction",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should allow test siblings to modify shared context",
@@ -2942,7 +2942,7 @@ TestRunResult {
},
TestGroupResult {
"name": "methods retries",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return the number of retries",
@@ -2953,7 +2953,7 @@ TestRunResult {
},
TestGroupResult {
"name": "methods slow()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return the slow",
@@ -2964,7 +2964,7 @@ TestRunResult {
},
TestGroupResult {
"name": "methods timeout()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return the timeout",
@@ -2978,10 +2978,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "durations when fast",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not highlight",
@@ -2992,7 +2992,7 @@ TestRunResult {
},
TestGroupResult {
"name": "durations when reasonable",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should highlight in yellow",
@@ -3003,7 +3003,7 @@ TestRunResult {
},
TestGroupResult {
"name": "durations when slow",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should highlight in red",
@@ -3017,10 +3017,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Errors createForbiddenExclusivityError() when Mocha instance is not running in a worker process",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should output a message regarding --forbid-only",
@@ -3031,7 +3031,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Errors createForbiddenExclusivityError() when Mocha instance is running in a worker process",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should output a message regarding incompatibility",
@@ -3042,7 +3042,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Errors createInvalidInterfaceError()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should include expected code in thrown interface errors",
@@ -3053,7 +3053,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Errors createInvalidReporterError()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should include expected code in thrown reporter errors",
@@ -3064,7 +3064,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Errors deprecate()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should cache the message",
@@ -3087,7 +3087,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Errors isMochaError() when provided a non-error",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return false",
@@ -3098,7 +3098,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Errors isMochaError() when provided an Error object having a known Mocha error code",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return true",
@@ -3109,7 +3109,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Errors isMochaError() when provided an Error object with a non-Mocha error code",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return false",
@@ -3120,7 +3120,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Errors warn()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should call process.emitWarning",
@@ -3146,10 +3146,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "global leaks",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should cause tests to fail",
@@ -3164,7 +3164,7 @@ TestRunResult {
},
TestCaseResult {
"error": undefined,
- "name": "should pass when prefixed \\"mocha-\\"",
+ "name": "should pass when prefixed "mocha-"",
"result": "success",
"time": 0,
},
@@ -3181,10 +3181,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Mocha .grep()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should add a RegExp to the mocha.options object",
@@ -3212,8 +3212,8 @@ TestRunResult {
],
},
TestGroupResult {
- "name": "Mocha \\"fgrep\\" option",
- "tests": Array [
+ "name": "Mocha "fgrep" option",
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should escape and convert string to a RegExp",
@@ -3223,8 +3223,8 @@ TestRunResult {
],
},
TestGroupResult {
- "name": "Mocha \\"grep\\" option",
- "tests": Array [
+ "name": "Mocha "grep" option",
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should add a RegExp to the mocha.options object",
@@ -3240,8 +3240,8 @@ TestRunResult {
],
},
TestGroupResult {
- "name": "Mocha \\"invert\\" option",
- "tests": Array [
+ "name": "Mocha "invert" option",
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should add a Boolean to the mocha.options object",
@@ -3255,10 +3255,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "async hooks",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "one",
@@ -3284,10 +3284,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "serial nested",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "bar",
@@ -3304,7 +3304,7 @@ TestRunResult {
},
TestGroupResult {
"name": "serial nested hooks",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "one",
@@ -3324,10 +3324,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "serial hooks",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "one",
@@ -3353,10 +3353,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "hook timeout",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should work",
@@ -3370,10 +3370,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Hook error",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should get the hook._error when called without arguments",
@@ -3390,7 +3390,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Hook reset",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should call Runnable.reset",
@@ -3410,10 +3410,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Mocha constructor",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should set _cleanReferencesAfterRun to true",
@@ -3424,7 +3424,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha constructor when \`global\` option is an \`Array\`",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should attempt to set globals",
@@ -3435,7 +3435,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha constructor when \`parallel\` option is true and \`jobs\` option <= 1",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not enable parallel mode",
@@ -3446,7 +3446,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha constructor when \`parallel\` option is true and \`jobs\` option > 1",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should enable parallel mode",
@@ -3457,7 +3457,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha constructor when \`parallel\` option is true when \`enableGlobalSetup\` option is present",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should toggle global setup fixtures",
@@ -3468,7 +3468,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha constructor when \`parallel\` option is true when \`enableGlobalTeardown\` option is present",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should configure global teardown fixtures",
@@ -3479,7 +3479,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha constructor when \`parallel\` option is true when \`globalSetup\` option is present",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should configure global setup fixtures",
@@ -3490,7 +3490,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha constructor when \`parallel\` option is true when \`globalTeardown\` option is present",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should configure global teardown fixtures",
@@ -3501,7 +3501,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha constructor when \`retries\` option is not present",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not attempt to set retries",
@@ -3512,7 +3512,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha constructor when \`retries\` option is present",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should attempt to set retries\`",
@@ -3523,7 +3523,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha constructor when \`rootHooks\` option is truthy",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "shouid attempt to set root hooks",
@@ -3534,7 +3534,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha constructor when \`timeout\` option is \`false\`",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should attempt to set timeout",
@@ -3545,7 +3545,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha constructor when \`timeout\` option is \`undefined\`",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not attempt to set timeout",
@@ -3556,7 +3556,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method _runGlobalFixtures()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should execute multiple fixtures in order",
@@ -3567,7 +3567,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method allowUncaught()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should be chainable",
@@ -3590,7 +3590,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method asyncOnly()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should be chainable",
@@ -3613,7 +3613,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method bail()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should be chainable",
@@ -3624,10 +3624,10 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method bail() when provided a falsy argument",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "should unset the \\"bail\\" flag on the root suite",
+ "name": "should unset the "bail" flag on the root suite",
"result": "success",
"time": 1,
},
@@ -3635,10 +3635,10 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method bail() when provided no arguments",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "should set the \\"bail\\" flag on the root suite",
+ "name": "should set the "bail" flag on the root suite",
"result": "success",
"time": 1,
},
@@ -3646,7 +3646,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method checkLeaks()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should set the checkLeaks option to true",
@@ -3657,7 +3657,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method cleanReferencesAfterRun()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should be chainable",
@@ -3680,7 +3680,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method color()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should be chainable",
@@ -3703,7 +3703,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method delay()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should be chainable",
@@ -3720,7 +3720,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method diff()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should set the diff option to true",
@@ -3731,7 +3731,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method diff() when provided \`false\` argument",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should set the diff option to false",
@@ -3742,7 +3742,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method dispose()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should dispose previous test runner",
@@ -3765,7 +3765,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method forbidOnly()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should be chainable",
@@ -3788,7 +3788,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method forbidPending()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should be chainable",
@@ -3811,7 +3811,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method fullTrace()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should be chainable",
@@ -3834,7 +3834,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method global()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should be an empty array initially",
@@ -3851,7 +3851,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method global() when argument is invalid",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not modify the whitelist when given empty array",
@@ -3868,7 +3868,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method global() when argument is valid",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should add contents of string array to the whitelist",
@@ -3891,7 +3891,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method growl()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should be chainable",
@@ -3902,7 +3902,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method growl() if capable of notifications",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should set the growl option to true",
@@ -3913,7 +3913,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method growl() if not capable of notifications",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should set the growl option to false",
@@ -3924,7 +3924,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method hasGlobalSetupFixtures() when no global setup fixtures are present",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return \`false\`",
@@ -3935,7 +3935,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method hasGlobalSetupFixtures() when one or more global setup fixtures are present",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return \`true\`",
@@ -3946,7 +3946,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method hasGlobalTeardownFixtures() when no global teardown fixtures are present",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return \`false\`",
@@ -3957,7 +3957,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method hasGlobalTeardownFixtures() when one or more global teardown fixtures are present",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return \`true\`",
@@ -3968,7 +3968,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method inlineDiffs()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should be chainable",
@@ -3991,7 +3991,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method invert()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should be chainable",
@@ -4008,7 +4008,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method noHighlighting()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should be chainable",
@@ -4025,7 +4025,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method parallelMode() when \`Mocha\` is running in a browser",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should throw",
@@ -4036,7 +4036,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method reporter()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should be chainable",
@@ -4059,7 +4059,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method rootHooks()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should be chainable",
@@ -4069,8 +4069,8 @@ TestRunResult {
],
},
TestGroupResult {
- "name": "Mocha instance method rootHooks() when provided a single \\"after all\\" hook",
- "tests": Array [
+ "name": "Mocha instance method rootHooks() when provided a single "after all" hook",
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should attach it to the root suite",
@@ -4080,8 +4080,8 @@ TestRunResult {
],
},
TestGroupResult {
- "name": "Mocha instance method rootHooks() when provided a single \\"after each\\" hook",
- "tests": Array [
+ "name": "Mocha instance method rootHooks() when provided a single "after each" hook",
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should attach it to the root suite",
@@ -4091,8 +4091,8 @@ TestRunResult {
],
},
TestGroupResult {
- "name": "Mocha instance method rootHooks() when provided a single \\"before all\\" hook",
- "tests": Array [
+ "name": "Mocha instance method rootHooks() when provided a single "before all" hook",
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should attach it to the root suite",
@@ -4102,8 +4102,8 @@ TestRunResult {
],
},
TestGroupResult {
- "name": "Mocha instance method rootHooks() when provided a single \\"before each\\" hook",
- "tests": Array [
+ "name": "Mocha instance method rootHooks() when provided a single "before each" hook",
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should attach it to the root suite",
@@ -4113,8 +4113,8 @@ TestRunResult {
],
},
TestGroupResult {
- "name": "Mocha instance method rootHooks() when provided multiple \\"after all\\" hooks",
- "tests": Array [
+ "name": "Mocha instance method rootHooks() when provided multiple "after all" hooks",
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should attach each to the root suite",
@@ -4124,8 +4124,8 @@ TestRunResult {
],
},
TestGroupResult {
- "name": "Mocha instance method rootHooks() when provided multiple \\"after each\\" hooks",
- "tests": Array [
+ "name": "Mocha instance method rootHooks() when provided multiple "after each" hooks",
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should attach each to the root suite",
@@ -4135,8 +4135,8 @@ TestRunResult {
],
},
TestGroupResult {
- "name": "Mocha instance method rootHooks() when provided multiple \\"before all\\" hooks",
- "tests": Array [
+ "name": "Mocha instance method rootHooks() when provided multiple "before all" hooks",
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should attach each to the root suite",
@@ -4146,8 +4146,8 @@ TestRunResult {
],
},
TestGroupResult {
- "name": "Mocha instance method rootHooks() when provided multiple \\"before each\\" hooks",
- "tests": Array [
+ "name": "Mocha instance method rootHooks() when provided multiple "before each" hooks",
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should attach each to the root suite",
@@ -4158,7 +4158,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method run()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should execute the callback when complete",
@@ -4181,7 +4181,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method run() Base reporter initialization",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should configure the Base reporter",
@@ -4191,8 +4191,8 @@ TestRunResult {
],
},
TestGroupResult {
- "name": "Mocha instance method run() Base reporter initialization when \\"color\\" options is set",
- "tests": Array [
+ "name": "Mocha instance method run() Base reporter initialization when "color" options is set",
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should configure the Base reporter",
@@ -4203,7 +4203,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method run() Runner initialization",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should instantiate a Runner",
@@ -4213,8 +4213,8 @@ TestRunResult {
],
},
TestGroupResult {
- "name": "Mocha instance method run() Runner initialization when \\"global\\" option is present",
- "tests": Array [
+ "name": "Mocha instance method run() Runner initialization when "global" option is present",
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should configure global vars",
@@ -4224,19 +4224,19 @@ TestRunResult {
],
},
TestGroupResult {
- "name": "Mocha instance method run() Runner initialization when \\"grep\\" option is present",
- "tests": Array [
+ "name": "Mocha instance method run() Runner initialization when "grep" option is present",
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "should configure \\"grep\\"",
+ "name": "should configure "grep"",
"result": "success",
"time": 1,
},
],
},
TestGroupResult {
- "name": "Mocha instance method run() when \\"growl\\" option is present",
- "tests": Array [
+ "name": "Mocha instance method run() when "growl" option is present",
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should initialize growl support",
@@ -4246,11 +4246,11 @@ TestRunResult {
],
},
TestGroupResult {
- "name": "Mocha instance method run() when a reporter instance has a \\"done\\" method",
- "tests": Array [
+ "name": "Mocha instance method run() when a reporter instance has a "done" method",
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "should call the reporter \\"done\\" method",
+ "name": "should call the reporter "done" method",
"result": "success",
"time": 1,
},
@@ -4258,7 +4258,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method run() when a run has finished and is called again",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not call \`Runner#runAsync()\`",
@@ -4275,7 +4275,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method run() when a run is in progress",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not call \`Runner#runAsync\`",
@@ -4292,7 +4292,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method run() when files have been added to the Mocha instance when Mocha is set to eagerly load files",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should eagerly load files",
@@ -4303,7 +4303,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method run() when files have been added to the Mocha instance when Mocha is set to lazily load files",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not eagerly load files",
@@ -4314,7 +4314,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method run() when global setup fixtures disabled when global setup fixtures are present",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not run global setup fixtures",
@@ -4325,7 +4325,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method run() when global setup fixtures disabled when global setup fixtures not present",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not run global setup fixtures",
@@ -4336,7 +4336,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method run() when global setup fixtures enabled when global setup fixtures are present",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should run global setup fixtures",
@@ -4347,7 +4347,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method run() when global setup fixtures enabled when global setup fixtures not present",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not run global setup fixtures",
@@ -4358,7 +4358,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method run() when global teardown fixtures disabled when global teardown fixtures are present",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not run global teardown fixtures",
@@ -4369,7 +4369,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method run() when global teardown fixtures disabled when global teardown fixtures not present",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not run global teardown fixtures",
@@ -4380,7 +4380,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method run() when global teardown fixtures enabled when global teardown fixtures are present",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should run global teardown fixtures",
@@ -4391,7 +4391,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method run() when global teardown fixtures enabled when global teardown fixtures are present when global setup fixtures are present and enabled",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should use the same context as returned by \`runGlobalSetup\`",
@@ -4402,7 +4402,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method run() when global teardown fixtures enabled when global teardown fixtures not present",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not run global teardown fixtures",
@@ -4413,7 +4413,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method run() when Mocha configured for multiple runs and multiple runs are attempted",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should call \`Runner#runAsync\` for each call",
@@ -4442,7 +4442,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method run() when the \`Mocha\` instance is already disposed",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not call \`Runner#runAsync\`",
@@ -4459,7 +4459,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method runGlobalSetup() when a fixture is not present",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not attempt to run fixtures",
@@ -4470,7 +4470,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method runGlobalSetup() when fixture(s) are present",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should attempt run the fixtures",
@@ -4481,7 +4481,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method runGlobalTeardown() when a fixture is not present",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "not attempt to run the fixtures",
@@ -4492,7 +4492,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method runGlobalTeardown() when fixture(s) are present",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should attempt to run the fixtures",
@@ -4503,7 +4503,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Mocha instance method unloadFile() when run in a browser",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should throw",
@@ -4517,10 +4517,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "overspecified asynchronous resolution method",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should fail when multiple methods are used",
@@ -4534,10 +4534,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "parseQuery()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should get queryString and return key-value object",
@@ -4546,7 +4546,7 @@ TestRunResult {
},
TestCaseResult {
"error": undefined,
- "name": "should parse \\"+\\" as a space",
+ "name": "should parse "+" as a space",
"result": "success",
"time": 0,
},
@@ -4557,10 +4557,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "plugin module class PluginLoader constructor when passed custom plugins",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should register the custom plugins",
@@ -4571,7 +4571,7 @@ TestRunResult {
},
TestGroupResult {
"name": "plugin module class PluginLoader constructor when passed ignored plugins",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should retain a list of ignored plugins",
@@ -4582,7 +4582,7 @@ TestRunResult {
},
TestGroupResult {
"name": "plugin module class PluginLoader constructor when passed no options",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should populate a registry of built-in plugins",
@@ -4592,8 +4592,8 @@ TestRunResult {
],
},
TestGroupResult {
- "name": "plugin module class PluginLoader instance method finalize() when a plugin has no \\"finalize\\" function",
- "tests": Array [
+ "name": "plugin module class PluginLoader instance method finalize() when a plugin has no "finalize" function",
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return an array of raw implementations",
@@ -4604,7 +4604,7 @@ TestRunResult {
},
TestGroupResult {
"name": "plugin module class PluginLoader instance method finalize() when a plugin has one or more implementations",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should omit unused plugins",
@@ -4621,7 +4621,7 @@ TestRunResult {
},
TestGroupResult {
"name": "plugin module class PluginLoader instance method finalize() when no plugins have been loaded",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return an empty map",
@@ -4632,7 +4632,7 @@ TestRunResult {
},
TestGroupResult {
"name": "plugin module class PluginLoader instance method load() when called with a falsy value",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return false",
@@ -4643,7 +4643,7 @@ TestRunResult {
},
TestGroupResult {
"name": "plugin module class PluginLoader instance method load() when called with an object containing a recognized plugin",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should call the associated validator, if present",
@@ -4666,7 +4666,7 @@ TestRunResult {
},
TestGroupResult {
"name": "plugin module class PluginLoader instance method load() when called with an object containing no recognized plugin",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return false",
@@ -4677,7 +4677,7 @@ TestRunResult {
},
TestGroupResult {
"name": "plugin module class PluginLoader instance method load() when passed a falsy or non-object value",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not call a validator",
@@ -4694,7 +4694,7 @@ TestRunResult {
},
TestGroupResult {
"name": "plugin module class PluginLoader instance method load() when passed an object value when a key matches a known named export",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should call the associated validator",
@@ -4711,7 +4711,7 @@ TestRunResult {
},
TestGroupResult {
"name": "plugin module class PluginLoader instance method load() when passed an object value when a key matches a known named export when the value does not pass the associated validator",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should throw",
@@ -4722,7 +4722,7 @@ TestRunResult {
},
TestGroupResult {
"name": "plugin module class PluginLoader instance method load() when passed an object value when a key matches a known named export when the value passes the associated validator",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should add the implementation to the internal mapping",
@@ -4745,7 +4745,7 @@ TestRunResult {
},
TestGroupResult {
"name": "plugin module class PluginLoader instance method load() when passed an object value when no keys match any known named exports",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return false",
@@ -4756,7 +4756,7 @@ TestRunResult {
},
TestGroupResult {
"name": "plugin module class PluginLoader instance method register() when passed a definition w/o an exportName",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should throw",
@@ -4767,7 +4767,7 @@ TestRunResult {
},
TestGroupResult {
"name": "plugin module class PluginLoader instance method register() when passed a falsy parameter",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should throw",
@@ -4778,7 +4778,7 @@ TestRunResult {
},
TestGroupResult {
"name": "plugin module class PluginLoader instance method register() when passed a non-object parameter",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should throw",
@@ -4789,7 +4789,7 @@ TestRunResult {
},
TestGroupResult {
"name": "plugin module class PluginLoader instance method register() when the plugin export name is already in use",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should throw",
@@ -4800,7 +4800,7 @@ TestRunResult {
},
TestGroupResult {
"name": "plugin module class PluginLoader instance method register() when the plugin export name is ignored",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not register the plugin",
@@ -4817,7 +4817,7 @@ TestRunResult {
},
TestGroupResult {
"name": "plugin module class PluginLoader instance method register() when the plugin export name is not in use",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not throw",
@@ -4828,7 +4828,7 @@ TestRunResult {
},
TestGroupResult {
"name": "plugin module class PluginLoader static method create()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return a PluginLoader instance",
@@ -4839,7 +4839,7 @@ TestRunResult {
},
TestGroupResult {
"name": "plugin module global fixtures plugin global setup when an implementation is a function",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should pass validation",
@@ -4850,7 +4850,7 @@ TestRunResult {
},
TestGroupResult {
"name": "plugin module global fixtures plugin global setup when an implementation is a primitive",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should fail validation",
@@ -4861,7 +4861,7 @@ TestRunResult {
},
TestGroupResult {
"name": "plugin module global fixtures plugin global setup when an implementation is an array of functions",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should pass validation",
@@ -4872,7 +4872,7 @@ TestRunResult {
},
TestGroupResult {
"name": "plugin module global fixtures plugin global setup when an implementation is an array of primitives",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should fail validation",
@@ -4883,7 +4883,7 @@ TestRunResult {
},
TestGroupResult {
"name": "plugin module global fixtures plugin global teardown when an implementation is a function",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should pass validation",
@@ -4894,7 +4894,7 @@ TestRunResult {
},
TestGroupResult {
"name": "plugin module global fixtures plugin global teardown when an implementation is a primitive",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should fail validation",
@@ -4905,7 +4905,7 @@ TestRunResult {
},
TestGroupResult {
"name": "plugin module global fixtures plugin global teardown when an implementation is an array of functions",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should pass validation",
@@ -4916,7 +4916,7 @@ TestRunResult {
},
TestGroupResult {
"name": "plugin module global fixtures plugin global teardown when an implementation is an array of primitives",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should fail validation",
@@ -4927,7 +4927,7 @@ TestRunResult {
},
TestGroupResult {
"name": "plugin module root hooks plugin 🎣 when a loaded impl is finalized",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should flatten the implementations",
@@ -4938,7 +4938,7 @@ TestRunResult {
},
TestGroupResult {
"name": "plugin module root hooks plugin 🎣 when impl is a function",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should pass validation",
@@ -4949,7 +4949,7 @@ TestRunResult {
},
TestGroupResult {
"name": "plugin module root hooks plugin 🎣 when impl is a primitive",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should fail validation",
@@ -4960,7 +4960,7 @@ TestRunResult {
},
TestGroupResult {
"name": "plugin module root hooks plugin 🎣 when impl is an array",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should fail validation",
@@ -4971,7 +4971,7 @@ TestRunResult {
},
TestGroupResult {
"name": "plugin module root hooks plugin 🎣 when impl is an object of functions",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should pass validation",
@@ -4985,10 +4985,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "using imported describe",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "using imported it",
@@ -5002,10 +5002,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "root",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should be a valid suite",
@@ -5019,10 +5019,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Runnable(title, fn) .run(fn) if async",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "this.skip() should halt synchronous execution",
@@ -5039,7 +5039,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runnable(title, fn) .run(fn) if timed-out",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should ignore call to \`done\` and not execute callback again",
@@ -5050,7 +5050,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runnable(title, fn) .run(fn) when .pending",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not invoke the callback",
@@ -5061,7 +5061,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runnable(title, fn) .run(fn) when async",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should allow a timeout of 0",
@@ -5078,7 +5078,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runnable(title, fn) .run(fn) when async when an error is passed",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should invoke the callback",
@@ -5089,7 +5089,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runnable(title, fn) .run(fn) when async when an exception is thrown",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should invoke the callback",
@@ -5106,7 +5106,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runnable(title, fn) .run(fn) when async when an exception is thrown and is allowed to remain uncaught",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "throws an error when it is allowed",
@@ -5117,7 +5117,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runnable(title, fn) .run(fn) when async when done() is invoked with a non-Error object",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should invoke the callback",
@@ -5128,7 +5128,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runnable(title, fn) .run(fn) when async when done() is invoked with a string",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should invoke the callback",
@@ -5139,10 +5139,10 @@ TestRunResult {
},
TestGroupResult {
"name": "Runnable(title, fn) .run(fn) when async when the callback is invoked several times with an error",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "should emit a single \\"error\\" event",
+ "name": "should emit a single "error" event",
"result": "success",
"time": 1,
},
@@ -5150,10 +5150,10 @@ TestRunResult {
},
TestGroupResult {
"name": "Runnable(title, fn) .run(fn) when async when the callback is invoked several times without an error",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "should emit a single \\"error\\" event",
+ "name": "should emit a single "error" event",
"result": "success",
"time": 1,
},
@@ -5161,7 +5161,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runnable(title, fn) .run(fn) when async without error",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should invoke the callback",
@@ -5172,7 +5172,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runnable(title, fn) .run(fn) when fn is not a function",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should throw an error",
@@ -5183,7 +5183,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runnable(title, fn) .run(fn) when fn returns a non-promise",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should invoke the callback",
@@ -5194,7 +5194,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runnable(title, fn) .run(fn) when fn returns a promise when the promise is fulfilled with a value",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should invoke the callback",
@@ -5205,7 +5205,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runnable(title, fn) .run(fn) when fn returns a promise when the promise is fulfilled with no value",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should invoke the callback",
@@ -5216,7 +5216,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runnable(title, fn) .run(fn) when fn returns a promise when the promise is rejected",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should invoke the callback",
@@ -5227,7 +5227,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runnable(title, fn) .run(fn) when fn returns a promise when the promise is rejected without a reason",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should invoke the callback",
@@ -5238,7 +5238,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runnable(title, fn) .run(fn) when fn returns a promise when the promise takes too long to settle",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should throw the timeout error",
@@ -5249,7 +5249,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runnable(title, fn) .run(fn) when sync when an exception is thrown",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should invoke the callback with error",
@@ -5260,7 +5260,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runnable(title, fn) .run(fn) when sync when an exception is thrown and is allowed to remain uncaught",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "throws an error when it is allowed",
@@ -5271,7 +5271,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runnable(title, fn) .run(fn) when sync without error",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should invoke the callback",
@@ -5282,7 +5282,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runnable(title, fn) .run(fn) when timeouts are disabled",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not error with timeout",
@@ -5293,7 +5293,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runnable(title, fn) .title",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should be present",
@@ -5304,7 +5304,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runnable(title, fn) .titlePath()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "returns the concatenation of the parent's title path and runnable's title",
@@ -5315,7 +5315,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runnable(title, fn) #globals",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should allow for whitelisting globals",
@@ -5326,7 +5326,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runnable(title, fn) #isFailed()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return \`false\` if test is pending",
@@ -5349,7 +5349,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runnable(title, fn) #reset",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should reset current run state",
@@ -5360,7 +5360,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runnable(title, fn) #resetTimeout()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not time out if timeouts disabled after reset",
@@ -5371,7 +5371,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runnable(title, fn) #retries(n)",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should set the number of retries",
@@ -5382,7 +5382,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runnable(title, fn) #slow(ms)",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not set the slow threshold if the parameter is not passed",
@@ -5405,7 +5405,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runnable(title, fn) #slow(ms) when passed a time-formatted string",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should convert to ms",
@@ -5416,7 +5416,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runnable(title, fn) #timeout(ms) when value is equal to lower bound given numeric value",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should set the timeout value to disabled",
@@ -5427,7 +5427,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runnable(title, fn) #timeout(ms) when value is equal to lower bound given string timestamp",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should set the timeout value to disabled",
@@ -5438,7 +5438,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runnable(title, fn) #timeout(ms) when value is equal to upper bound given numeric value",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should set the disabled timeout value",
@@ -5449,7 +5449,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runnable(title, fn) #timeout(ms) when value is less than lower bound",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should clamp to lower bound given numeric",
@@ -5466,7 +5466,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runnable(title, fn) #timeout(ms) when value is out-of-bounds given numeric value",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should set the disabled timeout value",
@@ -5477,7 +5477,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runnable(title, fn) #timeout(ms) when value is within \`setTimeout\` bounds given numeric value",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should set the timeout value",
@@ -5488,7 +5488,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runnable(title, fn) #timeout(ms) when value is within \`setTimeout\` bounds given string timestamp",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should set the timeout value",
@@ -5499,7 +5499,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runnable(title, fn) interesting property id",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should have a permanent identifier",
@@ -5516,7 +5516,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runnable(title, fn) static method toValueOrError",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return an Error if parameter is falsy",
@@ -5533,7 +5533,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runnable(title, fn) when arity == 0",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should be .sync",
@@ -5550,7 +5550,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runnable(title, fn) when arity >= 1",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should be .async",
@@ -5570,10 +5570,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Runner instance method _uncaught() when called with a non-Runner context",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should throw",
@@ -5584,7 +5584,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runner instance method abort()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return the Runner",
@@ -5601,7 +5601,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runner instance method allowUncaught()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "async - should allow unhandled errors in hooks to propagate through",
@@ -5630,7 +5630,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runner instance method checkGlobals(test)",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should allow variables that match a wildcard",
@@ -5639,19 +5639,19 @@ TestRunResult {
},
TestCaseResult {
"error": undefined,
- "name": "should emit \\"fail\\" when a global beginning with \\"d\\" is introduced",
+ "name": "should emit "fail" when a global beginning with "d" is introduced",
"result": "success",
"time": 0,
},
TestCaseResult {
"error": undefined,
- "name": "should emit \\"fail\\" when a new global is introduced",
+ "name": "should emit "fail" when a new global is introduced",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "should emit \\"fail\\" when a single new disallowed global is introduced after a single extra global is allowed",
+ "name": "should emit "fail" when a single new disallowed global is introduced after a single extra global is allowed",
"result": "success",
"time": 0,
},
@@ -5683,16 +5683,16 @@ TestRunResult {
},
TestGroupResult {
"name": "Runner instance method dispose()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "should remove \\"error\\" listeners from a test",
+ "name": "should remove "error" listeners from a test",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "should remove \\"uncaughtException\\" listeners from the process",
+ "name": "should remove "uncaughtException" listeners from the process",
"result": "success",
"time": 0,
},
@@ -5706,16 +5706,16 @@ TestRunResult {
},
TestGroupResult {
"name": "Runner instance method fail()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "should emit \\"fail\\"",
+ "name": "should emit "fail"",
"result": "success",
"time": 1,
},
TestCaseResult {
"error": undefined,
- "name": "should emit \\"fail\\"",
+ "name": "should emit "fail"",
"result": "success",
"time": 0,
},
@@ -5763,7 +5763,7 @@ TestRunResult {
},
TestCaseResult {
"error": undefined,
- "name": "should not emit \\"end\\" if suite bail is not true",
+ "name": "should not emit "end" if suite bail is not true",
"result": "success",
"time": 1,
},
@@ -5781,29 +5781,29 @@ TestRunResult {
},
TestCaseResult {
"error": undefined,
- "name": "should set \`Test#state\` to \\"failed\\"",
+ "name": "should set \`Test#state\` to "failed"",
"result": "success",
"time": 0,
},
],
},
TestGroupResult {
- "name": "Runner instance method fail() when Runner has stopped when test is not pending when error is not of the \\"multiple done\\" variety",
- "tests": Array [
+ "name": "Runner instance method fail() when Runner has stopped when test is not pending when error is not of the "multiple done" variety",
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "should throw a \\"fatal\\" error",
+ "name": "should throw a "fatal" error",
"result": "success",
"time": 1,
},
],
},
TestGroupResult {
- "name": "Runner instance method fail() when Runner has stopped when test is not pending when error is the \\"multiple done\\" variety",
- "tests": Array [
+ "name": "Runner instance method fail() when Runner has stopped when test is not pending when error is the "multiple done" variety",
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "should throw the \\"multiple done\\" error",
+ "name": "should throw the "multiple done" error",
"result": "success",
"time": 1,
},
@@ -5811,7 +5811,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runner instance method globalProps()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should include common non enumerable globals",
@@ -5822,7 +5822,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runner instance method globals()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should default to the known globals",
@@ -5839,7 +5839,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runner instance method grep()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should update the runner.total with number of matched tests",
@@ -5856,7 +5856,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runner instance method grepTotal()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return the total number of matched tests",
@@ -5873,7 +5873,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runner instance method hook()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should augment hook title with current test title",
@@ -5890,7 +5890,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runner instance method isParallelMode()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return false",
@@ -5901,7 +5901,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runner instance method linkPartialObjects()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return the Runner",
@@ -5912,7 +5912,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runner instance method run()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should clean references after a run",
@@ -5921,7 +5921,7 @@ TestRunResult {
},
TestCaseResult {
"error": undefined,
- "name": "should emit \\"retry\\" when a retryable test fails",
+ "name": "should emit "retry" when a retryable test fails",
"result": "success",
"time": 1,
},
@@ -5947,7 +5947,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runner instance method run() stack traces ginormous",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not hang if overlong error message is multiple lines",
@@ -5964,7 +5964,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runner instance method run() stack traces long",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should display the full stack-trace",
@@ -5975,7 +5975,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runner instance method run() stack traces short",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should prettify the stack-trace",
@@ -5986,7 +5986,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runner instance method runAsync()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should pass through options to Runner#run",
@@ -6003,7 +6003,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runner instance method runTest()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return when no tests to run",
@@ -6014,7 +6014,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runner instance method uncaught() when allow-uncaught is set to true",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should propagate error and throw",
@@ -6025,7 +6025,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runner instance method uncaught() when provided an object argument when argument is a Pending",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should ignore argument and return",
@@ -6036,10 +6036,10 @@ TestRunResult {
},
TestGroupResult {
"name": "Runner instance method uncaught() when provided an object argument when argument is an Error",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
- "name": "should add the \\"uncaught\\" property to the Error",
+ "name": "should add the "uncaught" property to the Error",
"result": "success",
"time": 1,
},
@@ -6047,7 +6047,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runner instance method uncaught() when provided an object argument when argument is an Error when a Runnable is running or has run",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should clear any pending timeouts",
@@ -6058,7 +6058,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runner instance method uncaught() when provided an object argument when argument is an Error when a Runnable is running or has run when current Runnable has already failed",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not attempt to fail again",
@@ -6069,7 +6069,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runner instance method uncaught() when provided an object argument when argument is an Error when a Runnable is running or has run when current Runnable has been marked pending",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should attempt to fail",
@@ -6080,7 +6080,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runner instance method uncaught() when provided an object argument when argument is an Error when a Runnable is running or has run when the current Runnable has already passed",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should abort the runner without emitting end event",
@@ -6097,7 +6097,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runner instance method uncaught() when provided an object argument when argument is an Error when a Runnable is running or has run when the current Runnable is still running when the current Runnable is a Hook",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not notify run has ended",
@@ -6120,7 +6120,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runner instance method uncaught() when provided an object argument when argument is an Error when a Runnable is running or has run when the current Runnable is still running when the current Runnable is a Test",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not notify run has ended",
@@ -6143,7 +6143,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runner instance method uncaught() when provided an object argument when argument is an Error when no Runnables are running",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should fail with a transient Runnable and the error",
@@ -6154,7 +6154,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runner instance method uncaught() when provided an object argument when argument is an Error when no Runnables are running when Runner is IDLE",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should emit start/end events for the benefit of reporters",
@@ -6165,7 +6165,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runner instance method uncaught() when provided an object argument when argument is an Error when no Runnables are running when Runner is RUNNING",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not emit start/end events",
@@ -6176,7 +6176,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runner instance method uncaught() when provided an object argument when argument is an Error when no Runnables are running when Runner is STOPPED",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not emit start/end events, since this presumably would have already happened",
@@ -6193,7 +6193,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runner instance method uncaught() when provided an object argument when argument is not an Error",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should fail with a transient Runnable and a new Error coerced from the object",
@@ -6204,7 +6204,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Runner instance method workerReporter()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should throw",
@@ -6218,10 +6218,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Suite instance method addSuite()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "adds the suite to the suites collection",
@@ -6256,7 +6256,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Suite instance method addTest()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "adds the test to the tests collection",
@@ -6279,7 +6279,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Suite instance method afterAll() wraps the passed in function in a Hook",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "adds it to _afterAll",
@@ -6302,7 +6302,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Suite instance method afterEach() wraps the passed in function in a Hook",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "adds it to _afterEach",
@@ -6325,7 +6325,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Suite instance method bail() when argument is passed",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return the Suite object",
@@ -6336,7 +6336,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Suite instance method bail() when no argument is passed",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return the bail value",
@@ -6347,7 +6347,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Suite instance method beforeAll() wraps the passed in function in a Hook",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "adds it to _beforeAll",
@@ -6370,7 +6370,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Suite instance method beforeEach() when the suite is pending",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not create a hook",
@@ -6381,7 +6381,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Suite instance method beforeEach() wraps the passed in function in a Hook",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "adds it to _beforeEach",
@@ -6404,7 +6404,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Suite instance method clone()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should clone the Suite, omitting children",
@@ -6415,7 +6415,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Suite instance method constructor",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not throw if the title is a string",
@@ -6438,7 +6438,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Suite instance method create()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "does not create a second root suite",
@@ -6455,7 +6455,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Suite instance method eachTest(fn) when there are no nested suites or tests",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return 0",
@@ -6466,7 +6466,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Suite instance method eachTest(fn) when there are several levels of nested suites",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return the number",
@@ -6477,7 +6477,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Suite instance method eachTest(fn) when there are several tests in the suite",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return the number",
@@ -6488,7 +6488,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Suite instance method filterOnly()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should filter out all other tests and suites if a suite has \`only\`",
@@ -6505,7 +6505,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Suite instance method fullTitle() when there is a parent",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "returns the combination of parent's and suite's title",
@@ -6516,7 +6516,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Suite instance method fullTitle() when there is no parent",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "returns the suite title",
@@ -6527,7 +6527,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Suite instance method hasOnly()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return false if no suite or test is marked \`only\`",
@@ -6556,7 +6556,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Suite instance method markOnly()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should call appendOnlySuite on parent",
@@ -6567,7 +6567,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Suite instance method reset()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should forward reset to all hooks",
@@ -6590,7 +6590,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Suite instance method slow() when argument is passed",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return the Suite object",
@@ -6601,7 +6601,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Suite instance method slow() when given a string",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should parse it",
@@ -6612,7 +6612,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Suite instance method slow() when no argument is passed",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return the slow value",
@@ -6623,7 +6623,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Suite instance method timeout()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should convert a string to milliseconds",
@@ -6634,7 +6634,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Suite instance method timeout() when argument is passed",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return the Suite object",
@@ -6645,7 +6645,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Suite instance method timeout() when no argument is passed",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return the timeout value",
@@ -6656,7 +6656,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Suite instance method titlePath() when there is a parent the parent is not the root suite",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "returns the concatenation of parent's and suite's title",
@@ -6667,7 +6667,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Suite instance method titlePath() when there is a parent the parent is the root suite",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "returns the suite title",
@@ -6678,7 +6678,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Suite instance method titlePath() when there is no parent",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "returns the suite title",
@@ -6689,7 +6689,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Suite instance method total() when there are no nested suites or tests",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return 0",
@@ -6700,7 +6700,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Suite instance method total() when there are several tests in the suite",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return the number",
@@ -6711,7 +6711,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Test initialization",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not throw if the title is a string",
@@ -6731,10 +6731,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "Test .clone()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should add/keep the retriedTest value",
@@ -6793,7 +6793,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Test .isPending()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should be pending when its parent is pending",
@@ -6816,7 +6816,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Test .markOnly()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should call appendOnlyTest on parent",
@@ -6827,7 +6827,7 @@ TestRunResult {
},
TestGroupResult {
"name": "Test .reset()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should call Runnable.reset",
@@ -6847,10 +6847,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "a test that throws non-extensible",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not pass if throwing async and test is async",
@@ -6873,7 +6873,7 @@ TestRunResult {
},
TestGroupResult {
"name": "a test that throws null",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not pass if throwing async and test is async",
@@ -6896,7 +6896,7 @@ TestRunResult {
},
TestGroupResult {
"name": "a test that throws undefined",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should not pass if throwing async and test is async",
@@ -6922,10 +6922,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "timeouts",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should allow overriding per-test",
@@ -6942,7 +6942,7 @@ TestRunResult {
},
TestGroupResult {
"name": "timeouts disabling",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should work with timeout(0)",
@@ -6953,7 +6953,7 @@ TestRunResult {
},
TestGroupResult {
"name": "timeouts disabling suite-level",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should work with timeout(0)",
@@ -6964,7 +6964,7 @@ TestRunResult {
},
TestGroupResult {
"name": "timeouts disabling suite-level nested suite",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should work with timeout(0)",
@@ -6975,7 +6975,7 @@ TestRunResult {
},
TestGroupResult {
"name": "timeouts disabling using before",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should work with timeout(0)",
@@ -6986,7 +6986,7 @@ TestRunResult {
},
TestGroupResult {
"name": "timeouts disabling using beforeEach",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should work with timeout(0)",
@@ -6997,7 +6997,7 @@ TestRunResult {
},
TestGroupResult {
"name": "timeouts disabling using timeout(0)",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should suppress timeout(4)",
@@ -7011,10 +7011,10 @@ TestRunResult {
"totalTime": undefined,
},
TestSuiteResult {
- "groups": Array [
+ "groups": [
TestGroupResult {
"name": "lib/utils canonicalType()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should recognize various types",
@@ -7025,7 +7025,7 @@ TestRunResult {
},
TestGroupResult {
"name": "lib/utils canonicalType() when toString on null or undefined stringifies window",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should recognize null and undefined",
@@ -7036,7 +7036,7 @@ TestRunResult {
},
TestGroupResult {
"name": "lib/utils castArray() when provided a primitive value",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return an array containing the primitive value only",
@@ -7046,8 +7046,8 @@ TestRunResult {
],
},
TestGroupResult {
- "name": "lib/utils castArray() when provided an \\"arguments\\" value",
- "tests": Array [
+ "name": "lib/utils castArray() when provided an "arguments" value",
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return an array containing the arguments",
@@ -7058,7 +7058,7 @@ TestRunResult {
},
TestGroupResult {
"name": "lib/utils castArray() when provided an array value",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return a copy of the array",
@@ -7069,7 +7069,7 @@ TestRunResult {
},
TestGroupResult {
"name": "lib/utils castArray() when provided an object",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return an array containing the object only",
@@ -7080,7 +7080,7 @@ TestRunResult {
},
TestGroupResult {
"name": "lib/utils castArray() when provided no parameters",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return an empty array",
@@ -7091,7 +7091,7 @@ TestRunResult {
},
TestGroupResult {
"name": "lib/utils castArray() when provided null",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return an array containing a null value only",
@@ -7102,7 +7102,7 @@ TestRunResult {
},
TestGroupResult {
"name": "lib/utils clean()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should format a multi line test indented with spaces",
@@ -7209,7 +7209,7 @@ TestRunResult {
},
TestGroupResult {
"name": "lib/utils createMap()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should add props from all object parameters to the object",
@@ -7232,7 +7232,7 @@ TestRunResult {
},
TestGroupResult {
"name": "lib/utils dQuote()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return its input as string wrapped in double quotes",
@@ -7243,7 +7243,7 @@ TestRunResult {
},
TestGroupResult {
"name": "lib/utils escape()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "replaces invalid xml characters",
@@ -7260,7 +7260,7 @@ TestRunResult {
},
TestGroupResult {
"name": "lib/utils isPromise()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return false if the object is null",
@@ -7269,7 +7269,7 @@ TestRunResult {
},
TestCaseResult {
"error": undefined,
- "name": "should return false if the value is an object w/o a \\"then\\" function",
+ "name": "should return false if the value is an object w/o a "then" function",
"result": "success",
"time": 0,
},
@@ -7289,7 +7289,7 @@ TestRunResult {
},
TestGroupResult {
"name": "lib/utils lookupFiles() when run in browser",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should throw",
@@ -7300,7 +7300,7 @@ TestRunResult {
},
TestGroupResult {
"name": "lib/utils lookupFiles() when run in Node.js",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should delegate to new location of lookupFiles()",
@@ -7317,7 +7317,7 @@ TestRunResult {
},
TestGroupResult {
"name": "lib/utils slug()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should convert the string to lowercase",
@@ -7346,7 +7346,7 @@ TestRunResult {
},
TestGroupResult {
"name": "lib/utils sQuote()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return its input as string wrapped in single quotes",
@@ -7357,7 +7357,7 @@ TestRunResult {
},
TestGroupResult {
"name": "lib/utils stringify()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "might get confusing",
@@ -7506,7 +7506,7 @@ TestRunResult {
},
TestGroupResult {
"name": "lib/utils stringify() #Number",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "floats and ints",
@@ -7535,7 +7535,7 @@ TestRunResult {
},
TestGroupResult {
"name": "lib/utils stringify() canonicalize example",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should represent the actual full result",
@@ -7546,7 +7546,7 @@ TestRunResult {
},
TestGroupResult {
"name": "lib/utils type()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should recognize various types",
@@ -7557,7 +7557,7 @@ TestRunResult {
},
TestGroupResult {
"name": "lib/utils type() when toString on null or undefined stringifies window",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should recognize null and undefined",
@@ -7568,7 +7568,7 @@ TestRunResult {
},
TestGroupResult {
"name": "lib/utils uniqueID()",
- "tests": Array [
+ "tests": [
TestCaseResult {
"error": undefined,
"name": "should return a non-empty string",
diff --git a/__tests__/__snapshots__/swift-xunit.test.ts.snap b/__tests__/__snapshots__/swift-xunit.test.ts.snap
new file mode 100644
index 0000000..01aa7d9
--- /dev/null
+++ b/__tests__/__snapshots__/swift-xunit.test.ts.snap
@@ -0,0 +1,44 @@
+// Jest Snapshot v1, https://goo.gl/fbAQLP
+
+exports[`swift-xunit tests report from swift test results matches snapshot 1`] = `
+TestRunResult {
+ "path": "fixtures/swift-xunit.xml",
+ "suites": [
+ TestSuiteResult {
+ "groups": [
+ TestGroupResult {
+ "name": "AcmeLibTests.AcmeLibTests",
+ "tests": [
+ TestCaseResult {
+ "error": undefined,
+ "name": "test_always_pass",
+ "result": "success",
+ "time": 36.386333,
+ },
+ TestCaseResult {
+ "error": undefined,
+ "name": "test_always_skip",
+ "result": "success",
+ "time": 92.039167,
+ },
+ TestCaseResult {
+ "error": {
+ "details": undefined,
+ "line": undefined,
+ "message": undefined,
+ "path": undefined,
+ },
+ "name": "test_always_fail",
+ "result": "failed",
+ "time": 92.05175,
+ },
+ ],
+ },
+ ],
+ "name": "TestResults",
+ "totalTime": 220.47725000000003,
+ },
+ ],
+ "totalTime": undefined,
+}
+`;
diff --git a/__tests__/fixtures/external/jest/jest-react-component-test-results.xml b/__tests__/fixtures/external/jest/jest-react-component-test-results.xml
new file mode 100644
index 0000000..cdaa87f
--- /dev/null
+++ b/__tests__/fixtures/external/jest/jest-react-component-test-results.xml
@@ -0,0 +1,7 @@
+
+
+
+
+
+
+
diff --git a/__tests__/fixtures/swift-xunit.xml b/__tests__/fixtures/swift-xunit.xml
new file mode 100644
index 0000000..1046225
--- /dev/null
+++ b/__tests__/fixtures/swift-xunit.xml
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/__tests__/jest-junit.test.ts b/__tests__/jest-junit.test.ts
index b6533e6..d42405c 100644
--- a/__tests__/jest-junit.test.ts
+++ b/__tests__/jest-junit.test.ts
@@ -82,4 +82,27 @@ describe('jest-junit tests', () => {
fs.mkdirSync(path.dirname(outputPath), {recursive: true})
fs.writeFileSync(outputPath, report)
})
+
+ it('report from #235 testing react components named ', async () => {
+ const fixturePath = path.join(__dirname, 'fixtures', 'external', 'jest', 'jest-react-component-test-results.xml')
+ const trackedFilesPath = path.join(__dirname, 'fixtures', 'external', 'jest', 'files.txt')
+ const outputPath = path.join(__dirname, '__outputs__', 'jest-react-component-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
+ //workDir: '/home/dorny/dorny/jest/'
+ }
+
+ const parser = new JestJunitParser(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)
+ })
})
diff --git a/__tests__/swift-xunit.test.ts b/__tests__/swift-xunit.test.ts
new file mode 100644
index 0000000..474c868
--- /dev/null
+++ b/__tests__/swift-xunit.test.ts
@@ -0,0 +1,30 @@
+import * as fs from 'fs'
+import * as path from 'path'
+
+import {SwiftXunitParser} from '../src/parsers/swift-xunit/swift-xunit-parser'
+import {ParseOptions} from '../src/test-parser'
+import {getReport} from '../src/report/get-report'
+import {normalizeFilePath} from '../src/utils/path-utils'
+
+describe('swift-xunit tests', () => {
+ it('report from swift test results matches snapshot', async () => {
+ const fixturePath = path.join(__dirname, 'fixtures', 'swift-xunit.xml')
+ const outputPath = path.join(__dirname, '__outputs__', 'swift-xunit.md')
+ const filePath = normalizeFilePath(path.relative(__dirname, fixturePath))
+ const fileContent = fs.readFileSync(fixturePath, {encoding: 'utf8'})
+
+ const trackedFiles = ['Package.swift', 'Sources/AcmeLib/AcmeLib.swift', 'Tests/AcmeLibTests/AcmeLibTests.swift']
+ const opts: ParseOptions = {
+ parseErrors: true,
+ trackedFiles
+ }
+
+ const parser = new SwiftXunitParser(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)
+ })
+})
diff --git a/action.yml b/action.yml
index ee0b64b..6f35ebf 100644
--- a/action.yml
+++ b/action.yml
@@ -31,6 +31,7 @@ inputs:
- java-junit
- jest-junit
- mocha-json
+ - swift-xunit
required: true
list-suites:
description: |
@@ -94,7 +95,7 @@ outputs:
url_html:
description: Check run URL HTML
runs:
- using: 'node16'
+ using: 'node20'
main: 'dist/index.js'
branding:
color: blue
diff --git a/dist/index.js b/dist/index.js
index 6246d8d..47a1b8d 100644
--- a/dist/index.js
+++ b/dist/index.js
@@ -265,9 +265,9 @@ const dotnet_trx_parser_1 = __nccwpck_require__(2664);
const java_junit_parser_1 = __nccwpck_require__(676);
const jest_junit_parser_1 = __nccwpck_require__(1113);
const mocha_json_parser_1 = __nccwpck_require__(6043);
+const swift_xunit_parser_1 = __nccwpck_require__(5366);
const path_utils_1 = __nccwpck_require__(4070);
const github_utils_1 = __nccwpck_require__(3522);
-const markdown_utils_1 = __nccwpck_require__(6482);
function main() {
return __awaiter(this, void 0, void 0, function* () {
try {
@@ -402,10 +402,13 @@ class TestReporter {
const annotations = (0, get_annotations_1.getAnnotations)(results, this.maxAnnotations);
const isFailed = this.failOnError && results.some(tr => tr.result === 'failed');
const conclusion = isFailed ? 'failure' : 'success';
- const icon = isFailed ? markdown_utils_1.Icon.fail : markdown_utils_1.Icon.success;
+ const passed = results.reduce((sum, tr) => sum + tr.passed, 0);
+ const failed = results.reduce((sum, tr) => sum + tr.failed, 0);
+ const skipped = results.reduce((sum, tr) => sum + tr.skipped, 0);
+ const shortSummary = `${passed} passed, ${failed} failed and ${skipped} skipped `;
core.info(`Updating check run conclusion (${conclusion}) and output`);
const resp = yield this.octokit.rest.checks.update(Object.assign({ check_run_id: createResp.data.id, conclusion, status: 'completed', output: {
- title: `${name} ${icon}`,
+ title: shortSummary,
summary,
annotations
} }, github.context.repo));
@@ -431,6 +434,8 @@ class TestReporter {
return new jest_junit_parser_1.JestJunitParser(options);
case 'mocha-json':
return new mocha_json_parser_1.MochaJsonParser(options);
+ case 'swift-xunit':
+ return new swift_xunit_parser_1.SwiftXunitParser(options);
default:
throw new Error(`Input variable 'reporter' is set to invalid value '${reporter}'`);
}
@@ -1209,7 +1214,7 @@ class JestJunitParser {
const suites = junit.testsuites.testsuite === undefined
? []
: junit.testsuites.testsuite.map(ts => {
- const name = ts.$.name.trim();
+ const name = this.escapeCharacters(ts.$.name.trim());
const time = parseFloat(ts.$.time) * 1000;
const sr = new test_results_1.TestSuiteResult(name, this.getGroups(ts), time);
return sr;
@@ -1278,6 +1283,9 @@ class JestJunitParser {
var _a, _b;
return ((_b = (_a = this.options.workDir) !== null && _a !== void 0 ? _a : this.assumedWorkDir) !== null && _b !== void 0 ? _b : (this.assumedWorkDir = (0, path_utils_1.getBasePath)(path, this.options.trackedFiles)));
}
+ escapeCharacters(s) {
+ return s.replace(/([<>])/g, '\\$1');
+ }
}
exports.JestJunitParser = JestJunitParser;
@@ -1395,6 +1403,25 @@ class MochaJsonParser {
exports.MochaJsonParser = MochaJsonParser;
+/***/ }),
+
+/***/ 5366:
+/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => {
+
+"use strict";
+
+Object.defineProperty(exports, "__esModule", ({ value: true }));
+exports.SwiftXunitParser = void 0;
+const java_junit_parser_1 = __nccwpck_require__(676);
+class SwiftXunitParser extends java_junit_parser_1.JavaJunitParser {
+ constructor(options) {
+ super(options);
+ this.options = options;
+ }
+}
+exports.SwiftXunitParser = SwiftXunitParser;
+
+
/***/ }),
/***/ 5867:
@@ -2092,10 +2119,10 @@ var Align;
Align["Center"] = ":---:";
Align["Right"] = "---:";
Align["None"] = "---";
-})(Align = exports.Align || (exports.Align = {}));
+})(Align || (exports.Align = Align = {}));
exports.Icon = {
- skip: '⚪',
- success: '✅',
+ skip: '⚪', // ':white_circle:'
+ success: '✅', // ':white_check_mark:'
fail: '❌' // ':x:'
};
function link(title, address) {
@@ -4022,8 +4049,8 @@ class Context {
var _a, _b, _c;
this.payload = {};
if (process.env.GITHUB_EVENT_PATH) {
- if (fs_1.existsSync(process.env.GITHUB_EVENT_PATH)) {
- this.payload = JSON.parse(fs_1.readFileSync(process.env.GITHUB_EVENT_PATH, { encoding: 'utf8' }));
+ if ((0, fs_1.existsSync)(process.env.GITHUB_EVENT_PATH)) {
+ this.payload = JSON.parse((0, fs_1.readFileSync)(process.env.GITHUB_EVENT_PATH, { encoding: 'utf8' }));
}
else {
const path = process.env.GITHUB_EVENT_PATH;
@@ -4041,7 +4068,8 @@ class Context {
this.runId = parseInt(process.env.GITHUB_RUN_ID, 10);
this.apiUrl = (_a = process.env.GITHUB_API_URL) !== null && _a !== void 0 ? _a : `https://api.github.com`;
this.serverUrl = (_b = process.env.GITHUB_SERVER_URL) !== null && _b !== void 0 ? _b : `https://github.com`;
- this.graphqlUrl = (_c = process.env.GITHUB_GRAPHQL_URL) !== null && _c !== void 0 ? _c : `https://api.github.com/graphql`;
+ this.graphqlUrl =
+ (_c = process.env.GITHUB_GRAPHQL_URL) !== null && _c !== void 0 ? _c : `https://api.github.com/graphql`;
}
get issue() {
const payload = this.payload;
@@ -4073,7 +4101,11 @@ exports.Context = Context;
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
@@ -4086,7 +4118,7 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
- if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
__setModuleDefault(result, mod);
return result;
};
@@ -4103,7 +4135,7 @@ exports.context = new Context.Context();
*/
function getOctokit(token, options, ...additionalPlugins) {
const GitHubWithPlugins = utils_1.GitHub.plugin(...additionalPlugins);
- return new GitHubWithPlugins(utils_1.getOctokitOptions(token, options));
+ return new GitHubWithPlugins((0, utils_1.getOctokitOptions)(token, options));
}
exports.getOctokit = getOctokit;
//# sourceMappingURL=github.js.map
@@ -4117,7 +4149,11 @@ exports.getOctokit = getOctokit;
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
@@ -4130,13 +4166,23 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
- if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
__setModuleDefault(result, mod);
return result;
};
+var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
+ return new (P || (P = Promise))(function (resolve, reject) {
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
+ });
+};
Object.defineProperty(exports, "__esModule", ({ value: true }));
-exports.getApiBaseUrl = exports.getProxyAgent = exports.getAuthString = void 0;
+exports.getApiBaseUrl = exports.getProxyFetch = exports.getProxyAgentDispatcher = exports.getProxyAgent = exports.getAuthString = void 0;
const httpClient = __importStar(__nccwpck_require__(6255));
+const undici_1 = __nccwpck_require__(1773);
function getAuthString(token, options) {
if (!token && !options.auth) {
throw new Error('Parameter token or opts.auth is required');
@@ -4152,6 +4198,19 @@ function getProxyAgent(destinationUrl) {
return hc.getAgent(destinationUrl);
}
exports.getProxyAgent = getProxyAgent;
+function getProxyAgentDispatcher(destinationUrl) {
+ const hc = new httpClient.HttpClient();
+ return hc.getAgentDispatcher(destinationUrl);
+}
+exports.getProxyAgentDispatcher = getProxyAgentDispatcher;
+function getProxyFetch(destinationUrl) {
+ const httpDispatcher = getProxyAgentDispatcher(destinationUrl);
+ const proxyFetch = (url, opts) => __awaiter(this, void 0, void 0, function* () {
+ return (0, undici_1.fetch)(url, Object.assign(Object.assign({}, opts), { dispatcher: httpDispatcher }));
+ });
+ return proxyFetch;
+}
+exports.getProxyFetch = getProxyFetch;
function getApiBaseUrl() {
return process.env['GITHUB_API_URL'] || 'https://api.github.com';
}
@@ -4167,7 +4226,11 @@ exports.getApiBaseUrl = getApiBaseUrl;
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
@@ -4180,7 +4243,7 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
- if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
__setModuleDefault(result, mod);
return result;
};
@@ -4197,7 +4260,8 @@ const baseUrl = Utils.getApiBaseUrl();
exports.defaults = {
baseUrl,
request: {
- agent: Utils.getProxyAgent(baseUrl)
+ agent: Utils.getProxyAgent(baseUrl),
+ fetch: Utils.getProxyFetch(baseUrl)
}
};
exports.GitHub = core_1.Octokit.plugin(plugin_rest_endpoint_methods_1.restEndpointMethods, plugin_paginate_rest_1.paginateRest).defaults(exports.defaults);
@@ -4317,7 +4381,11 @@ exports.PersonalAccessTokenCredentialHandler = PersonalAccessTokenCredentialHand
/* eslint-disable @typescript-eslint/no-explicit-any */
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
@@ -4330,7 +4398,7 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
- if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
__setModuleDefault(result, mod);
return result;
};
@@ -4349,6 +4417,7 @@ const http = __importStar(__nccwpck_require__(3685));
const https = __importStar(__nccwpck_require__(5687));
const pm = __importStar(__nccwpck_require__(9835));
const tunnel = __importStar(__nccwpck_require__(4294));
+const undici_1 = __nccwpck_require__(1773);
var HttpCodes;
(function (HttpCodes) {
HttpCodes[HttpCodes["OK"] = 200] = "OK";
@@ -4378,16 +4447,16 @@ var HttpCodes;
HttpCodes[HttpCodes["BadGateway"] = 502] = "BadGateway";
HttpCodes[HttpCodes["ServiceUnavailable"] = 503] = "ServiceUnavailable";
HttpCodes[HttpCodes["GatewayTimeout"] = 504] = "GatewayTimeout";
-})(HttpCodes = exports.HttpCodes || (exports.HttpCodes = {}));
+})(HttpCodes || (exports.HttpCodes = HttpCodes = {}));
var Headers;
(function (Headers) {
Headers["Accept"] = "accept";
Headers["ContentType"] = "content-type";
-})(Headers = exports.Headers || (exports.Headers = {}));
+})(Headers || (exports.Headers = Headers = {}));
var MediaTypes;
(function (MediaTypes) {
MediaTypes["ApplicationJson"] = "application/json";
-})(MediaTypes = exports.MediaTypes || (exports.MediaTypes = {}));
+})(MediaTypes || (exports.MediaTypes = MediaTypes = {}));
/**
* Returns the proxy URL, depending upon the supplied url and proxy environment variables.
* @param serverUrl The server URL where the request will be sent. For example, https://api.github.com
@@ -4756,6 +4825,15 @@ class HttpClient {
const parsedUrl = new URL(serverUrl);
return this._getAgent(parsedUrl);
}
+ getAgentDispatcher(serverUrl) {
+ const parsedUrl = new URL(serverUrl);
+ const proxyUrl = pm.getProxyUrl(parsedUrl);
+ const useProxy = proxyUrl && proxyUrl.hostname;
+ if (!useProxy) {
+ return;
+ }
+ return this._getProxyAgentDispatcher(parsedUrl, proxyUrl);
+ }
_prepareRequest(method, requestUrl, headers) {
const info = {};
info.parsedUrl = requestUrl;
@@ -4855,6 +4933,30 @@ class HttpClient {
}
return agent;
}
+ _getProxyAgentDispatcher(parsedUrl, proxyUrl) {
+ let proxyAgent;
+ if (this._keepAlive) {
+ proxyAgent = this._proxyAgentDispatcher;
+ }
+ // if agent is already assigned use that agent.
+ if (proxyAgent) {
+ return proxyAgent;
+ }
+ const usingSsl = parsedUrl.protocol === 'https:';
+ proxyAgent = new undici_1.ProxyAgent(Object.assign({ uri: proxyUrl.href, pipelining: !this._keepAlive ? 0 : 1 }, ((proxyUrl.username || proxyUrl.password) && {
+ token: `${proxyUrl.username}:${proxyUrl.password}`
+ })));
+ this._proxyAgentDispatcher = proxyAgent;
+ if (usingSsl && this._ignoreSslError) {
+ // we don't want to set NODE_TLS_REJECT_UNAUTHORIZED=0 since that will affect request for entire process
+ // http.RequestOptions doesn't expose a way to modify RequestOptions.agent.options
+ // we have to cast it to any and change it directly
+ proxyAgent.options = Object.assign(proxyAgent.options.requestTls || {}, {
+ rejectUnauthorized: false
+ });
+ }
+ return proxyAgent;
+ }
_performExponentialBackoff(retryNumber) {
return __awaiter(this, void 0, void 0, function* () {
retryNumber = Math.min(ExponentialBackoffCeiling, retryNumber);
@@ -6439,16 +6541,39 @@ exports["default"] = Settings;
/***/ }),
/***/ 334:
-/***/ ((__unused_webpack_module, exports) => {
+/***/ ((module) => {
"use strict";
+var __defProp = Object.defineProperty;
+var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
+var __getOwnPropNames = Object.getOwnPropertyNames;
+var __hasOwnProp = Object.prototype.hasOwnProperty;
+var __export = (target, all) => {
+ for (var name in all)
+ __defProp(target, name, { get: all[name], enumerable: true });
+};
+var __copyProps = (to, from, except, desc) => {
+ if (from && typeof from === "object" || typeof from === "function") {
+ for (let key of __getOwnPropNames(from))
+ if (!__hasOwnProp.call(to, key) && key !== except)
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
+ }
+ return to;
+};
+var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
-Object.defineProperty(exports, "__esModule", ({ value: true }));
+// pkg/dist-src/index.js
+var dist_src_exports = {};
+__export(dist_src_exports, {
+ createTokenAuth: () => createTokenAuth
+});
+module.exports = __toCommonJS(dist_src_exports);
-const REGEX_IS_INSTALLATION_LEGACY = /^v1\./;
-const REGEX_IS_INSTALLATION = /^ghs_/;
-const REGEX_IS_USER_TO_SERVER = /^ghu_/;
+// pkg/dist-src/auth.js
+var REGEX_IS_INSTALLATION_LEGACY = /^v1\./;
+var REGEX_IS_INSTALLATION = /^ghs_/;
+var REGEX_IS_USER_TO_SERVER = /^ghu_/;
async function auth(token) {
const isApp = token.split(/\./).length === 3;
const isInstallation = REGEX_IS_INSTALLATION_LEGACY.test(token) || REGEX_IS_INSTALLATION.test(token);
@@ -6456,109 +6581,144 @@ async function auth(token) {
const tokenType = isApp ? "app" : isInstallation ? "installation" : isUserToServer ? "user-to-server" : "oauth";
return {
type: "token",
- token: token,
+ token,
tokenType
};
}
-/**
- * Prefix token for usage in the Authorization header
- *
- * @param token OAuth token or JSON Web Token
- */
+// pkg/dist-src/with-authorization-prefix.js
function withAuthorizationPrefix(token) {
if (token.split(/\./).length === 3) {
return `bearer ${token}`;
}
-
return `token ${token}`;
}
+// pkg/dist-src/hook.js
async function hook(token, request, route, parameters) {
- const endpoint = request.endpoint.merge(route, parameters);
+ const endpoint = request.endpoint.merge(
+ route,
+ parameters
+ );
endpoint.headers.authorization = withAuthorizationPrefix(token);
return request(endpoint);
}
-const createTokenAuth = function createTokenAuth(token) {
+// pkg/dist-src/index.js
+var createTokenAuth = function createTokenAuth2(token) {
if (!token) {
throw new Error("[@octokit/auth-token] No token passed to createTokenAuth");
}
-
if (typeof token !== "string") {
- throw new Error("[@octokit/auth-token] Token passed to createTokenAuth is not a string");
+ throw new Error(
+ "[@octokit/auth-token] Token passed to createTokenAuth is not a string"
+ );
}
-
token = token.replace(/^(token|bearer) +/i, "");
return Object.assign(auth.bind(null, token), {
hook: hook.bind(null, token)
});
};
-
-exports.createTokenAuth = createTokenAuth;
-//# sourceMappingURL=index.js.map
+// Annotate the CommonJS export names for ESM import in node:
+0 && (0);
/***/ }),
/***/ 6762:
-/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => {
+/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
"use strict";
-
-Object.defineProperty(exports, "__esModule", ({ value: true }));
-
-var universalUserAgent = __nccwpck_require__(5030);
-var beforeAfterHook = __nccwpck_require__(3682);
-var request = __nccwpck_require__(6234);
-var graphql = __nccwpck_require__(8467);
-var authToken = __nccwpck_require__(334);
-
-function _objectWithoutPropertiesLoose(source, excluded) {
- if (source == null) return {};
- var target = {};
- var sourceKeys = Object.keys(source);
- var key, i;
-
- for (i = 0; i < sourceKeys.length; i++) {
- key = sourceKeys[i];
- if (excluded.indexOf(key) >= 0) continue;
- target[key] = source[key];
+var __defProp = Object.defineProperty;
+var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
+var __getOwnPropNames = Object.getOwnPropertyNames;
+var __hasOwnProp = Object.prototype.hasOwnProperty;
+var __export = (target, all) => {
+ for (var name in all)
+ __defProp(target, name, { get: all[name], enumerable: true });
+};
+var __copyProps = (to, from, except, desc) => {
+ if (from && typeof from === "object" || typeof from === "function") {
+ for (let key of __getOwnPropNames(from))
+ if (!__hasOwnProp.call(to, key) && key !== except)
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
}
+ return to;
+};
+var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
- return target;
-}
-
-function _objectWithoutProperties(source, excluded) {
- if (source == null) return {};
-
- var target = _objectWithoutPropertiesLoose(source, excluded);
-
- var key, i;
-
- if (Object.getOwnPropertySymbols) {
- var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
-
- for (i = 0; i < sourceSymbolKeys.length; i++) {
- key = sourceSymbolKeys[i];
- if (excluded.indexOf(key) >= 0) continue;
- if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
- target[key] = source[key];
- }
+// pkg/dist-src/index.js
+var dist_src_exports = {};
+__export(dist_src_exports, {
+ Octokit: () => Octokit
+});
+module.exports = __toCommonJS(dist_src_exports);
+var import_universal_user_agent = __nccwpck_require__(5030);
+var import_before_after_hook = __nccwpck_require__(3682);
+var import_request = __nccwpck_require__(6234);
+var import_graphql = __nccwpck_require__(8467);
+var import_auth_token = __nccwpck_require__(334);
+
+// pkg/dist-src/version.js
+var VERSION = "5.0.2";
+
+// pkg/dist-src/index.js
+var noop = () => {
+};
+var consoleWarn = console.warn.bind(console);
+var consoleError = console.error.bind(console);
+var userAgentTrail = `octokit-core.js/${VERSION} ${(0, import_universal_user_agent.getUserAgent)()}`;
+var Octokit = class {
+ static {
+ this.VERSION = VERSION;
+ }
+ static defaults(defaults) {
+ const OctokitWithDefaults = class extends this {
+ constructor(...args) {
+ const options = args[0] || {};
+ if (typeof defaults === "function") {
+ super(defaults(options));
+ return;
+ }
+ super(
+ Object.assign(
+ {},
+ defaults,
+ options,
+ options.userAgent && defaults.userAgent ? {
+ userAgent: `${options.userAgent} ${defaults.userAgent}`
+ } : null
+ )
+ );
+ }
+ };
+ return OctokitWithDefaults;
+ }
+ static {
+ this.plugins = [];
+ }
+ /**
+ * Attach a plugin (or many) to your Octokit instance.
+ *
+ * @example
+ * const API = Octokit.plugin(plugin1, plugin2, plugin3, ...)
+ */
+ static plugin(...newPlugins) {
+ const currentPlugins = this.plugins;
+ const NewOctokit = class extends this {
+ static {
+ this.plugins = currentPlugins.concat(
+ newPlugins.filter((plugin) => !currentPlugins.includes(plugin))
+ );
+ }
+ };
+ return NewOctokit;
}
-
- return target;
-}
-
-const VERSION = "3.6.0";
-
-const _excluded = ["authStrategy"];
-class Octokit {
constructor(options = {}) {
- const hook = new beforeAfterHook.Collection();
+ const hook = new import_before_after_hook.Collection();
const requestDefaults = {
- baseUrl: request.request.endpoint.DEFAULTS.baseUrl,
+ baseUrl: import_request.request.endpoint.DEFAULTS.baseUrl,
headers: {},
request: Object.assign({}, options.request, {
// @ts-ignore internal usage only, no need to type
@@ -6568,321 +6728,283 @@ class Octokit {
previews: [],
format: ""
}
- }; // prepend default user agent with `options.userAgent` if set
-
- requestDefaults.headers["user-agent"] = [options.userAgent, `octokit-core.js/${VERSION} ${universalUserAgent.getUserAgent()}`].filter(Boolean).join(" ");
-
+ };
+ requestDefaults.headers["user-agent"] = options.userAgent ? `${options.userAgent} ${userAgentTrail}` : userAgentTrail;
if (options.baseUrl) {
requestDefaults.baseUrl = options.baseUrl;
}
-
if (options.previews) {
requestDefaults.mediaType.previews = options.previews;
}
-
if (options.timeZone) {
requestDefaults.headers["time-zone"] = options.timeZone;
}
-
- this.request = request.request.defaults(requestDefaults);
- this.graphql = graphql.withCustomRequest(this.request).defaults(requestDefaults);
- this.log = Object.assign({
- debug: () => {},
- info: () => {},
- warn: console.warn.bind(console),
- error: console.error.bind(console)
- }, options.log);
- this.hook = hook; // (1) If neither `options.authStrategy` nor `options.auth` are set, the `octokit` instance
- // is unauthenticated. The `this.auth()` method is a no-op and no request hook is registered.
- // (2) If only `options.auth` is set, use the default token authentication strategy.
- // (3) If `options.authStrategy` is set then use it and pass in `options.auth`. Always pass own request as many strategies accept a custom request instance.
- // TODO: type `options.auth` based on `options.authStrategy`.
-
+ this.request = import_request.request.defaults(requestDefaults);
+ this.graphql = (0, import_graphql.withCustomRequest)(this.request).defaults(requestDefaults);
+ this.log = Object.assign(
+ {
+ debug: noop,
+ info: noop,
+ warn: consoleWarn,
+ error: consoleError
+ },
+ options.log
+ );
+ this.hook = hook;
if (!options.authStrategy) {
if (!options.auth) {
- // (1)
this.auth = async () => ({
type: "unauthenticated"
});
} else {
- // (2)
- const auth = authToken.createTokenAuth(options.auth); // @ts-ignore ¯\_(ツ)_/¯
-
+ const auth = (0, import_auth_token.createTokenAuth)(options.auth);
hook.wrap("request", auth.hook);
this.auth = auth;
}
} else {
- const {
- authStrategy
- } = options,
- otherOptions = _objectWithoutProperties(options, _excluded);
-
- const auth = authStrategy(Object.assign({
- request: this.request,
- log: this.log,
- // we pass the current octokit instance as well as its constructor options
- // to allow for authentication strategies that return a new octokit instance
- // that shares the same internal state as the current one. The original
- // requirement for this was the "event-octokit" authentication strategy
- // of https://github.com/probot/octokit-auth-probot.
- octokit: this,
- octokitOptions: otherOptions
- }, options.auth)); // @ts-ignore ¯\_(ツ)_/¯
-
+ const { authStrategy, ...otherOptions } = options;
+ const auth = authStrategy(
+ Object.assign(
+ {
+ request: this.request,
+ log: this.log,
+ // we pass the current octokit instance as well as its constructor options
+ // to allow for authentication strategies that return a new octokit instance
+ // that shares the same internal state as the current one. The original
+ // requirement for this was the "event-octokit" authentication strategy
+ // of https://github.com/probot/octokit-auth-probot.
+ octokit: this,
+ octokitOptions: otherOptions
+ },
+ options.auth
+ )
+ );
hook.wrap("request", auth.hook);
this.auth = auth;
- } // apply plugins
- // https://stackoverflow.com/a/16345172
-
-
+ }
const classConstructor = this.constructor;
- classConstructor.plugins.forEach(plugin => {
- Object.assign(this, plugin(this, options));
- });
- }
-
- static defaults(defaults) {
- const OctokitWithDefaults = class extends this {
- constructor(...args) {
- const options = args[0] || {};
-
- if (typeof defaults === "function") {
- super(defaults(options));
- return;
- }
-
- super(Object.assign({}, defaults, options, options.userAgent && defaults.userAgent ? {
- userAgent: `${options.userAgent} ${defaults.userAgent}`
- } : null));
- }
-
- };
- return OctokitWithDefaults;
- }
- /**
- * Attach a plugin (or many) to your Octokit instance.
- *
- * @example
- * const API = Octokit.plugin(plugin1, plugin2, plugin3, ...)
- */
-
-
- static plugin(...newPlugins) {
- var _a;
-
- const currentPlugins = this.plugins;
- const NewOctokit = (_a = class extends this {}, _a.plugins = currentPlugins.concat(newPlugins.filter(plugin => !currentPlugins.includes(plugin))), _a);
- return NewOctokit;
+ for (let i = 0; i < classConstructor.plugins.length; ++i) {
+ Object.assign(this, classConstructor.plugins[i](this, options));
+ }
}
-
-}
-Octokit.VERSION = VERSION;
-Octokit.plugins = [];
-
-exports.Octokit = Octokit;
-//# sourceMappingURL=index.js.map
+};
+// Annotate the CommonJS export names for ESM import in node:
+0 && (0);
/***/ }),
/***/ 9440:
-/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => {
+/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
"use strict";
+var __defProp = Object.defineProperty;
+var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
+var __getOwnPropNames = Object.getOwnPropertyNames;
+var __hasOwnProp = Object.prototype.hasOwnProperty;
+var __export = (target, all) => {
+ for (var name in all)
+ __defProp(target, name, { get: all[name], enumerable: true });
+};
+var __copyProps = (to, from, except, desc) => {
+ if (from && typeof from === "object" || typeof from === "function") {
+ for (let key of __getOwnPropNames(from))
+ if (!__hasOwnProp.call(to, key) && key !== except)
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
+ }
+ return to;
+};
+var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
-Object.defineProperty(exports, "__esModule", ({ value: true }));
+// pkg/dist-src/index.js
+var dist_src_exports = {};
+__export(dist_src_exports, {
+ endpoint: () => endpoint
+});
+module.exports = __toCommonJS(dist_src_exports);
+
+// pkg/dist-src/defaults.js
+var import_universal_user_agent = __nccwpck_require__(5030);
-var isPlainObject = __nccwpck_require__(3287);
-var universalUserAgent = __nccwpck_require__(5030);
+// pkg/dist-src/version.js
+var VERSION = "9.0.4";
+// pkg/dist-src/defaults.js
+var userAgent = `octokit-endpoint.js/${VERSION} ${(0, import_universal_user_agent.getUserAgent)()}`;
+var DEFAULTS = {
+ method: "GET",
+ baseUrl: "https://api.github.com",
+ headers: {
+ accept: "application/vnd.github.v3+json",
+ "user-agent": userAgent
+ },
+ mediaType: {
+ format: ""
+ }
+};
+
+// pkg/dist-src/util/lowercase-keys.js
function lowercaseKeys(object) {
if (!object) {
return {};
}
-
return Object.keys(object).reduce((newObj, key) => {
newObj[key.toLowerCase()] = object[key];
return newObj;
}, {});
}
+// pkg/dist-src/util/is-plain-object.js
+function isPlainObject(value) {
+ if (typeof value !== "object" || value === null)
+ return false;
+ if (Object.prototype.toString.call(value) !== "[object Object]")
+ return false;
+ const proto = Object.getPrototypeOf(value);
+ if (proto === null)
+ return true;
+ const Ctor = Object.prototype.hasOwnProperty.call(proto, "constructor") && proto.constructor;
+ return typeof Ctor === "function" && Ctor instanceof Ctor && Function.prototype.call(Ctor) === Function.prototype.call(value);
+}
+
+// pkg/dist-src/util/merge-deep.js
function mergeDeep(defaults, options) {
const result = Object.assign({}, defaults);
- Object.keys(options).forEach(key => {
- if (isPlainObject.isPlainObject(options[key])) {
- if (!(key in defaults)) Object.assign(result, {
- [key]: options[key]
- });else result[key] = mergeDeep(defaults[key], options[key]);
+ Object.keys(options).forEach((key) => {
+ if (isPlainObject(options[key])) {
+ if (!(key in defaults))
+ Object.assign(result, { [key]: options[key] });
+ else
+ result[key] = mergeDeep(defaults[key], options[key]);
} else {
- Object.assign(result, {
- [key]: options[key]
- });
+ Object.assign(result, { [key]: options[key] });
}
});
return result;
}
+// pkg/dist-src/util/remove-undefined-properties.js
function removeUndefinedProperties(obj) {
for (const key in obj) {
- if (obj[key] === undefined) {
+ if (obj[key] === void 0) {
delete obj[key];
}
}
-
return obj;
}
+// pkg/dist-src/merge.js
function merge(defaults, route, options) {
if (typeof route === "string") {
let [method, url] = route.split(" ");
- options = Object.assign(url ? {
- method,
- url
- } : {
- url: method
- }, options);
+ options = Object.assign(url ? { method, url } : { url: method }, options);
} else {
options = Object.assign({}, route);
- } // lowercase header names before merging with defaults to avoid duplicates
-
-
- options.headers = lowercaseKeys(options.headers); // remove properties with undefined values before merging
-
+ }
+ options.headers = lowercaseKeys(options.headers);
removeUndefinedProperties(options);
removeUndefinedProperties(options.headers);
- const mergedOptions = mergeDeep(defaults || {}, options); // mediaType.previews arrays are merged, instead of overwritten
-
- if (defaults && defaults.mediaType.previews.length) {
- mergedOptions.mediaType.previews = defaults.mediaType.previews.filter(preview => !mergedOptions.mediaType.previews.includes(preview)).concat(mergedOptions.mediaType.previews);
+ const mergedOptions = mergeDeep(defaults || {}, options);
+ if (options.url === "/graphql") {
+ if (defaults && defaults.mediaType.previews?.length) {
+ mergedOptions.mediaType.previews = defaults.mediaType.previews.filter(
+ (preview) => !mergedOptions.mediaType.previews.includes(preview)
+ ).concat(mergedOptions.mediaType.previews);
+ }
+ mergedOptions.mediaType.previews = (mergedOptions.mediaType.previews || []).map((preview) => preview.replace(/-preview/, ""));
}
-
- mergedOptions.mediaType.previews = mergedOptions.mediaType.previews.map(preview => preview.replace(/-preview/, ""));
return mergedOptions;
}
+// pkg/dist-src/util/add-query-parameters.js
function addQueryParameters(url, parameters) {
const separator = /\?/.test(url) ? "&" : "?";
const names = Object.keys(parameters);
-
if (names.length === 0) {
return url;
}
-
- return url + separator + names.map(name => {
+ return url + separator + names.map((name) => {
if (name === "q") {
return "q=" + parameters.q.split("+").map(encodeURIComponent).join("+");
}
-
return `${name}=${encodeURIComponent(parameters[name])}`;
}).join("&");
}
-const urlVariableRegex = /\{[^}]+\}/g;
-
+// pkg/dist-src/util/extract-url-variable-names.js
+var urlVariableRegex = /\{[^}]+\}/g;
function removeNonChars(variableName) {
return variableName.replace(/^\W+|\W+$/g, "").split(/,/);
}
-
function extractUrlVariableNames(url) {
const matches = url.match(urlVariableRegex);
-
if (!matches) {
return [];
}
-
return matches.map(removeNonChars).reduce((a, b) => a.concat(b), []);
}
+// pkg/dist-src/util/omit.js
function omit(object, keysToOmit) {
- return Object.keys(object).filter(option => !keysToOmit.includes(option)).reduce((obj, key) => {
- obj[key] = object[key];
- return obj;
- }, {});
+ const result = { __proto__: null };
+ for (const key of Object.keys(object)) {
+ if (keysToOmit.indexOf(key) === -1) {
+ result[key] = object[key];
+ }
+ }
+ return result;
}
-// Based on https://github.com/bramstein/url-template, licensed under BSD
-// TODO: create separate package.
-//
-// Copyright (c) 2012-2014, Bram Stein
-// All rights reserved.
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions
-// are met:
-// 1. Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-// 2. Redistributions in binary form must reproduce the above copyright
-// notice, this list of conditions and the following disclaimer in the
-// documentation and/or other materials provided with the distribution.
-// 3. The name of the author may not be used to endorse or promote products
-// derived from this software without specific prior written permission.
-// THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-// WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-// MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-// EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
-// INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
-// BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
-// OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-// NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
-// EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-/* istanbul ignore file */
+// pkg/dist-src/util/url-template.js
function encodeReserved(str) {
- return str.split(/(%[0-9A-Fa-f]{2})/g).map(function (part) {
+ return str.split(/(%[0-9A-Fa-f]{2})/g).map(function(part) {
if (!/%[0-9A-Fa-f]/.test(part)) {
part = encodeURI(part).replace(/%5B/g, "[").replace(/%5D/g, "]");
}
-
return part;
}).join("");
}
-
function encodeUnreserved(str) {
- return encodeURIComponent(str).replace(/[!'()*]/g, function (c) {
+ return encodeURIComponent(str).replace(/[!'()*]/g, function(c) {
return "%" + c.charCodeAt(0).toString(16).toUpperCase();
});
}
-
function encodeValue(operator, value, key) {
value = operator === "+" || operator === "#" ? encodeReserved(value) : encodeUnreserved(value);
-
if (key) {
return encodeUnreserved(key) + "=" + value;
} else {
return value;
}
}
-
function isDefined(value) {
- return value !== undefined && value !== null;
+ return value !== void 0 && value !== null;
}
-
function isKeyOperator(operator) {
return operator === ";" || operator === "&" || operator === "?";
}
-
function getValues(context, operator, key, modifier) {
- var value = context[key],
- result = [];
-
+ var value = context[key], result = [];
if (isDefined(value) && value !== "") {
if (typeof value === "string" || typeof value === "number" || typeof value === "boolean") {
value = value.toString();
-
if (modifier && modifier !== "*") {
value = value.substring(0, parseInt(modifier, 10));
}
-
- result.push(encodeValue(operator, value, isKeyOperator(operator) ? key : ""));
+ result.push(
+ encodeValue(operator, value, isKeyOperator(operator) ? key : "")
+ );
} else {
if (modifier === "*") {
if (Array.isArray(value)) {
- value.filter(isDefined).forEach(function (value) {
- result.push(encodeValue(operator, value, isKeyOperator(operator) ? key : ""));
+ value.filter(isDefined).forEach(function(value2) {
+ result.push(
+ encodeValue(operator, value2, isKeyOperator(operator) ? key : "")
+ );
});
} else {
- Object.keys(value).forEach(function (k) {
+ Object.keys(value).forEach(function(k) {
if (isDefined(value[k])) {
result.push(encodeValue(operator, value[k], k));
}
@@ -6890,20 +7012,18 @@ function getValues(context, operator, key, modifier) {
}
} else {
const tmp = [];
-
if (Array.isArray(value)) {
- value.filter(isDefined).forEach(function (value) {
- tmp.push(encodeValue(operator, value));
+ value.filter(isDefined).forEach(function(value2) {
+ tmp.push(encodeValue(operator, value2));
});
} else {
- Object.keys(value).forEach(function (k) {
+ Object.keys(value).forEach(function(k) {
if (isDefined(value[k])) {
tmp.push(encodeUnreserved(k));
tmp.push(encodeValue(operator, value[k].toString()));
}
});
}
-
if (isKeyOperator(operator)) {
result.push(encodeUnreserved(key) + "=" + tmp.join(","));
} else if (tmp.length !== 0) {
@@ -6922,89 +7042,93 @@ function getValues(context, operator, key, modifier) {
result.push("");
}
}
-
return result;
}
-
function parseUrl(template) {
return {
expand: expand.bind(null, template)
};
}
-
function expand(template, context) {
var operators = ["+", "#", ".", "/", ";", "?", "&"];
- return template.replace(/\{([^\{\}]+)\}|([^\{\}]+)/g, function (_, expression, literal) {
- if (expression) {
- let operator = "";
- const values = [];
-
- if (operators.indexOf(expression.charAt(0)) !== -1) {
- operator = expression.charAt(0);
- expression = expression.substr(1);
- }
-
- expression.split(/,/g).forEach(function (variable) {
- var tmp = /([^:\*]*)(?::(\d+)|(\*))?/.exec(variable);
- values.push(getValues(context, operator, tmp[1], tmp[2] || tmp[3]));
- });
-
- if (operator && operator !== "+") {
- var separator = ",";
-
- if (operator === "?") {
- separator = "&";
- } else if (operator !== "#") {
- separator = operator;
+ template = template.replace(
+ /\{([^\{\}]+)\}|([^\{\}]+)/g,
+ function(_, expression, literal) {
+ if (expression) {
+ let operator = "";
+ const values = [];
+ if (operators.indexOf(expression.charAt(0)) !== -1) {
+ operator = expression.charAt(0);
+ expression = expression.substr(1);
+ }
+ expression.split(/,/g).forEach(function(variable) {
+ var tmp = /([^:\*]*)(?::(\d+)|(\*))?/.exec(variable);
+ values.push(getValues(context, operator, tmp[1], tmp[2] || tmp[3]));
+ });
+ if (operator && operator !== "+") {
+ var separator = ",";
+ if (operator === "?") {
+ separator = "&";
+ } else if (operator !== "#") {
+ separator = operator;
+ }
+ return (values.length !== 0 ? operator : "") + values.join(separator);
+ } else {
+ return values.join(",");
}
-
- return (values.length !== 0 ? operator : "") + values.join(separator);
} else {
- return values.join(",");
+ return encodeReserved(literal);
}
- } else {
- return encodeReserved(literal);
}
- });
+ );
+ if (template === "/") {
+ return template;
+ } else {
+ return template.replace(/\/$/, "");
+ }
}
+// pkg/dist-src/parse.js
function parse(options) {
- // https://fetch.spec.whatwg.org/#methods
- let method = options.method.toUpperCase(); // replace :varname with {varname} to make it RFC 6570 compatible
-
+ let method = options.method.toUpperCase();
let url = (options.url || "/").replace(/:([a-z]\w+)/g, "{$1}");
let headers = Object.assign({}, options.headers);
let body;
- let parameters = omit(options, ["method", "baseUrl", "url", "headers", "request", "mediaType"]); // extract variable names from URL to calculate remaining variables later
-
+ let parameters = omit(options, [
+ "method",
+ "baseUrl",
+ "url",
+ "headers",
+ "request",
+ "mediaType"
+ ]);
const urlVariableNames = extractUrlVariableNames(url);
url = parseUrl(url).expand(parameters);
-
if (!/^http/.test(url)) {
url = options.baseUrl + url;
}
-
- const omittedParameters = Object.keys(options).filter(option => urlVariableNames.includes(option)).concat("baseUrl");
+ const omittedParameters = Object.keys(options).filter((option) => urlVariableNames.includes(option)).concat("baseUrl");
const remainingParameters = omit(parameters, omittedParameters);
const isBinaryRequest = /application\/octet-stream/i.test(headers.accept);
-
if (!isBinaryRequest) {
if (options.mediaType.format) {
- // e.g. application/vnd.github.v3+json => application/vnd.github.v3.raw
- headers.accept = headers.accept.split(/,/).map(preview => preview.replace(/application\/vnd(\.\w+)(\.v3)?(\.\w+)?(\+json)?$/, `application/vnd$1$2.${options.mediaType.format}`)).join(",");
+ headers.accept = headers.accept.split(/,/).map(
+ (format) => format.replace(
+ /application\/vnd(\.\w+)(\.v3)?(\.\w+)?(\+json)?$/,
+ `application/vnd$1$2.${options.mediaType.format}`
+ )
+ ).join(",");
}
-
- if (options.mediaType.previews.length) {
- const previewsFromAcceptHeader = headers.accept.match(/[\w-]+(?=-preview)/g) || [];
- headers.accept = previewsFromAcceptHeader.concat(options.mediaType.previews).map(preview => {
- const format = options.mediaType.format ? `.${options.mediaType.format}` : "+json";
- return `application/vnd.github.${preview}-preview${format}`;
- }).join(",");
+ if (url.endsWith("/graphql")) {
+ if (options.mediaType.previews?.length) {
+ const previewsFromAcceptHeader = headers.accept.match(/[\w-]+(?=-preview)/g) || [];
+ headers.accept = previewsFromAcceptHeader.concat(options.mediaType.previews).map((preview) => {
+ const format = options.mediaType.format ? `.${options.mediaType.format}` : "+json";
+ return `application/vnd.github.${preview}-preview${format}`;
+ }).join(",");
+ }
}
- } // for GET/HEAD requests, set URL query parameters from remaining parameters
- // for PATCH/POST/PUT/DELETE requests, set request body from remaining parameters
-
-
+ }
if (["GET", "HEAD"].includes(method)) {
url = addQueryParameters(url, remainingParameters);
} else {
@@ -7013,183 +7137,189 @@ function parse(options) {
} else {
if (Object.keys(remainingParameters).length) {
body = remainingParameters;
- } else {
- headers["content-length"] = 0;
}
}
- } // default content-type for JSON if body is set
-
-
+ }
if (!headers["content-type"] && typeof body !== "undefined") {
headers["content-type"] = "application/json; charset=utf-8";
- } // GitHub expects 'content-length: 0' header for PUT/PATCH requests without body.
- // fetch does not allow to set `content-length` header, but we can set body to an empty string
-
-
+ }
if (["PATCH", "PUT"].includes(method) && typeof body === "undefined") {
body = "";
- } // Only return body/request keys if present
-
-
- return Object.assign({
- method,
- url,
- headers
- }, typeof body !== "undefined" ? {
- body
- } : null, options.request ? {
- request: options.request
- } : null);
+ }
+ return Object.assign(
+ { method, url, headers },
+ typeof body !== "undefined" ? { body } : null,
+ options.request ? { request: options.request } : null
+ );
}
+// pkg/dist-src/endpoint-with-defaults.js
function endpointWithDefaults(defaults, route, options) {
return parse(merge(defaults, route, options));
}
+// pkg/dist-src/with-defaults.js
function withDefaults(oldDefaults, newDefaults) {
- const DEFAULTS = merge(oldDefaults, newDefaults);
- const endpoint = endpointWithDefaults.bind(null, DEFAULTS);
- return Object.assign(endpoint, {
- DEFAULTS,
- defaults: withDefaults.bind(null, DEFAULTS),
- merge: merge.bind(null, DEFAULTS),
+ const DEFAULTS2 = merge(oldDefaults, newDefaults);
+ const endpoint2 = endpointWithDefaults.bind(null, DEFAULTS2);
+ return Object.assign(endpoint2, {
+ DEFAULTS: DEFAULTS2,
+ defaults: withDefaults.bind(null, DEFAULTS2),
+ merge: merge.bind(null, DEFAULTS2),
parse
});
}
-const VERSION = "6.0.12";
-
-const userAgent = `octokit-endpoint.js/${VERSION} ${universalUserAgent.getUserAgent()}`; // DEFAULTS has all properties set that EndpointOptions has, except url.
-// So we use RequestParameters and add method as additional required property.
-
-const DEFAULTS = {
- method: "GET",
- baseUrl: "https://api.github.com",
- headers: {
- accept: "application/vnd.github.v3+json",
- "user-agent": userAgent
- },
- mediaType: {
- format: "",
- previews: []
- }
-};
-
-const endpoint = withDefaults(null, DEFAULTS);
-
-exports.endpoint = endpoint;
-//# sourceMappingURL=index.js.map
+// pkg/dist-src/index.js
+var endpoint = withDefaults(null, DEFAULTS);
+// Annotate the CommonJS export names for ESM import in node:
+0 && (0);
/***/ }),
/***/ 8467:
-/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => {
+/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
"use strict";
+var __defProp = Object.defineProperty;
+var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
+var __getOwnPropNames = Object.getOwnPropertyNames;
+var __hasOwnProp = Object.prototype.hasOwnProperty;
+var __export = (target, all) => {
+ for (var name in all)
+ __defProp(target, name, { get: all[name], enumerable: true });
+};
+var __copyProps = (to, from, except, desc) => {
+ if (from && typeof from === "object" || typeof from === "function") {
+ for (let key of __getOwnPropNames(from))
+ if (!__hasOwnProp.call(to, key) && key !== except)
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
+ }
+ return to;
+};
+var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
+
+// pkg/dist-src/index.js
+var dist_src_exports = {};
+__export(dist_src_exports, {
+ GraphqlResponseError: () => GraphqlResponseError,
+ graphql: () => graphql2,
+ withCustomRequest: () => withCustomRequest
+});
+module.exports = __toCommonJS(dist_src_exports);
+var import_request3 = __nccwpck_require__(6234);
+var import_universal_user_agent = __nccwpck_require__(5030);
-Object.defineProperty(exports, "__esModule", ({ value: true }));
+// pkg/dist-src/version.js
+var VERSION = "7.0.2";
-var request = __nccwpck_require__(6234);
-var universalUserAgent = __nccwpck_require__(5030);
+// pkg/dist-src/with-defaults.js
+var import_request2 = __nccwpck_require__(6234);
-const VERSION = "4.8.0";
+// pkg/dist-src/graphql.js
+var import_request = __nccwpck_require__(6234);
+// pkg/dist-src/error.js
function _buildMessageForResponseErrors(data) {
- return `Request failed due to following response errors:\n` + data.errors.map(e => ` - ${e.message}`).join("\n");
+ return `Request failed due to following response errors:
+` + data.errors.map((e) => ` - ${e.message}`).join("\n");
}
-
-class GraphqlResponseError extends Error {
- constructor(request, headers, response) {
+var GraphqlResponseError = class extends Error {
+ constructor(request2, headers, response) {
super(_buildMessageForResponseErrors(response));
- this.request = request;
+ this.request = request2;
this.headers = headers;
this.response = response;
- this.name = "GraphqlResponseError"; // Expose the errors and response data in their shorthand properties.
-
+ this.name = "GraphqlResponseError";
this.errors = response.errors;
- this.data = response.data; // Maintains proper stack trace (only available on V8)
-
- /* istanbul ignore next */
-
+ this.data = response.data;
if (Error.captureStackTrace) {
Error.captureStackTrace(this, this.constructor);
}
}
+};
-}
-
-const NON_VARIABLE_OPTIONS = ["method", "baseUrl", "url", "headers", "request", "query", "mediaType"];
-const FORBIDDEN_VARIABLE_OPTIONS = ["query", "method", "url"];
-const GHES_V3_SUFFIX_REGEX = /\/api\/v3\/?$/;
-function graphql(request, query, options) {
+// pkg/dist-src/graphql.js
+var NON_VARIABLE_OPTIONS = [
+ "method",
+ "baseUrl",
+ "url",
+ "headers",
+ "request",
+ "query",
+ "mediaType"
+];
+var FORBIDDEN_VARIABLE_OPTIONS = ["query", "method", "url"];
+var GHES_V3_SUFFIX_REGEX = /\/api\/v3\/?$/;
+function graphql(request2, query, options) {
if (options) {
if (typeof query === "string" && "query" in options) {
- return Promise.reject(new Error(`[@octokit/graphql] "query" cannot be used as variable name`));
+ return Promise.reject(
+ new Error(`[@octokit/graphql] "query" cannot be used as variable name`)
+ );
}
-
for (const key in options) {
- if (!FORBIDDEN_VARIABLE_OPTIONS.includes(key)) continue;
- return Promise.reject(new Error(`[@octokit/graphql] "${key}" cannot be used as variable name`));
+ if (!FORBIDDEN_VARIABLE_OPTIONS.includes(key))
+ continue;
+ return Promise.reject(
+ new Error(
+ `[@octokit/graphql] "${key}" cannot be used as variable name`
+ )
+ );
}
}
-
- const parsedOptions = typeof query === "string" ? Object.assign({
- query
- }, options) : query;
- const requestOptions = Object.keys(parsedOptions).reduce((result, key) => {
+ const parsedOptions = typeof query === "string" ? Object.assign({ query }, options) : query;
+ const requestOptions = Object.keys(
+ parsedOptions
+ ).reduce((result, key) => {
if (NON_VARIABLE_OPTIONS.includes(key)) {
result[key] = parsedOptions[key];
return result;
}
-
if (!result.variables) {
result.variables = {};
}
-
result.variables[key] = parsedOptions[key];
return result;
- }, {}); // workaround for GitHub Enterprise baseUrl set with /api/v3 suffix
- // https://github.com/octokit/auth-app.js/issues/111#issuecomment-657610451
-
- const baseUrl = parsedOptions.baseUrl || request.endpoint.DEFAULTS.baseUrl;
-
+ }, {});
+ const baseUrl = parsedOptions.baseUrl || request2.endpoint.DEFAULTS.baseUrl;
if (GHES_V3_SUFFIX_REGEX.test(baseUrl)) {
requestOptions.url = baseUrl.replace(GHES_V3_SUFFIX_REGEX, "/api/graphql");
}
-
- return request(requestOptions).then(response => {
+ return request2(requestOptions).then((response) => {
if (response.data.errors) {
const headers = {};
-
for (const key of Object.keys(response.headers)) {
headers[key] = response.headers[key];
}
-
- throw new GraphqlResponseError(requestOptions, headers, response.data);
+ throw new GraphqlResponseError(
+ requestOptions,
+ headers,
+ response.data
+ );
}
-
return response.data.data;
});
}
-function withDefaults(request$1, newDefaults) {
- const newRequest = request$1.defaults(newDefaults);
-
+// pkg/dist-src/with-defaults.js
+function withDefaults(request2, newDefaults) {
+ const newRequest = request2.defaults(newDefaults);
const newApi = (query, options) => {
return graphql(newRequest, query, options);
};
-
return Object.assign(newApi, {
defaults: withDefaults.bind(null, newRequest),
- endpoint: request.request.endpoint
+ endpoint: newRequest.endpoint
});
}
-const graphql$1 = withDefaults(request.request, {
+// pkg/dist-src/index.js
+var graphql2 = withDefaults(import_request3.request, {
headers: {
- "user-agent": `octokit-graphql.js/${VERSION} ${universalUserAgent.getUserAgent()}`
+ "user-agent": `octokit-graphql.js/${VERSION} ${(0, import_universal_user_agent.getUserAgent)()}`
},
method: "POST",
url: "/graphql"
@@ -7200,94 +7330,59 @@ function withCustomRequest(customRequest) {
url: "/graphql"
});
}
-
-exports.GraphqlResponseError = GraphqlResponseError;
-exports.graphql = graphql$1;
-exports.withCustomRequest = withCustomRequest;
-//# sourceMappingURL=index.js.map
+// Annotate the CommonJS export names for ESM import in node:
+0 && (0);
/***/ }),
/***/ 4193:
-/***/ ((__unused_webpack_module, exports) => {
+/***/ ((module) => {
"use strict";
+var __defProp = Object.defineProperty;
+var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
+var __getOwnPropNames = Object.getOwnPropertyNames;
+var __hasOwnProp = Object.prototype.hasOwnProperty;
+var __export = (target, all) => {
+ for (var name in all)
+ __defProp(target, name, { get: all[name], enumerable: true });
+};
+var __copyProps = (to, from, except, desc) => {
+ if (from && typeof from === "object" || typeof from === "function") {
+ for (let key of __getOwnPropNames(from))
+ if (!__hasOwnProp.call(to, key) && key !== except)
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
+ }
+ return to;
+};
+var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
+
+// pkg/dist-src/index.js
+var dist_src_exports = {};
+__export(dist_src_exports, {
+ composePaginateRest: () => composePaginateRest,
+ isPaginatingEndpoint: () => isPaginatingEndpoint,
+ paginateRest: () => paginateRest,
+ paginatingEndpoints: () => paginatingEndpoints
+});
+module.exports = __toCommonJS(dist_src_exports);
-Object.defineProperty(exports, "__esModule", ({ value: true }));
-
-const VERSION = "2.21.3";
-
-function ownKeys(object, enumerableOnly) {
- var keys = Object.keys(object);
-
- if (Object.getOwnPropertySymbols) {
- var symbols = Object.getOwnPropertySymbols(object);
- enumerableOnly && (symbols = symbols.filter(function (sym) {
- return Object.getOwnPropertyDescriptor(object, sym).enumerable;
- })), keys.push.apply(keys, symbols);
- }
-
- return keys;
-}
-
-function _objectSpread2(target) {
- for (var i = 1; i < arguments.length; i++) {
- var source = null != arguments[i] ? arguments[i] : {};
- i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {
- _defineProperty(target, key, source[key]);
- }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {
- Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
- });
- }
-
- return target;
-}
-
-function _defineProperty(obj, key, value) {
- if (key in obj) {
- Object.defineProperty(obj, key, {
- value: value,
- enumerable: true,
- configurable: true,
- writable: true
- });
- } else {
- obj[key] = value;
- }
-
- return obj;
-}
+// pkg/dist-src/version.js
+var VERSION = "9.1.5";
-/**
- * Some “list” response that can be paginated have a different response structure
- *
- * They have a `total_count` key in the response (search also has `incomplete_results`,
- * /installation/repositories also has `repository_selection`), as well as a key with
- * the list of the items which name varies from endpoint to endpoint.
- *
- * Octokit normalizes these responses so that paginated results are always returned following
- * the same structure. One challenge is that if the list response has only one page, no Link
- * header is provided, so this header alone is not sufficient to check wether a response is
- * paginated or not.
- *
- * We check if a "total_count" key is present in the response data, but also make sure that
- * a "url" property is not, as the "Get the combined status for a specific ref" endpoint would
- * otherwise match: https://developer.github.com/v3/repos/statuses/#get-the-combined-status-for-a-specific-ref
- */
+// pkg/dist-src/normalize-paginated-list-response.js
function normalizePaginatedListResponse(response) {
- // endpoints can respond with 204 if repository is empty
if (!response.data) {
- return _objectSpread2(_objectSpread2({}, response), {}, {
+ return {
+ ...response,
data: []
- });
+ };
}
-
const responseNeedsNormalization = "total_count" in response.data && !("url" in response.data);
- if (!responseNeedsNormalization) return response; // keep the additional properties intact as there is currently no other way
- // to retrieve the same information.
-
+ if (!responseNeedsNormalization)
+ return response;
const incompleteResults = response.data.incomplete_results;
const repositorySelection = response.data.repository_selection;
const totalCount = response.data.total_count;
@@ -7297,19 +7392,17 @@ function normalizePaginatedListResponse(response) {
const namespaceKey = Object.keys(response.data)[0];
const data = response.data[namespaceKey];
response.data = data;
-
if (typeof incompleteResults !== "undefined") {
response.data.incomplete_results = incompleteResults;
}
-
if (typeof repositorySelection !== "undefined") {
response.data.repository_selection = repositorySelection;
}
-
response.data.total_count = totalCount;
return response;
}
+// pkg/dist-src/iterator.js
function iterator(octokit, route, parameters) {
const options = typeof route === "function" ? route.endpoint(parameters) : octokit.request.endpoint(route, parameters);
const requestMethod = typeof route === "function" ? route : octokit.request;
@@ -7319,26 +7412,18 @@ function iterator(octokit, route, parameters) {
return {
[Symbol.asyncIterator]: () => ({
async next() {
- if (!url) return {
- done: true
- };
-
+ if (!url)
+ return { done: true };
try {
- const response = await requestMethod({
- method,
- url,
- headers
- });
- const normalizedResponse = normalizePaginatedListResponse(response); // `response.headers.link` format:
- // '; rel="next", ; rel="last"'
- // sets `url` to undefined if "next" URL is not present or `link` header is not set
-
- url = ((normalizedResponse.headers.link || "").match(/<([^>]+)>;\s*rel="next"/) || [])[1];
- return {
- value: normalizedResponse
- };
+ const response = await requestMethod({ method, url, headers });
+ const normalizedResponse = normalizePaginatedListResponse(response);
+ url = ((normalizedResponse.headers.link || "").match(
+ /<([^>]+)>;\s*rel="next"/
+ ) || [])[1];
+ return { value: normalizedResponse };
} catch (error) {
- if (error.status !== 409) throw error;
+ if (error.status !== 409)
+ throw error;
url = "";
return {
value: {
@@ -7349,48 +7434,284 @@ function iterator(octokit, route, parameters) {
};
}
}
-
})
};
}
+// pkg/dist-src/paginate.js
function paginate(octokit, route, parameters, mapFn) {
if (typeof parameters === "function") {
mapFn = parameters;
- parameters = undefined;
+ parameters = void 0;
}
-
- return gather(octokit, [], iterator(octokit, route, parameters)[Symbol.asyncIterator](), mapFn);
+ return gather(
+ octokit,
+ [],
+ iterator(octokit, route, parameters)[Symbol.asyncIterator](),
+ mapFn
+ );
}
-
-function gather(octokit, results, iterator, mapFn) {
- return iterator.next().then(result => {
+function gather(octokit, results, iterator2, mapFn) {
+ return iterator2.next().then((result) => {
if (result.done) {
return results;
}
-
let earlyExit = false;
-
function done() {
earlyExit = true;
}
-
- results = results.concat(mapFn ? mapFn(result.value, done) : result.value.data);
-
+ results = results.concat(
+ mapFn ? mapFn(result.value, done) : result.value.data
+ );
if (earlyExit) {
return results;
}
-
- return gather(octokit, results, iterator, mapFn);
+ return gather(octokit, results, iterator2, mapFn);
});
}
-const composePaginateRest = Object.assign(paginate, {
+// pkg/dist-src/compose-paginate.js
+var composePaginateRest = Object.assign(paginate, {
iterator
});
-const paginatingEndpoints = ["GET /app/hook/deliveries", "GET /app/installations", "GET /applications/grants", "GET /authorizations", "GET /enterprises/{enterprise}/actions/permissions/organizations", "GET /enterprises/{enterprise}/actions/runner-groups", "GET /enterprises/{enterprise}/actions/runner-groups/{runner_group_id}/organizations", "GET /enterprises/{enterprise}/actions/runner-groups/{runner_group_id}/runners", "GET /enterprises/{enterprise}/actions/runners", "GET /enterprises/{enterprise}/audit-log", "GET /enterprises/{enterprise}/secret-scanning/alerts", "GET /enterprises/{enterprise}/settings/billing/advanced-security", "GET /events", "GET /gists", "GET /gists/public", "GET /gists/starred", "GET /gists/{gist_id}/comments", "GET /gists/{gist_id}/commits", "GET /gists/{gist_id}/forks", "GET /installation/repositories", "GET /issues", "GET /licenses", "GET /marketplace_listing/plans", "GET /marketplace_listing/plans/{plan_id}/accounts", "GET /marketplace_listing/stubbed/plans", "GET /marketplace_listing/stubbed/plans/{plan_id}/accounts", "GET /networks/{owner}/{repo}/events", "GET /notifications", "GET /organizations", "GET /orgs/{org}/actions/cache/usage-by-repository", "GET /orgs/{org}/actions/permissions/repositories", "GET /orgs/{org}/actions/runner-groups", "GET /orgs/{org}/actions/runner-groups/{runner_group_id}/repositories", "GET /orgs/{org}/actions/runner-groups/{runner_group_id}/runners", "GET /orgs/{org}/actions/runners", "GET /orgs/{org}/actions/secrets", "GET /orgs/{org}/actions/secrets/{secret_name}/repositories", "GET /orgs/{org}/audit-log", "GET /orgs/{org}/blocks", "GET /orgs/{org}/code-scanning/alerts", "GET /orgs/{org}/codespaces", "GET /orgs/{org}/credential-authorizations", "GET /orgs/{org}/dependabot/secrets", "GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories", "GET /orgs/{org}/events", "GET /orgs/{org}/external-groups", "GET /orgs/{org}/failed_invitations", "GET /orgs/{org}/hooks", "GET /orgs/{org}/hooks/{hook_id}/deliveries", "GET /orgs/{org}/installations", "GET /orgs/{org}/invitations", "GET /orgs/{org}/invitations/{invitation_id}/teams", "GET /orgs/{org}/issues", "GET /orgs/{org}/members", "GET /orgs/{org}/migrations", "GET /orgs/{org}/migrations/{migration_id}/repositories", "GET /orgs/{org}/outside_collaborators", "GET /orgs/{org}/packages", "GET /orgs/{org}/packages/{package_type}/{package_name}/versions", "GET /orgs/{org}/projects", "GET /orgs/{org}/public_members", "GET /orgs/{org}/repos", "GET /orgs/{org}/secret-scanning/alerts", "GET /orgs/{org}/settings/billing/advanced-security", "GET /orgs/{org}/team-sync/groups", "GET /orgs/{org}/teams", "GET /orgs/{org}/teams/{team_slug}/discussions", "GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments", "GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions", "GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions", "GET /orgs/{org}/teams/{team_slug}/invitations", "GET /orgs/{org}/teams/{team_slug}/members", "GET /orgs/{org}/teams/{team_slug}/projects", "GET /orgs/{org}/teams/{team_slug}/repos", "GET /orgs/{org}/teams/{team_slug}/teams", "GET /projects/columns/{column_id}/cards", "GET /projects/{project_id}/collaborators", "GET /projects/{project_id}/columns", "GET /repos/{owner}/{repo}/actions/artifacts", "GET /repos/{owner}/{repo}/actions/caches", "GET /repos/{owner}/{repo}/actions/runners", "GET /repos/{owner}/{repo}/actions/runs", "GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts", "GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/jobs", "GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs", "GET /repos/{owner}/{repo}/actions/secrets", "GET /repos/{owner}/{repo}/actions/workflows", "GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs", "GET /repos/{owner}/{repo}/assignees", "GET /repos/{owner}/{repo}/branches", "GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations", "GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs", "GET /repos/{owner}/{repo}/code-scanning/alerts", "GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances", "GET /repos/{owner}/{repo}/code-scanning/analyses", "GET /repos/{owner}/{repo}/codespaces", "GET /repos/{owner}/{repo}/codespaces/devcontainers", "GET /repos/{owner}/{repo}/codespaces/secrets", "GET /repos/{owner}/{repo}/collaborators", "GET /repos/{owner}/{repo}/comments", "GET /repos/{owner}/{repo}/comments/{comment_id}/reactions", "GET /repos/{owner}/{repo}/commits", "GET /repos/{owner}/{repo}/commits/{commit_sha}/comments", "GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls", "GET /repos/{owner}/{repo}/commits/{ref}/check-runs", "GET /repos/{owner}/{repo}/commits/{ref}/check-suites", "GET /repos/{owner}/{repo}/commits/{ref}/status", "GET /repos/{owner}/{repo}/commits/{ref}/statuses", "GET /repos/{owner}/{repo}/contributors", "GET /repos/{owner}/{repo}/dependabot/secrets", "GET /repos/{owner}/{repo}/deployments", "GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses", "GET /repos/{owner}/{repo}/environments", "GET /repos/{owner}/{repo}/events", "GET /repos/{owner}/{repo}/forks", "GET /repos/{owner}/{repo}/git/matching-refs/{ref}", "GET /repos/{owner}/{repo}/hooks", "GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries", "GET /repos/{owner}/{repo}/invitations", "GET /repos/{owner}/{repo}/issues", "GET /repos/{owner}/{repo}/issues/comments", "GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions", "GET /repos/{owner}/{repo}/issues/events", "GET /repos/{owner}/{repo}/issues/{issue_number}/comments", "GET /repos/{owner}/{repo}/issues/{issue_number}/events", "GET /repos/{owner}/{repo}/issues/{issue_number}/labels", "GET /repos/{owner}/{repo}/issues/{issue_number}/reactions", "GET /repos/{owner}/{repo}/issues/{issue_number}/timeline", "GET /repos/{owner}/{repo}/keys", "GET /repos/{owner}/{repo}/labels", "GET /repos/{owner}/{repo}/milestones", "GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels", "GET /repos/{owner}/{repo}/notifications", "GET /repos/{owner}/{repo}/pages/builds", "GET /repos/{owner}/{repo}/projects", "GET /repos/{owner}/{repo}/pulls", "GET /repos/{owner}/{repo}/pulls/comments", "GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions", "GET /repos/{owner}/{repo}/pulls/{pull_number}/comments", "GET /repos/{owner}/{repo}/pulls/{pull_number}/commits", "GET /repos/{owner}/{repo}/pulls/{pull_number}/files", "GET /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers", "GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews", "GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments", "GET /repos/{owner}/{repo}/releases", "GET /repos/{owner}/{repo}/releases/{release_id}/assets", "GET /repos/{owner}/{repo}/releases/{release_id}/reactions", "GET /repos/{owner}/{repo}/secret-scanning/alerts", "GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations", "GET /repos/{owner}/{repo}/stargazers", "GET /repos/{owner}/{repo}/subscribers", "GET /repos/{owner}/{repo}/tags", "GET /repos/{owner}/{repo}/teams", "GET /repos/{owner}/{repo}/topics", "GET /repositories", "GET /repositories/{repository_id}/environments/{environment_name}/secrets", "GET /search/code", "GET /search/commits", "GET /search/issues", "GET /search/labels", "GET /search/repositories", "GET /search/topics", "GET /search/users", "GET /teams/{team_id}/discussions", "GET /teams/{team_id}/discussions/{discussion_number}/comments", "GET /teams/{team_id}/discussions/{discussion_number}/comments/{comment_number}/reactions", "GET /teams/{team_id}/discussions/{discussion_number}/reactions", "GET /teams/{team_id}/invitations", "GET /teams/{team_id}/members", "GET /teams/{team_id}/projects", "GET /teams/{team_id}/repos", "GET /teams/{team_id}/teams", "GET /user/blocks", "GET /user/codespaces", "GET /user/codespaces/secrets", "GET /user/emails", "GET /user/followers", "GET /user/following", "GET /user/gpg_keys", "GET /user/installations", "GET /user/installations/{installation_id}/repositories", "GET /user/issues", "GET /user/keys", "GET /user/marketplace_purchases", "GET /user/marketplace_purchases/stubbed", "GET /user/memberships/orgs", "GET /user/migrations", "GET /user/migrations/{migration_id}/repositories", "GET /user/orgs", "GET /user/packages", "GET /user/packages/{package_type}/{package_name}/versions", "GET /user/public_emails", "GET /user/repos", "GET /user/repository_invitations", "GET /user/starred", "GET /user/subscriptions", "GET /user/teams", "GET /users", "GET /users/{username}/events", "GET /users/{username}/events/orgs/{org}", "GET /users/{username}/events/public", "GET /users/{username}/followers", "GET /users/{username}/following", "GET /users/{username}/gists", "GET /users/{username}/gpg_keys", "GET /users/{username}/keys", "GET /users/{username}/orgs", "GET /users/{username}/packages", "GET /users/{username}/projects", "GET /users/{username}/received_events", "GET /users/{username}/received_events/public", "GET /users/{username}/repos", "GET /users/{username}/starred", "GET /users/{username}/subscriptions"];
+// pkg/dist-src/generated/paginating-endpoints.js
+var paginatingEndpoints = [
+ "GET /advisories",
+ "GET /app/hook/deliveries",
+ "GET /app/installation-requests",
+ "GET /app/installations",
+ "GET /assignments/{assignment_id}/accepted_assignments",
+ "GET /classrooms",
+ "GET /classrooms/{classroom_id}/assignments",
+ "GET /enterprises/{enterprise}/dependabot/alerts",
+ "GET /enterprises/{enterprise}/secret-scanning/alerts",
+ "GET /events",
+ "GET /gists",
+ "GET /gists/public",
+ "GET /gists/starred",
+ "GET /gists/{gist_id}/comments",
+ "GET /gists/{gist_id}/commits",
+ "GET /gists/{gist_id}/forks",
+ "GET /installation/repositories",
+ "GET /issues",
+ "GET /licenses",
+ "GET /marketplace_listing/plans",
+ "GET /marketplace_listing/plans/{plan_id}/accounts",
+ "GET /marketplace_listing/stubbed/plans",
+ "GET /marketplace_listing/stubbed/plans/{plan_id}/accounts",
+ "GET /networks/{owner}/{repo}/events",
+ "GET /notifications",
+ "GET /organizations",
+ "GET /orgs/{org}/actions/cache/usage-by-repository",
+ "GET /orgs/{org}/actions/permissions/repositories",
+ "GET /orgs/{org}/actions/runners",
+ "GET /orgs/{org}/actions/secrets",
+ "GET /orgs/{org}/actions/secrets/{secret_name}/repositories",
+ "GET /orgs/{org}/actions/variables",
+ "GET /orgs/{org}/actions/variables/{name}/repositories",
+ "GET /orgs/{org}/blocks",
+ "GET /orgs/{org}/code-scanning/alerts",
+ "GET /orgs/{org}/codespaces",
+ "GET /orgs/{org}/codespaces/secrets",
+ "GET /orgs/{org}/codespaces/secrets/{secret_name}/repositories",
+ "GET /orgs/{org}/copilot/billing/seats",
+ "GET /orgs/{org}/dependabot/alerts",
+ "GET /orgs/{org}/dependabot/secrets",
+ "GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories",
+ "GET /orgs/{org}/events",
+ "GET /orgs/{org}/failed_invitations",
+ "GET /orgs/{org}/hooks",
+ "GET /orgs/{org}/hooks/{hook_id}/deliveries",
+ "GET /orgs/{org}/installations",
+ "GET /orgs/{org}/invitations",
+ "GET /orgs/{org}/invitations/{invitation_id}/teams",
+ "GET /orgs/{org}/issues",
+ "GET /orgs/{org}/members",
+ "GET /orgs/{org}/members/{username}/codespaces",
+ "GET /orgs/{org}/migrations",
+ "GET /orgs/{org}/migrations/{migration_id}/repositories",
+ "GET /orgs/{org}/outside_collaborators",
+ "GET /orgs/{org}/packages",
+ "GET /orgs/{org}/packages/{package_type}/{package_name}/versions",
+ "GET /orgs/{org}/personal-access-token-requests",
+ "GET /orgs/{org}/personal-access-token-requests/{pat_request_id}/repositories",
+ "GET /orgs/{org}/personal-access-tokens",
+ "GET /orgs/{org}/personal-access-tokens/{pat_id}/repositories",
+ "GET /orgs/{org}/projects",
+ "GET /orgs/{org}/properties/values",
+ "GET /orgs/{org}/public_members",
+ "GET /orgs/{org}/repos",
+ "GET /orgs/{org}/rulesets",
+ "GET /orgs/{org}/rulesets/rule-suites",
+ "GET /orgs/{org}/secret-scanning/alerts",
+ "GET /orgs/{org}/security-advisories",
+ "GET /orgs/{org}/teams",
+ "GET /orgs/{org}/teams/{team_slug}/discussions",
+ "GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments",
+ "GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions",
+ "GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions",
+ "GET /orgs/{org}/teams/{team_slug}/invitations",
+ "GET /orgs/{org}/teams/{team_slug}/members",
+ "GET /orgs/{org}/teams/{team_slug}/projects",
+ "GET /orgs/{org}/teams/{team_slug}/repos",
+ "GET /orgs/{org}/teams/{team_slug}/teams",
+ "GET /projects/columns/{column_id}/cards",
+ "GET /projects/{project_id}/collaborators",
+ "GET /projects/{project_id}/columns",
+ "GET /repos/{owner}/{repo}/actions/artifacts",
+ "GET /repos/{owner}/{repo}/actions/caches",
+ "GET /repos/{owner}/{repo}/actions/organization-secrets",
+ "GET /repos/{owner}/{repo}/actions/organization-variables",
+ "GET /repos/{owner}/{repo}/actions/runners",
+ "GET /repos/{owner}/{repo}/actions/runs",
+ "GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts",
+ "GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/jobs",
+ "GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs",
+ "GET /repos/{owner}/{repo}/actions/secrets",
+ "GET /repos/{owner}/{repo}/actions/variables",
+ "GET /repos/{owner}/{repo}/actions/workflows",
+ "GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs",
+ "GET /repos/{owner}/{repo}/activity",
+ "GET /repos/{owner}/{repo}/assignees",
+ "GET /repos/{owner}/{repo}/branches",
+ "GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations",
+ "GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs",
+ "GET /repos/{owner}/{repo}/code-scanning/alerts",
+ "GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances",
+ "GET /repos/{owner}/{repo}/code-scanning/analyses",
+ "GET /repos/{owner}/{repo}/codespaces",
+ "GET /repos/{owner}/{repo}/codespaces/devcontainers",
+ "GET /repos/{owner}/{repo}/codespaces/secrets",
+ "GET /repos/{owner}/{repo}/collaborators",
+ "GET /repos/{owner}/{repo}/comments",
+ "GET /repos/{owner}/{repo}/comments/{comment_id}/reactions",
+ "GET /repos/{owner}/{repo}/commits",
+ "GET /repos/{owner}/{repo}/commits/{commit_sha}/comments",
+ "GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls",
+ "GET /repos/{owner}/{repo}/commits/{ref}/check-runs",
+ "GET /repos/{owner}/{repo}/commits/{ref}/check-suites",
+ "GET /repos/{owner}/{repo}/commits/{ref}/status",
+ "GET /repos/{owner}/{repo}/commits/{ref}/statuses",
+ "GET /repos/{owner}/{repo}/contributors",
+ "GET /repos/{owner}/{repo}/dependabot/alerts",
+ "GET /repos/{owner}/{repo}/dependabot/secrets",
+ "GET /repos/{owner}/{repo}/deployments",
+ "GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses",
+ "GET /repos/{owner}/{repo}/environments",
+ "GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies",
+ "GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/apps",
+ "GET /repos/{owner}/{repo}/events",
+ "GET /repos/{owner}/{repo}/forks",
+ "GET /repos/{owner}/{repo}/hooks",
+ "GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries",
+ "GET /repos/{owner}/{repo}/invitations",
+ "GET /repos/{owner}/{repo}/issues",
+ "GET /repos/{owner}/{repo}/issues/comments",
+ "GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions",
+ "GET /repos/{owner}/{repo}/issues/events",
+ "GET /repos/{owner}/{repo}/issues/{issue_number}/comments",
+ "GET /repos/{owner}/{repo}/issues/{issue_number}/events",
+ "GET /repos/{owner}/{repo}/issues/{issue_number}/labels",
+ "GET /repos/{owner}/{repo}/issues/{issue_number}/reactions",
+ "GET /repos/{owner}/{repo}/issues/{issue_number}/timeline",
+ "GET /repos/{owner}/{repo}/keys",
+ "GET /repos/{owner}/{repo}/labels",
+ "GET /repos/{owner}/{repo}/milestones",
+ "GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels",
+ "GET /repos/{owner}/{repo}/notifications",
+ "GET /repos/{owner}/{repo}/pages/builds",
+ "GET /repos/{owner}/{repo}/projects",
+ "GET /repos/{owner}/{repo}/pulls",
+ "GET /repos/{owner}/{repo}/pulls/comments",
+ "GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions",
+ "GET /repos/{owner}/{repo}/pulls/{pull_number}/comments",
+ "GET /repos/{owner}/{repo}/pulls/{pull_number}/commits",
+ "GET /repos/{owner}/{repo}/pulls/{pull_number}/files",
+ "GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews",
+ "GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments",
+ "GET /repos/{owner}/{repo}/releases",
+ "GET /repos/{owner}/{repo}/releases/{release_id}/assets",
+ "GET /repos/{owner}/{repo}/releases/{release_id}/reactions",
+ "GET /repos/{owner}/{repo}/rules/branches/{branch}",
+ "GET /repos/{owner}/{repo}/rulesets",
+ "GET /repos/{owner}/{repo}/rulesets/rule-suites",
+ "GET /repos/{owner}/{repo}/secret-scanning/alerts",
+ "GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations",
+ "GET /repos/{owner}/{repo}/security-advisories",
+ "GET /repos/{owner}/{repo}/stargazers",
+ "GET /repos/{owner}/{repo}/subscribers",
+ "GET /repos/{owner}/{repo}/tags",
+ "GET /repos/{owner}/{repo}/teams",
+ "GET /repos/{owner}/{repo}/topics",
+ "GET /repositories",
+ "GET /repositories/{repository_id}/environments/{environment_name}/secrets",
+ "GET /repositories/{repository_id}/environments/{environment_name}/variables",
+ "GET /search/code",
+ "GET /search/commits",
+ "GET /search/issues",
+ "GET /search/labels",
+ "GET /search/repositories",
+ "GET /search/topics",
+ "GET /search/users",
+ "GET /teams/{team_id}/discussions",
+ "GET /teams/{team_id}/discussions/{discussion_number}/comments",
+ "GET /teams/{team_id}/discussions/{discussion_number}/comments/{comment_number}/reactions",
+ "GET /teams/{team_id}/discussions/{discussion_number}/reactions",
+ "GET /teams/{team_id}/invitations",
+ "GET /teams/{team_id}/members",
+ "GET /teams/{team_id}/projects",
+ "GET /teams/{team_id}/repos",
+ "GET /teams/{team_id}/teams",
+ "GET /user/blocks",
+ "GET /user/codespaces",
+ "GET /user/codespaces/secrets",
+ "GET /user/emails",
+ "GET /user/followers",
+ "GET /user/following",
+ "GET /user/gpg_keys",
+ "GET /user/installations",
+ "GET /user/installations/{installation_id}/repositories",
+ "GET /user/issues",
+ "GET /user/keys",
+ "GET /user/marketplace_purchases",
+ "GET /user/marketplace_purchases/stubbed",
+ "GET /user/memberships/orgs",
+ "GET /user/migrations",
+ "GET /user/migrations/{migration_id}/repositories",
+ "GET /user/orgs",
+ "GET /user/packages",
+ "GET /user/packages/{package_type}/{package_name}/versions",
+ "GET /user/public_emails",
+ "GET /user/repos",
+ "GET /user/repository_invitations",
+ "GET /user/social_accounts",
+ "GET /user/ssh_signing_keys",
+ "GET /user/starred",
+ "GET /user/subscriptions",
+ "GET /user/teams",
+ "GET /users",
+ "GET /users/{username}/events",
+ "GET /users/{username}/events/orgs/{org}",
+ "GET /users/{username}/events/public",
+ "GET /users/{username}/followers",
+ "GET /users/{username}/following",
+ "GET /users/{username}/gists",
+ "GET /users/{username}/gpg_keys",
+ "GET /users/{username}/keys",
+ "GET /users/{username}/orgs",
+ "GET /users/{username}/packages",
+ "GET /users/{username}/projects",
+ "GET /users/{username}/received_events",
+ "GET /users/{username}/received_events/public",
+ "GET /users/{username}/repos",
+ "GET /users/{username}/social_accounts",
+ "GET /users/{username}/ssh_signing_keys",
+ "GET /users/{username}/starred",
+ "GET /users/{username}/subscriptions"
+];
+// pkg/dist-src/paginating-endpoints.js
function isPaginatingEndpoint(arg) {
if (typeof arg === "string") {
return paginatingEndpoints.includes(arg);
@@ -7399,11 +7720,7 @@ function isPaginatingEndpoint(arg) {
}
}
-/**
- * @param octokit Octokit instance
- * @param options Options passed to Octokit constructor
- */
-
+// pkg/dist-src/index.js
function paginateRest(octokit) {
return {
paginate: Object.assign(paginate.bind(null, octokit), {
@@ -7412,202 +7729,384 @@ function paginateRest(octokit) {
};
}
paginateRest.VERSION = VERSION;
-
-exports.composePaginateRest = composePaginateRest;
-exports.isPaginatingEndpoint = isPaginatingEndpoint;
-exports.paginateRest = paginateRest;
-exports.paginatingEndpoints = paginatingEndpoints;
-//# sourceMappingURL=index.js.map
+// Annotate the CommonJS export names for ESM import in node:
+0 && (0);
/***/ }),
/***/ 3044:
-/***/ ((__unused_webpack_module, exports) => {
+/***/ ((module) => {
"use strict";
+var __defProp = Object.defineProperty;
+var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
+var __getOwnPropNames = Object.getOwnPropertyNames;
+var __hasOwnProp = Object.prototype.hasOwnProperty;
+var __export = (target, all) => {
+ for (var name in all)
+ __defProp(target, name, { get: all[name], enumerable: true });
+};
+var __copyProps = (to, from, except, desc) => {
+ if (from && typeof from === "object" || typeof from === "function") {
+ for (let key of __getOwnPropNames(from))
+ if (!__hasOwnProp.call(to, key) && key !== except)
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
+ }
+ return to;
+};
+var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
+
+// pkg/dist-src/index.js
+var dist_src_exports = {};
+__export(dist_src_exports, {
+ legacyRestEndpointMethods: () => legacyRestEndpointMethods,
+ restEndpointMethods: () => restEndpointMethods
+});
+module.exports = __toCommonJS(dist_src_exports);
-Object.defineProperty(exports, "__esModule", ({ value: true }));
-
-function ownKeys(object, enumerableOnly) {
- var keys = Object.keys(object);
-
- if (Object.getOwnPropertySymbols) {
- var symbols = Object.getOwnPropertySymbols(object);
-
- if (enumerableOnly) {
- symbols = symbols.filter(function (sym) {
- return Object.getOwnPropertyDescriptor(object, sym).enumerable;
- });
- }
-
- keys.push.apply(keys, symbols);
- }
-
- return keys;
-}
-
-function _objectSpread2(target) {
- for (var i = 1; i < arguments.length; i++) {
- var source = arguments[i] != null ? arguments[i] : {};
-
- if (i % 2) {
- ownKeys(Object(source), true).forEach(function (key) {
- _defineProperty(target, key, source[key]);
- });
- } else if (Object.getOwnPropertyDescriptors) {
- Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
- } else {
- ownKeys(Object(source)).forEach(function (key) {
- Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
- });
- }
- }
-
- return target;
-}
-
-function _defineProperty(obj, key, value) {
- if (key in obj) {
- Object.defineProperty(obj, key, {
- value: value,
- enumerable: true,
- configurable: true,
- writable: true
- });
- } else {
- obj[key] = value;
- }
-
- return obj;
-}
+// pkg/dist-src/version.js
+var VERSION = "10.2.0";
-const Endpoints = {
+// pkg/dist-src/generated/endpoints.js
+var Endpoints = {
actions: {
- addCustomLabelsToSelfHostedRunnerForOrg: ["POST /orgs/{org}/actions/runners/{runner_id}/labels"],
- addCustomLabelsToSelfHostedRunnerForRepo: ["POST /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],
- addSelectedRepoToOrgSecret: ["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],
- approveWorkflowRun: ["POST /repos/{owner}/{repo}/actions/runs/{run_id}/approve"],
- cancelWorkflowRun: ["POST /repos/{owner}/{repo}/actions/runs/{run_id}/cancel"],
- createOrUpdateEnvironmentSecret: ["PUT /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}"],
+ addCustomLabelsToSelfHostedRunnerForOrg: [
+ "POST /orgs/{org}/actions/runners/{runner_id}/labels"
+ ],
+ addCustomLabelsToSelfHostedRunnerForRepo: [
+ "POST /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"
+ ],
+ addSelectedRepoToOrgSecret: [
+ "PUT /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"
+ ],
+ addSelectedRepoToOrgVariable: [
+ "PUT /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"
+ ],
+ approveWorkflowRun: [
+ "POST /repos/{owner}/{repo}/actions/runs/{run_id}/approve"
+ ],
+ cancelWorkflowRun: [
+ "POST /repos/{owner}/{repo}/actions/runs/{run_id}/cancel"
+ ],
+ createEnvironmentVariable: [
+ "POST /repositories/{repository_id}/environments/{environment_name}/variables"
+ ],
+ createOrUpdateEnvironmentSecret: [
+ "PUT /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}"
+ ],
createOrUpdateOrgSecret: ["PUT /orgs/{org}/actions/secrets/{secret_name}"],
- createOrUpdateRepoSecret: ["PUT /repos/{owner}/{repo}/actions/secrets/{secret_name}"],
- createRegistrationTokenForOrg: ["POST /orgs/{org}/actions/runners/registration-token"],
- createRegistrationTokenForRepo: ["POST /repos/{owner}/{repo}/actions/runners/registration-token"],
+ createOrUpdateRepoSecret: [
+ "PUT /repos/{owner}/{repo}/actions/secrets/{secret_name}"
+ ],
+ createOrgVariable: ["POST /orgs/{org}/actions/variables"],
+ createRegistrationTokenForOrg: [
+ "POST /orgs/{org}/actions/runners/registration-token"
+ ],
+ createRegistrationTokenForRepo: [
+ "POST /repos/{owner}/{repo}/actions/runners/registration-token"
+ ],
createRemoveTokenForOrg: ["POST /orgs/{org}/actions/runners/remove-token"],
- createRemoveTokenForRepo: ["POST /repos/{owner}/{repo}/actions/runners/remove-token"],
- createWorkflowDispatch: ["POST /repos/{owner}/{repo}/actions/workflows/{workflow_id}/dispatches"],
- deleteActionsCacheById: ["DELETE /repos/{owner}/{repo}/actions/caches/{cache_id}"],
- deleteActionsCacheByKey: ["DELETE /repos/{owner}/{repo}/actions/caches{?key,ref}"],
- deleteArtifact: ["DELETE /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],
- deleteEnvironmentSecret: ["DELETE /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}"],
+ createRemoveTokenForRepo: [
+ "POST /repos/{owner}/{repo}/actions/runners/remove-token"
+ ],
+ createRepoVariable: ["POST /repos/{owner}/{repo}/actions/variables"],
+ createWorkflowDispatch: [
+ "POST /repos/{owner}/{repo}/actions/workflows/{workflow_id}/dispatches"
+ ],
+ deleteActionsCacheById: [
+ "DELETE /repos/{owner}/{repo}/actions/caches/{cache_id}"
+ ],
+ deleteActionsCacheByKey: [
+ "DELETE /repos/{owner}/{repo}/actions/caches{?key,ref}"
+ ],
+ deleteArtifact: [
+ "DELETE /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"
+ ],
+ deleteEnvironmentSecret: [
+ "DELETE /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}"
+ ],
+ deleteEnvironmentVariable: [
+ "DELETE /repositories/{repository_id}/environments/{environment_name}/variables/{name}"
+ ],
deleteOrgSecret: ["DELETE /orgs/{org}/actions/secrets/{secret_name}"],
- deleteRepoSecret: ["DELETE /repos/{owner}/{repo}/actions/secrets/{secret_name}"],
- deleteSelfHostedRunnerFromOrg: ["DELETE /orgs/{org}/actions/runners/{runner_id}"],
- deleteSelfHostedRunnerFromRepo: ["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}"],
+ deleteOrgVariable: ["DELETE /orgs/{org}/actions/variables/{name}"],
+ deleteRepoSecret: [
+ "DELETE /repos/{owner}/{repo}/actions/secrets/{secret_name}"
+ ],
+ deleteRepoVariable: [
+ "DELETE /repos/{owner}/{repo}/actions/variables/{name}"
+ ],
+ deleteSelfHostedRunnerFromOrg: [
+ "DELETE /orgs/{org}/actions/runners/{runner_id}"
+ ],
+ deleteSelfHostedRunnerFromRepo: [
+ "DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}"
+ ],
deleteWorkflowRun: ["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}"],
- deleteWorkflowRunLogs: ["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],
- disableSelectedRepositoryGithubActionsOrganization: ["DELETE /orgs/{org}/actions/permissions/repositories/{repository_id}"],
- disableWorkflow: ["PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/disable"],
- downloadArtifact: ["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}/{archive_format}"],
- downloadJobLogsForWorkflowRun: ["GET /repos/{owner}/{repo}/actions/jobs/{job_id}/logs"],
- downloadWorkflowRunAttemptLogs: ["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/logs"],
- downloadWorkflowRunLogs: ["GET /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],
- enableSelectedRepositoryGithubActionsOrganization: ["PUT /orgs/{org}/actions/permissions/repositories/{repository_id}"],
- enableWorkflow: ["PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/enable"],
+ deleteWorkflowRunLogs: [
+ "DELETE /repos/{owner}/{repo}/actions/runs/{run_id}/logs"
+ ],
+ disableSelectedRepositoryGithubActionsOrganization: [
+ "DELETE /orgs/{org}/actions/permissions/repositories/{repository_id}"
+ ],
+ disableWorkflow: [
+ "PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/disable"
+ ],
+ downloadArtifact: [
+ "GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}/{archive_format}"
+ ],
+ downloadJobLogsForWorkflowRun: [
+ "GET /repos/{owner}/{repo}/actions/jobs/{job_id}/logs"
+ ],
+ downloadWorkflowRunAttemptLogs: [
+ "GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/logs"
+ ],
+ downloadWorkflowRunLogs: [
+ "GET /repos/{owner}/{repo}/actions/runs/{run_id}/logs"
+ ],
+ enableSelectedRepositoryGithubActionsOrganization: [
+ "PUT /orgs/{org}/actions/permissions/repositories/{repository_id}"
+ ],
+ enableWorkflow: [
+ "PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/enable"
+ ],
+ forceCancelWorkflowRun: [
+ "POST /repos/{owner}/{repo}/actions/runs/{run_id}/force-cancel"
+ ],
+ generateRunnerJitconfigForOrg: [
+ "POST /orgs/{org}/actions/runners/generate-jitconfig"
+ ],
+ generateRunnerJitconfigForRepo: [
+ "POST /repos/{owner}/{repo}/actions/runners/generate-jitconfig"
+ ],
getActionsCacheList: ["GET /repos/{owner}/{repo}/actions/caches"],
getActionsCacheUsage: ["GET /repos/{owner}/{repo}/actions/cache/usage"],
- getActionsCacheUsageByRepoForOrg: ["GET /orgs/{org}/actions/cache/usage-by-repository"],
- getActionsCacheUsageForEnterprise: ["GET /enterprises/{enterprise}/actions/cache/usage"],
+ getActionsCacheUsageByRepoForOrg: [
+ "GET /orgs/{org}/actions/cache/usage-by-repository"
+ ],
getActionsCacheUsageForOrg: ["GET /orgs/{org}/actions/cache/usage"],
- getAllowedActionsOrganization: ["GET /orgs/{org}/actions/permissions/selected-actions"],
- getAllowedActionsRepository: ["GET /repos/{owner}/{repo}/actions/permissions/selected-actions"],
+ getAllowedActionsOrganization: [
+ "GET /orgs/{org}/actions/permissions/selected-actions"
+ ],
+ getAllowedActionsRepository: [
+ "GET /repos/{owner}/{repo}/actions/permissions/selected-actions"
+ ],
getArtifact: ["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],
- getEnvironmentPublicKey: ["GET /repositories/{repository_id}/environments/{environment_name}/secrets/public-key"],
- getEnvironmentSecret: ["GET /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}"],
- getGithubActionsDefaultWorkflowPermissionsEnterprise: ["GET /enterprises/{enterprise}/actions/permissions/workflow"],
- getGithubActionsDefaultWorkflowPermissionsOrganization: ["GET /orgs/{org}/actions/permissions/workflow"],
- getGithubActionsDefaultWorkflowPermissionsRepository: ["GET /repos/{owner}/{repo}/actions/permissions/workflow"],
- getGithubActionsPermissionsOrganization: ["GET /orgs/{org}/actions/permissions"],
- getGithubActionsPermissionsRepository: ["GET /repos/{owner}/{repo}/actions/permissions"],
+ getEnvironmentPublicKey: [
+ "GET /repositories/{repository_id}/environments/{environment_name}/secrets/public-key"
+ ],
+ getEnvironmentSecret: [
+ "GET /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}"
+ ],
+ getEnvironmentVariable: [
+ "GET /repositories/{repository_id}/environments/{environment_name}/variables/{name}"
+ ],
+ getGithubActionsDefaultWorkflowPermissionsOrganization: [
+ "GET /orgs/{org}/actions/permissions/workflow"
+ ],
+ getGithubActionsDefaultWorkflowPermissionsRepository: [
+ "GET /repos/{owner}/{repo}/actions/permissions/workflow"
+ ],
+ getGithubActionsPermissionsOrganization: [
+ "GET /orgs/{org}/actions/permissions"
+ ],
+ getGithubActionsPermissionsRepository: [
+ "GET /repos/{owner}/{repo}/actions/permissions"
+ ],
getJobForWorkflowRun: ["GET /repos/{owner}/{repo}/actions/jobs/{job_id}"],
getOrgPublicKey: ["GET /orgs/{org}/actions/secrets/public-key"],
getOrgSecret: ["GET /orgs/{org}/actions/secrets/{secret_name}"],
- getPendingDeploymentsForRun: ["GET /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],
- getRepoPermissions: ["GET /repos/{owner}/{repo}/actions/permissions", {}, {
- renamed: ["actions", "getGithubActionsPermissionsRepository"]
- }],
+ getOrgVariable: ["GET /orgs/{org}/actions/variables/{name}"],
+ getPendingDeploymentsForRun: [
+ "GET /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"
+ ],
+ getRepoPermissions: [
+ "GET /repos/{owner}/{repo}/actions/permissions",
+ {},
+ { renamed: ["actions", "getGithubActionsPermissionsRepository"] }
+ ],
getRepoPublicKey: ["GET /repos/{owner}/{repo}/actions/secrets/public-key"],
getRepoSecret: ["GET /repos/{owner}/{repo}/actions/secrets/{secret_name}"],
- getReviewsForRun: ["GET /repos/{owner}/{repo}/actions/runs/{run_id}/approvals"],
+ getRepoVariable: ["GET /repos/{owner}/{repo}/actions/variables/{name}"],
+ getReviewsForRun: [
+ "GET /repos/{owner}/{repo}/actions/runs/{run_id}/approvals"
+ ],
getSelfHostedRunnerForOrg: ["GET /orgs/{org}/actions/runners/{runner_id}"],
- getSelfHostedRunnerForRepo: ["GET /repos/{owner}/{repo}/actions/runners/{runner_id}"],
+ getSelfHostedRunnerForRepo: [
+ "GET /repos/{owner}/{repo}/actions/runners/{runner_id}"
+ ],
getWorkflow: ["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}"],
- getWorkflowAccessToRepository: ["GET /repos/{owner}/{repo}/actions/permissions/access"],
+ getWorkflowAccessToRepository: [
+ "GET /repos/{owner}/{repo}/actions/permissions/access"
+ ],
getWorkflowRun: ["GET /repos/{owner}/{repo}/actions/runs/{run_id}"],
- getWorkflowRunAttempt: ["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}"],
- getWorkflowRunUsage: ["GET /repos/{owner}/{repo}/actions/runs/{run_id}/timing"],
- getWorkflowUsage: ["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/timing"],
+ getWorkflowRunAttempt: [
+ "GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}"
+ ],
+ getWorkflowRunUsage: [
+ "GET /repos/{owner}/{repo}/actions/runs/{run_id}/timing"
+ ],
+ getWorkflowUsage: [
+ "GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/timing"
+ ],
listArtifactsForRepo: ["GET /repos/{owner}/{repo}/actions/artifacts"],
- listEnvironmentSecrets: ["GET /repositories/{repository_id}/environments/{environment_name}/secrets"],
- listJobsForWorkflowRun: ["GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs"],
- listJobsForWorkflowRunAttempt: ["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/jobs"],
- listLabelsForSelfHostedRunnerForOrg: ["GET /orgs/{org}/actions/runners/{runner_id}/labels"],
- listLabelsForSelfHostedRunnerForRepo: ["GET /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],
+ listEnvironmentSecrets: [
+ "GET /repositories/{repository_id}/environments/{environment_name}/secrets"
+ ],
+ listEnvironmentVariables: [
+ "GET /repositories/{repository_id}/environments/{environment_name}/variables"
+ ],
+ listJobsForWorkflowRun: [
+ "GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs"
+ ],
+ listJobsForWorkflowRunAttempt: [
+ "GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/jobs"
+ ],
+ listLabelsForSelfHostedRunnerForOrg: [
+ "GET /orgs/{org}/actions/runners/{runner_id}/labels"
+ ],
+ listLabelsForSelfHostedRunnerForRepo: [
+ "GET /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"
+ ],
listOrgSecrets: ["GET /orgs/{org}/actions/secrets"],
+ listOrgVariables: ["GET /orgs/{org}/actions/variables"],
+ listRepoOrganizationSecrets: [
+ "GET /repos/{owner}/{repo}/actions/organization-secrets"
+ ],
+ listRepoOrganizationVariables: [
+ "GET /repos/{owner}/{repo}/actions/organization-variables"
+ ],
listRepoSecrets: ["GET /repos/{owner}/{repo}/actions/secrets"],
+ listRepoVariables: ["GET /repos/{owner}/{repo}/actions/variables"],
listRepoWorkflows: ["GET /repos/{owner}/{repo}/actions/workflows"],
listRunnerApplicationsForOrg: ["GET /orgs/{org}/actions/runners/downloads"],
- listRunnerApplicationsForRepo: ["GET /repos/{owner}/{repo}/actions/runners/downloads"],
- listSelectedReposForOrgSecret: ["GET /orgs/{org}/actions/secrets/{secret_name}/repositories"],
- listSelectedRepositoriesEnabledGithubActionsOrganization: ["GET /orgs/{org}/actions/permissions/repositories"],
+ listRunnerApplicationsForRepo: [
+ "GET /repos/{owner}/{repo}/actions/runners/downloads"
+ ],
+ listSelectedReposForOrgSecret: [
+ "GET /orgs/{org}/actions/secrets/{secret_name}/repositories"
+ ],
+ listSelectedReposForOrgVariable: [
+ "GET /orgs/{org}/actions/variables/{name}/repositories"
+ ],
+ listSelectedRepositoriesEnabledGithubActionsOrganization: [
+ "GET /orgs/{org}/actions/permissions/repositories"
+ ],
listSelfHostedRunnersForOrg: ["GET /orgs/{org}/actions/runners"],
listSelfHostedRunnersForRepo: ["GET /repos/{owner}/{repo}/actions/runners"],
- listWorkflowRunArtifacts: ["GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts"],
- listWorkflowRuns: ["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs"],
+ listWorkflowRunArtifacts: [
+ "GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts"
+ ],
+ listWorkflowRuns: [
+ "GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs"
+ ],
listWorkflowRunsForRepo: ["GET /repos/{owner}/{repo}/actions/runs"],
- reRunJobForWorkflowRun: ["POST /repos/{owner}/{repo}/actions/jobs/{job_id}/rerun"],
+ reRunJobForWorkflowRun: [
+ "POST /repos/{owner}/{repo}/actions/jobs/{job_id}/rerun"
+ ],
reRunWorkflow: ["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun"],
- reRunWorkflowFailedJobs: ["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun-failed-jobs"],
- removeAllCustomLabelsFromSelfHostedRunnerForOrg: ["DELETE /orgs/{org}/actions/runners/{runner_id}/labels"],
- removeAllCustomLabelsFromSelfHostedRunnerForRepo: ["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],
- removeCustomLabelFromSelfHostedRunnerForOrg: ["DELETE /orgs/{org}/actions/runners/{runner_id}/labels/{name}"],
- removeCustomLabelFromSelfHostedRunnerForRepo: ["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels/{name}"],
- removeSelectedRepoFromOrgSecret: ["DELETE /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],
- reviewPendingDeploymentsForRun: ["POST /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],
- setAllowedActionsOrganization: ["PUT /orgs/{org}/actions/permissions/selected-actions"],
- setAllowedActionsRepository: ["PUT /repos/{owner}/{repo}/actions/permissions/selected-actions"],
- setCustomLabelsForSelfHostedRunnerForOrg: ["PUT /orgs/{org}/actions/runners/{runner_id}/labels"],
- setCustomLabelsForSelfHostedRunnerForRepo: ["PUT /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],
- setGithubActionsDefaultWorkflowPermissionsEnterprise: ["PUT /enterprises/{enterprise}/actions/permissions/workflow"],
- setGithubActionsDefaultWorkflowPermissionsOrganization: ["PUT /orgs/{org}/actions/permissions/workflow"],
- setGithubActionsDefaultWorkflowPermissionsRepository: ["PUT /repos/{owner}/{repo}/actions/permissions/workflow"],
- setGithubActionsPermissionsOrganization: ["PUT /orgs/{org}/actions/permissions"],
- setGithubActionsPermissionsRepository: ["PUT /repos/{owner}/{repo}/actions/permissions"],
- setSelectedReposForOrgSecret: ["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories"],
- setSelectedRepositoriesEnabledGithubActionsOrganization: ["PUT /orgs/{org}/actions/permissions/repositories"],
- setWorkflowAccessToRepository: ["PUT /repos/{owner}/{repo}/actions/permissions/access"]
+ reRunWorkflowFailedJobs: [
+ "POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun-failed-jobs"
+ ],
+ removeAllCustomLabelsFromSelfHostedRunnerForOrg: [
+ "DELETE /orgs/{org}/actions/runners/{runner_id}/labels"
+ ],
+ removeAllCustomLabelsFromSelfHostedRunnerForRepo: [
+ "DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"
+ ],
+ removeCustomLabelFromSelfHostedRunnerForOrg: [
+ "DELETE /orgs/{org}/actions/runners/{runner_id}/labels/{name}"
+ ],
+ removeCustomLabelFromSelfHostedRunnerForRepo: [
+ "DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels/{name}"
+ ],
+ removeSelectedRepoFromOrgSecret: [
+ "DELETE /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"
+ ],
+ removeSelectedRepoFromOrgVariable: [
+ "DELETE /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"
+ ],
+ reviewCustomGatesForRun: [
+ "POST /repos/{owner}/{repo}/actions/runs/{run_id}/deployment_protection_rule"
+ ],
+ reviewPendingDeploymentsForRun: [
+ "POST /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"
+ ],
+ setAllowedActionsOrganization: [
+ "PUT /orgs/{org}/actions/permissions/selected-actions"
+ ],
+ setAllowedActionsRepository: [
+ "PUT /repos/{owner}/{repo}/actions/permissions/selected-actions"
+ ],
+ setCustomLabelsForSelfHostedRunnerForOrg: [
+ "PUT /orgs/{org}/actions/runners/{runner_id}/labels"
+ ],
+ setCustomLabelsForSelfHostedRunnerForRepo: [
+ "PUT /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"
+ ],
+ setGithubActionsDefaultWorkflowPermissionsOrganization: [
+ "PUT /orgs/{org}/actions/permissions/workflow"
+ ],
+ setGithubActionsDefaultWorkflowPermissionsRepository: [
+ "PUT /repos/{owner}/{repo}/actions/permissions/workflow"
+ ],
+ setGithubActionsPermissionsOrganization: [
+ "PUT /orgs/{org}/actions/permissions"
+ ],
+ setGithubActionsPermissionsRepository: [
+ "PUT /repos/{owner}/{repo}/actions/permissions"
+ ],
+ setSelectedReposForOrgSecret: [
+ "PUT /orgs/{org}/actions/secrets/{secret_name}/repositories"
+ ],
+ setSelectedReposForOrgVariable: [
+ "PUT /orgs/{org}/actions/variables/{name}/repositories"
+ ],
+ setSelectedRepositoriesEnabledGithubActionsOrganization: [
+ "PUT /orgs/{org}/actions/permissions/repositories"
+ ],
+ setWorkflowAccessToRepository: [
+ "PUT /repos/{owner}/{repo}/actions/permissions/access"
+ ],
+ updateEnvironmentVariable: [
+ "PATCH /repositories/{repository_id}/environments/{environment_name}/variables/{name}"
+ ],
+ updateOrgVariable: ["PATCH /orgs/{org}/actions/variables/{name}"],
+ updateRepoVariable: [
+ "PATCH /repos/{owner}/{repo}/actions/variables/{name}"
+ ]
},
activity: {
checkRepoIsStarredByAuthenticatedUser: ["GET /user/starred/{owner}/{repo}"],
deleteRepoSubscription: ["DELETE /repos/{owner}/{repo}/subscription"],
- deleteThreadSubscription: ["DELETE /notifications/threads/{thread_id}/subscription"],
+ deleteThreadSubscription: [
+ "DELETE /notifications/threads/{thread_id}/subscription"
+ ],
getFeeds: ["GET /feeds"],
getRepoSubscription: ["GET /repos/{owner}/{repo}/subscription"],
getThread: ["GET /notifications/threads/{thread_id}"],
- getThreadSubscriptionForAuthenticatedUser: ["GET /notifications/threads/{thread_id}/subscription"],
+ getThreadSubscriptionForAuthenticatedUser: [
+ "GET /notifications/threads/{thread_id}/subscription"
+ ],
listEventsForAuthenticatedUser: ["GET /users/{username}/events"],
listNotificationsForAuthenticatedUser: ["GET /notifications"],
- listOrgEventsForAuthenticatedUser: ["GET /users/{username}/events/orgs/{org}"],
+ listOrgEventsForAuthenticatedUser: [
+ "GET /users/{username}/events/orgs/{org}"
+ ],
listPublicEvents: ["GET /events"],
listPublicEventsForRepoNetwork: ["GET /networks/{owner}/{repo}/events"],
listPublicEventsForUser: ["GET /users/{username}/events/public"],
listPublicOrgEvents: ["GET /orgs/{org}/events"],
listReceivedEventsForUser: ["GET /users/{username}/received_events"],
- listReceivedPublicEventsForUser: ["GET /users/{username}/received_events/public"],
+ listReceivedPublicEventsForUser: [
+ "GET /users/{username}/received_events/public"
+ ],
listRepoEvents: ["GET /repos/{owner}/{repo}/events"],
- listRepoNotificationsForAuthenticatedUser: ["GET /repos/{owner}/{repo}/notifications"],
+ listRepoNotificationsForAuthenticatedUser: [
+ "GET /repos/{owner}/{repo}/notifications"
+ ],
listReposStarredByAuthenticatedUser: ["GET /user/starred"],
listReposStarredByUser: ["GET /users/{username}/starred"],
listReposWatchedByUser: ["GET /users/{username}/subscriptions"],
@@ -7618,18 +8117,26 @@ const Endpoints = {
markRepoNotificationsAsRead: ["PUT /repos/{owner}/{repo}/notifications"],
markThreadAsRead: ["PATCH /notifications/threads/{thread_id}"],
setRepoSubscription: ["PUT /repos/{owner}/{repo}/subscription"],
- setThreadSubscription: ["PUT /notifications/threads/{thread_id}/subscription"],
+ setThreadSubscription: [
+ "PUT /notifications/threads/{thread_id}/subscription"
+ ],
starRepoForAuthenticatedUser: ["PUT /user/starred/{owner}/{repo}"],
unstarRepoForAuthenticatedUser: ["DELETE /user/starred/{owner}/{repo}"]
},
apps: {
- addRepoToInstallation: ["PUT /user/installations/{installation_id}/repositories/{repository_id}", {}, {
- renamed: ["apps", "addRepoToInstallationForAuthenticatedUser"]
- }],
- addRepoToInstallationForAuthenticatedUser: ["PUT /user/installations/{installation_id}/repositories/{repository_id}"],
+ addRepoToInstallation: [
+ "PUT /user/installations/{installation_id}/repositories/{repository_id}",
+ {},
+ { renamed: ["apps", "addRepoToInstallationForAuthenticatedUser"] }
+ ],
+ addRepoToInstallationForAuthenticatedUser: [
+ "PUT /user/installations/{installation_id}/repositories/{repository_id}"
+ ],
checkToken: ["POST /applications/{client_id}/token"],
createFromManifest: ["POST /app-manifests/{code}/conversions"],
- createInstallationAccessToken: ["POST /app/installations/{installation_id}/access_tokens"],
+ createInstallationAccessToken: [
+ "POST /app/installations/{installation_id}/access_tokens"
+ ],
deleteAuthorization: ["DELETE /applications/{client_id}/grant"],
deleteInstallation: ["DELETE /app/installations/{installation_id}"],
deleteToken: ["DELETE /applications/{client_id}/token"],
@@ -7638,75 +8145,132 @@ const Endpoints = {
getInstallation: ["GET /app/installations/{installation_id}"],
getOrgInstallation: ["GET /orgs/{org}/installation"],
getRepoInstallation: ["GET /repos/{owner}/{repo}/installation"],
- getSubscriptionPlanForAccount: ["GET /marketplace_listing/accounts/{account_id}"],
- getSubscriptionPlanForAccountStubbed: ["GET /marketplace_listing/stubbed/accounts/{account_id}"],
+ getSubscriptionPlanForAccount: [
+ "GET /marketplace_listing/accounts/{account_id}"
+ ],
+ getSubscriptionPlanForAccountStubbed: [
+ "GET /marketplace_listing/stubbed/accounts/{account_id}"
+ ],
getUserInstallation: ["GET /users/{username}/installation"],
getWebhookConfigForApp: ["GET /app/hook/config"],
getWebhookDelivery: ["GET /app/hook/deliveries/{delivery_id}"],
listAccountsForPlan: ["GET /marketplace_listing/plans/{plan_id}/accounts"],
- listAccountsForPlanStubbed: ["GET /marketplace_listing/stubbed/plans/{plan_id}/accounts"],
- listInstallationReposForAuthenticatedUser: ["GET /user/installations/{installation_id}/repositories"],
+ listAccountsForPlanStubbed: [
+ "GET /marketplace_listing/stubbed/plans/{plan_id}/accounts"
+ ],
+ listInstallationReposForAuthenticatedUser: [
+ "GET /user/installations/{installation_id}/repositories"
+ ],
+ listInstallationRequestsForAuthenticatedApp: [
+ "GET /app/installation-requests"
+ ],
listInstallations: ["GET /app/installations"],
listInstallationsForAuthenticatedUser: ["GET /user/installations"],
listPlans: ["GET /marketplace_listing/plans"],
listPlansStubbed: ["GET /marketplace_listing/stubbed/plans"],
listReposAccessibleToInstallation: ["GET /installation/repositories"],
listSubscriptionsForAuthenticatedUser: ["GET /user/marketplace_purchases"],
- listSubscriptionsForAuthenticatedUserStubbed: ["GET /user/marketplace_purchases/stubbed"],
+ listSubscriptionsForAuthenticatedUserStubbed: [
+ "GET /user/marketplace_purchases/stubbed"
+ ],
listWebhookDeliveries: ["GET /app/hook/deliveries"],
- redeliverWebhookDelivery: ["POST /app/hook/deliveries/{delivery_id}/attempts"],
- removeRepoFromInstallation: ["DELETE /user/installations/{installation_id}/repositories/{repository_id}", {}, {
- renamed: ["apps", "removeRepoFromInstallationForAuthenticatedUser"]
- }],
- removeRepoFromInstallationForAuthenticatedUser: ["DELETE /user/installations/{installation_id}/repositories/{repository_id}"],
+ redeliverWebhookDelivery: [
+ "POST /app/hook/deliveries/{delivery_id}/attempts"
+ ],
+ removeRepoFromInstallation: [
+ "DELETE /user/installations/{installation_id}/repositories/{repository_id}",
+ {},
+ { renamed: ["apps", "removeRepoFromInstallationForAuthenticatedUser"] }
+ ],
+ removeRepoFromInstallationForAuthenticatedUser: [
+ "DELETE /user/installations/{installation_id}/repositories/{repository_id}"
+ ],
resetToken: ["PATCH /applications/{client_id}/token"],
revokeInstallationAccessToken: ["DELETE /installation/token"],
scopeToken: ["POST /applications/{client_id}/token/scoped"],
suspendInstallation: ["PUT /app/installations/{installation_id}/suspended"],
- unsuspendInstallation: ["DELETE /app/installations/{installation_id}/suspended"],
+ unsuspendInstallation: [
+ "DELETE /app/installations/{installation_id}/suspended"
+ ],
updateWebhookConfigForApp: ["PATCH /app/hook/config"]
},
billing: {
getGithubActionsBillingOrg: ["GET /orgs/{org}/settings/billing/actions"],
- getGithubActionsBillingUser: ["GET /users/{username}/settings/billing/actions"],
- getGithubAdvancedSecurityBillingGhe: ["GET /enterprises/{enterprise}/settings/billing/advanced-security"],
- getGithubAdvancedSecurityBillingOrg: ["GET /orgs/{org}/settings/billing/advanced-security"],
+ getGithubActionsBillingUser: [
+ "GET /users/{username}/settings/billing/actions"
+ ],
getGithubPackagesBillingOrg: ["GET /orgs/{org}/settings/billing/packages"],
- getGithubPackagesBillingUser: ["GET /users/{username}/settings/billing/packages"],
- getSharedStorageBillingOrg: ["GET /orgs/{org}/settings/billing/shared-storage"],
- getSharedStorageBillingUser: ["GET /users/{username}/settings/billing/shared-storage"]
+ getGithubPackagesBillingUser: [
+ "GET /users/{username}/settings/billing/packages"
+ ],
+ getSharedStorageBillingOrg: [
+ "GET /orgs/{org}/settings/billing/shared-storage"
+ ],
+ getSharedStorageBillingUser: [
+ "GET /users/{username}/settings/billing/shared-storage"
+ ]
},
checks: {
create: ["POST /repos/{owner}/{repo}/check-runs"],
createSuite: ["POST /repos/{owner}/{repo}/check-suites"],
get: ["GET /repos/{owner}/{repo}/check-runs/{check_run_id}"],
getSuite: ["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}"],
- listAnnotations: ["GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations"],
+ listAnnotations: [
+ "GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations"
+ ],
listForRef: ["GET /repos/{owner}/{repo}/commits/{ref}/check-runs"],
- listForSuite: ["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs"],
+ listForSuite: [
+ "GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs"
+ ],
listSuitesForRef: ["GET /repos/{owner}/{repo}/commits/{ref}/check-suites"],
- rerequestRun: ["POST /repos/{owner}/{repo}/check-runs/{check_run_id}/rerequest"],
- rerequestSuite: ["POST /repos/{owner}/{repo}/check-suites/{check_suite_id}/rerequest"],
- setSuitesPreferences: ["PATCH /repos/{owner}/{repo}/check-suites/preferences"],
+ rerequestRun: [
+ "POST /repos/{owner}/{repo}/check-runs/{check_run_id}/rerequest"
+ ],
+ rerequestSuite: [
+ "POST /repos/{owner}/{repo}/check-suites/{check_suite_id}/rerequest"
+ ],
+ setSuitesPreferences: [
+ "PATCH /repos/{owner}/{repo}/check-suites/preferences"
+ ],
update: ["PATCH /repos/{owner}/{repo}/check-runs/{check_run_id}"]
},
codeScanning: {
- deleteAnalysis: ["DELETE /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}{?confirm_delete}"],
- getAlert: ["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}", {}, {
- renamedParameters: {
- alert_id: "alert_number"
- }
- }],
- getAnalysis: ["GET /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}"],
+ deleteAnalysis: [
+ "DELETE /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}{?confirm_delete}"
+ ],
+ getAlert: [
+ "GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}",
+ {},
+ { renamedParameters: { alert_id: "alert_number" } }
+ ],
+ getAnalysis: [
+ "GET /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}"
+ ],
+ getCodeqlDatabase: [
+ "GET /repos/{owner}/{repo}/code-scanning/codeql/databases/{language}"
+ ],
+ getDefaultSetup: ["GET /repos/{owner}/{repo}/code-scanning/default-setup"],
getSarif: ["GET /repos/{owner}/{repo}/code-scanning/sarifs/{sarif_id}"],
- listAlertInstances: ["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances"],
+ listAlertInstances: [
+ "GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances"
+ ],
listAlertsForOrg: ["GET /orgs/{org}/code-scanning/alerts"],
listAlertsForRepo: ["GET /repos/{owner}/{repo}/code-scanning/alerts"],
- listAlertsInstances: ["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances", {}, {
- renamed: ["codeScanning", "listAlertInstances"]
- }],
+ listAlertsInstances: [
+ "GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances",
+ {},
+ { renamed: ["codeScanning", "listAlertInstances"] }
+ ],
+ listCodeqlDatabases: [
+ "GET /repos/{owner}/{repo}/code-scanning/codeql/databases"
+ ],
listRecentAnalyses: ["GET /repos/{owner}/{repo}/code-scanning/analyses"],
- updateAlert: ["PATCH /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}"],
+ updateAlert: [
+ "PATCH /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}"
+ ],
+ updateDefaultSetup: [
+ "PATCH /repos/{owner}/{repo}/code-scanning/default-setup"
+ ],
uploadSarif: ["POST /repos/{owner}/{repo}/code-scanning/sarifs"]
},
codesOfConduct: {
@@ -7714,82 +8278,190 @@ const Endpoints = {
getConductCode: ["GET /codes_of_conduct/{key}"]
},
codespaces: {
- addRepositoryForSecretForAuthenticatedUser: ["PUT /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"],
- codespaceMachinesForAuthenticatedUser: ["GET /user/codespaces/{codespace_name}/machines"],
+ addRepositoryForSecretForAuthenticatedUser: [
+ "PUT /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"
+ ],
+ addSelectedRepoToOrgSecret: [
+ "PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}"
+ ],
+ checkPermissionsForDevcontainer: [
+ "GET /repos/{owner}/{repo}/codespaces/permissions_check"
+ ],
+ codespaceMachinesForAuthenticatedUser: [
+ "GET /user/codespaces/{codespace_name}/machines"
+ ],
createForAuthenticatedUser: ["POST /user/codespaces"],
- createOrUpdateRepoSecret: ["PUT /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],
- createOrUpdateSecretForAuthenticatedUser: ["PUT /user/codespaces/secrets/{secret_name}"],
- createWithPrForAuthenticatedUser: ["POST /repos/{owner}/{repo}/pulls/{pull_number}/codespaces"],
- createWithRepoForAuthenticatedUser: ["POST /repos/{owner}/{repo}/codespaces"],
+ createOrUpdateOrgSecret: [
+ "PUT /orgs/{org}/codespaces/secrets/{secret_name}"
+ ],
+ createOrUpdateRepoSecret: [
+ "PUT /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"
+ ],
+ createOrUpdateSecretForAuthenticatedUser: [
+ "PUT /user/codespaces/secrets/{secret_name}"
+ ],
+ createWithPrForAuthenticatedUser: [
+ "POST /repos/{owner}/{repo}/pulls/{pull_number}/codespaces"
+ ],
+ createWithRepoForAuthenticatedUser: [
+ "POST /repos/{owner}/{repo}/codespaces"
+ ],
deleteForAuthenticatedUser: ["DELETE /user/codespaces/{codespace_name}"],
- deleteFromOrganization: ["DELETE /orgs/{org}/members/{username}/codespaces/{codespace_name}"],
- deleteRepoSecret: ["DELETE /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],
- deleteSecretForAuthenticatedUser: ["DELETE /user/codespaces/secrets/{secret_name}"],
- exportForAuthenticatedUser: ["POST /user/codespaces/{codespace_name}/exports"],
- getExportDetailsForAuthenticatedUser: ["GET /user/codespaces/{codespace_name}/exports/{export_id}"],
+ deleteFromOrganization: [
+ "DELETE /orgs/{org}/members/{username}/codespaces/{codespace_name}"
+ ],
+ deleteOrgSecret: ["DELETE /orgs/{org}/codespaces/secrets/{secret_name}"],
+ deleteRepoSecret: [
+ "DELETE /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"
+ ],
+ deleteSecretForAuthenticatedUser: [
+ "DELETE /user/codespaces/secrets/{secret_name}"
+ ],
+ exportForAuthenticatedUser: [
+ "POST /user/codespaces/{codespace_name}/exports"
+ ],
+ getCodespacesForUserInOrg: [
+ "GET /orgs/{org}/members/{username}/codespaces"
+ ],
+ getExportDetailsForAuthenticatedUser: [
+ "GET /user/codespaces/{codespace_name}/exports/{export_id}"
+ ],
getForAuthenticatedUser: ["GET /user/codespaces/{codespace_name}"],
- getPublicKeyForAuthenticatedUser: ["GET /user/codespaces/secrets/public-key"],
- getRepoPublicKey: ["GET /repos/{owner}/{repo}/codespaces/secrets/public-key"],
- getRepoSecret: ["GET /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],
- getSecretForAuthenticatedUser: ["GET /user/codespaces/secrets/{secret_name}"],
- listDevcontainersInRepositoryForAuthenticatedUser: ["GET /repos/{owner}/{repo}/codespaces/devcontainers"],
+ getOrgPublicKey: ["GET /orgs/{org}/codespaces/secrets/public-key"],
+ getOrgSecret: ["GET /orgs/{org}/codespaces/secrets/{secret_name}"],
+ getPublicKeyForAuthenticatedUser: [
+ "GET /user/codespaces/secrets/public-key"
+ ],
+ getRepoPublicKey: [
+ "GET /repos/{owner}/{repo}/codespaces/secrets/public-key"
+ ],
+ getRepoSecret: [
+ "GET /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"
+ ],
+ getSecretForAuthenticatedUser: [
+ "GET /user/codespaces/secrets/{secret_name}"
+ ],
+ listDevcontainersInRepositoryForAuthenticatedUser: [
+ "GET /repos/{owner}/{repo}/codespaces/devcontainers"
+ ],
listForAuthenticatedUser: ["GET /user/codespaces"],
- listInOrganization: ["GET /orgs/{org}/codespaces", {}, {
- renamedParameters: {
- org_id: "org"
- }
- }],
- listInRepositoryForAuthenticatedUser: ["GET /repos/{owner}/{repo}/codespaces"],
+ listInOrganization: [
+ "GET /orgs/{org}/codespaces",
+ {},
+ { renamedParameters: { org_id: "org" } }
+ ],
+ listInRepositoryForAuthenticatedUser: [
+ "GET /repos/{owner}/{repo}/codespaces"
+ ],
+ listOrgSecrets: ["GET /orgs/{org}/codespaces/secrets"],
listRepoSecrets: ["GET /repos/{owner}/{repo}/codespaces/secrets"],
- listRepositoriesForSecretForAuthenticatedUser: ["GET /user/codespaces/secrets/{secret_name}/repositories"],
+ listRepositoriesForSecretForAuthenticatedUser: [
+ "GET /user/codespaces/secrets/{secret_name}/repositories"
+ ],
listSecretsForAuthenticatedUser: ["GET /user/codespaces/secrets"],
- removeRepositoryForSecretForAuthenticatedUser: ["DELETE /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"],
- repoMachinesForAuthenticatedUser: ["GET /repos/{owner}/{repo}/codespaces/machines"],
- setRepositoriesForSecretForAuthenticatedUser: ["PUT /user/codespaces/secrets/{secret_name}/repositories"],
+ listSelectedReposForOrgSecret: [
+ "GET /orgs/{org}/codespaces/secrets/{secret_name}/repositories"
+ ],
+ preFlightWithRepoForAuthenticatedUser: [
+ "GET /repos/{owner}/{repo}/codespaces/new"
+ ],
+ publishForAuthenticatedUser: [
+ "POST /user/codespaces/{codespace_name}/publish"
+ ],
+ removeRepositoryForSecretForAuthenticatedUser: [
+ "DELETE /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"
+ ],
+ removeSelectedRepoFromOrgSecret: [
+ "DELETE /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}"
+ ],
+ repoMachinesForAuthenticatedUser: [
+ "GET /repos/{owner}/{repo}/codespaces/machines"
+ ],
+ setRepositoriesForSecretForAuthenticatedUser: [
+ "PUT /user/codespaces/secrets/{secret_name}/repositories"
+ ],
+ setSelectedReposForOrgSecret: [
+ "PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories"
+ ],
startForAuthenticatedUser: ["POST /user/codespaces/{codespace_name}/start"],
stopForAuthenticatedUser: ["POST /user/codespaces/{codespace_name}/stop"],
- stopInOrganization: ["POST /orgs/{org}/members/{username}/codespaces/{codespace_name}/stop"],
+ stopInOrganization: [
+ "POST /orgs/{org}/members/{username}/codespaces/{codespace_name}/stop"
+ ],
updateForAuthenticatedUser: ["PATCH /user/codespaces/{codespace_name}"]
},
+ copilot: {
+ addCopilotForBusinessSeatsForTeams: [
+ "POST /orgs/{org}/copilot/billing/selected_teams"
+ ],
+ addCopilotForBusinessSeatsForUsers: [
+ "POST /orgs/{org}/copilot/billing/selected_users"
+ ],
+ cancelCopilotSeatAssignmentForTeams: [
+ "DELETE /orgs/{org}/copilot/billing/selected_teams"
+ ],
+ cancelCopilotSeatAssignmentForUsers: [
+ "DELETE /orgs/{org}/copilot/billing/selected_users"
+ ],
+ getCopilotOrganizationDetails: ["GET /orgs/{org}/copilot/billing"],
+ getCopilotSeatDetailsForUser: [
+ "GET /orgs/{org}/members/{username}/copilot"
+ ],
+ listCopilotSeats: ["GET /orgs/{org}/copilot/billing/seats"]
+ },
dependabot: {
- addSelectedRepoToOrgSecret: ["PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"],
- createOrUpdateOrgSecret: ["PUT /orgs/{org}/dependabot/secrets/{secret_name}"],
- createOrUpdateRepoSecret: ["PUT /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],
+ addSelectedRepoToOrgSecret: [
+ "PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"
+ ],
+ createOrUpdateOrgSecret: [
+ "PUT /orgs/{org}/dependabot/secrets/{secret_name}"
+ ],
+ createOrUpdateRepoSecret: [
+ "PUT /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"
+ ],
deleteOrgSecret: ["DELETE /orgs/{org}/dependabot/secrets/{secret_name}"],
- deleteRepoSecret: ["DELETE /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],
+ deleteRepoSecret: [
+ "DELETE /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"
+ ],
+ getAlert: ["GET /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"],
getOrgPublicKey: ["GET /orgs/{org}/dependabot/secrets/public-key"],
getOrgSecret: ["GET /orgs/{org}/dependabot/secrets/{secret_name}"],
- getRepoPublicKey: ["GET /repos/{owner}/{repo}/dependabot/secrets/public-key"],
- getRepoSecret: ["GET /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],
+ getRepoPublicKey: [
+ "GET /repos/{owner}/{repo}/dependabot/secrets/public-key"
+ ],
+ getRepoSecret: [
+ "GET /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"
+ ],
+ listAlertsForEnterprise: [
+ "GET /enterprises/{enterprise}/dependabot/alerts"
+ ],
+ listAlertsForOrg: ["GET /orgs/{org}/dependabot/alerts"],
+ listAlertsForRepo: ["GET /repos/{owner}/{repo}/dependabot/alerts"],
listOrgSecrets: ["GET /orgs/{org}/dependabot/secrets"],
listRepoSecrets: ["GET /repos/{owner}/{repo}/dependabot/secrets"],
- listSelectedReposForOrgSecret: ["GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories"],
- removeSelectedRepoFromOrgSecret: ["DELETE /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"],
- setSelectedReposForOrgSecret: ["PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories"]
+ listSelectedReposForOrgSecret: [
+ "GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories"
+ ],
+ removeSelectedRepoFromOrgSecret: [
+ "DELETE /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"
+ ],
+ setSelectedReposForOrgSecret: [
+ "PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories"
+ ],
+ updateAlert: [
+ "PATCH /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"
+ ]
},
dependencyGraph: {
- createRepositorySnapshot: ["POST /repos/{owner}/{repo}/dependency-graph/snapshots"],
- diffRange: ["GET /repos/{owner}/{repo}/dependency-graph/compare/{basehead}"]
- },
- emojis: {
- get: ["GET /emojis"]
- },
- enterpriseAdmin: {
- addCustomLabelsToSelfHostedRunnerForEnterprise: ["POST /enterprises/{enterprise}/actions/runners/{runner_id}/labels"],
- disableSelectedOrganizationGithubActionsEnterprise: ["DELETE /enterprises/{enterprise}/actions/permissions/organizations/{org_id}"],
- enableSelectedOrganizationGithubActionsEnterprise: ["PUT /enterprises/{enterprise}/actions/permissions/organizations/{org_id}"],
- getAllowedActionsEnterprise: ["GET /enterprises/{enterprise}/actions/permissions/selected-actions"],
- getGithubActionsPermissionsEnterprise: ["GET /enterprises/{enterprise}/actions/permissions"],
- getServerStatistics: ["GET /enterprise-installation/{enterprise_or_org}/server-statistics"],
- listLabelsForSelfHostedRunnerForEnterprise: ["GET /enterprises/{enterprise}/actions/runners/{runner_id}/labels"],
- listSelectedOrganizationsEnabledGithubActionsEnterprise: ["GET /enterprises/{enterprise}/actions/permissions/organizations"],
- removeAllCustomLabelsFromSelfHostedRunnerForEnterprise: ["DELETE /enterprises/{enterprise}/actions/runners/{runner_id}/labels"],
- removeCustomLabelFromSelfHostedRunnerForEnterprise: ["DELETE /enterprises/{enterprise}/actions/runners/{runner_id}/labels/{name}"],
- setAllowedActionsEnterprise: ["PUT /enterprises/{enterprise}/actions/permissions/selected-actions"],
- setCustomLabelsForSelfHostedRunnerForEnterprise: ["PUT /enterprises/{enterprise}/actions/runners/{runner_id}/labels"],
- setGithubActionsPermissionsEnterprise: ["PUT /enterprises/{enterprise}/actions/permissions"],
- setSelectedOrganizationsEnabledGithubActionsEnterprise: ["PUT /enterprises/{enterprise}/actions/permissions/organizations"]
+ createRepositorySnapshot: [
+ "POST /repos/{owner}/{repo}/dependency-graph/snapshots"
+ ],
+ diffRange: [
+ "GET /repos/{owner}/{repo}/dependency-graph/compare/{basehead}"
+ ],
+ exportSbom: ["GET /repos/{owner}/{repo}/dependency-graph/sbom"]
},
+ emojis: { get: ["GET /emojis"] },
gists: {
checkIsStarred: ["GET /gists/{gist_id}/star"],
create: ["POST /gists"],
@@ -7835,33 +8507,52 @@ const Endpoints = {
getRestrictionsForAuthenticatedUser: ["GET /user/interaction-limits"],
getRestrictionsForOrg: ["GET /orgs/{org}/interaction-limits"],
getRestrictionsForRepo: ["GET /repos/{owner}/{repo}/interaction-limits"],
- getRestrictionsForYourPublicRepos: ["GET /user/interaction-limits", {}, {
- renamed: ["interactions", "getRestrictionsForAuthenticatedUser"]
- }],
+ getRestrictionsForYourPublicRepos: [
+ "GET /user/interaction-limits",
+ {},
+ { renamed: ["interactions", "getRestrictionsForAuthenticatedUser"] }
+ ],
removeRestrictionsForAuthenticatedUser: ["DELETE /user/interaction-limits"],
removeRestrictionsForOrg: ["DELETE /orgs/{org}/interaction-limits"],
- removeRestrictionsForRepo: ["DELETE /repos/{owner}/{repo}/interaction-limits"],
- removeRestrictionsForYourPublicRepos: ["DELETE /user/interaction-limits", {}, {
- renamed: ["interactions", "removeRestrictionsForAuthenticatedUser"]
- }],
+ removeRestrictionsForRepo: [
+ "DELETE /repos/{owner}/{repo}/interaction-limits"
+ ],
+ removeRestrictionsForYourPublicRepos: [
+ "DELETE /user/interaction-limits",
+ {},
+ { renamed: ["interactions", "removeRestrictionsForAuthenticatedUser"] }
+ ],
setRestrictionsForAuthenticatedUser: ["PUT /user/interaction-limits"],
setRestrictionsForOrg: ["PUT /orgs/{org}/interaction-limits"],
setRestrictionsForRepo: ["PUT /repos/{owner}/{repo}/interaction-limits"],
- setRestrictionsForYourPublicRepos: ["PUT /user/interaction-limits", {}, {
- renamed: ["interactions", "setRestrictionsForAuthenticatedUser"]
- }]
+ setRestrictionsForYourPublicRepos: [
+ "PUT /user/interaction-limits",
+ {},
+ { renamed: ["interactions", "setRestrictionsForAuthenticatedUser"] }
+ ]
},
issues: {
- addAssignees: ["POST /repos/{owner}/{repo}/issues/{issue_number}/assignees"],
+ addAssignees: [
+ "POST /repos/{owner}/{repo}/issues/{issue_number}/assignees"
+ ],
addLabels: ["POST /repos/{owner}/{repo}/issues/{issue_number}/labels"],
checkUserCanBeAssigned: ["GET /repos/{owner}/{repo}/assignees/{assignee}"],
+ checkUserCanBeAssignedToIssue: [
+ "GET /repos/{owner}/{repo}/issues/{issue_number}/assignees/{assignee}"
+ ],
create: ["POST /repos/{owner}/{repo}/issues"],
- createComment: ["POST /repos/{owner}/{repo}/issues/{issue_number}/comments"],
+ createComment: [
+ "POST /repos/{owner}/{repo}/issues/{issue_number}/comments"
+ ],
createLabel: ["POST /repos/{owner}/{repo}/labels"],
createMilestone: ["POST /repos/{owner}/{repo}/milestones"],
- deleteComment: ["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}"],
+ deleteComment: [
+ "DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}"
+ ],
deleteLabel: ["DELETE /repos/{owner}/{repo}/labels/{name}"],
- deleteMilestone: ["DELETE /repos/{owner}/{repo}/milestones/{milestone_number}"],
+ deleteMilestone: [
+ "DELETE /repos/{owner}/{repo}/milestones/{milestone_number}"
+ ],
get: ["GET /repos/{owner}/{repo}/issues/{issue_number}"],
getComment: ["GET /repos/{owner}/{repo}/issues/comments/{comment_id}"],
getEvent: ["GET /repos/{owner}/{repo}/issues/events/{event_id}"],
@@ -7873,24 +8564,38 @@ const Endpoints = {
listCommentsForRepo: ["GET /repos/{owner}/{repo}/issues/comments"],
listEvents: ["GET /repos/{owner}/{repo}/issues/{issue_number}/events"],
listEventsForRepo: ["GET /repos/{owner}/{repo}/issues/events"],
- listEventsForTimeline: ["GET /repos/{owner}/{repo}/issues/{issue_number}/timeline"],
+ listEventsForTimeline: [
+ "GET /repos/{owner}/{repo}/issues/{issue_number}/timeline"
+ ],
listForAuthenticatedUser: ["GET /user/issues"],
listForOrg: ["GET /orgs/{org}/issues"],
listForRepo: ["GET /repos/{owner}/{repo}/issues"],
- listLabelsForMilestone: ["GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels"],
+ listLabelsForMilestone: [
+ "GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels"
+ ],
listLabelsForRepo: ["GET /repos/{owner}/{repo}/labels"],
- listLabelsOnIssue: ["GET /repos/{owner}/{repo}/issues/{issue_number}/labels"],
+ listLabelsOnIssue: [
+ "GET /repos/{owner}/{repo}/issues/{issue_number}/labels"
+ ],
listMilestones: ["GET /repos/{owner}/{repo}/milestones"],
lock: ["PUT /repos/{owner}/{repo}/issues/{issue_number}/lock"],
- removeAllLabels: ["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels"],
- removeAssignees: ["DELETE /repos/{owner}/{repo}/issues/{issue_number}/assignees"],
- removeLabel: ["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels/{name}"],
+ removeAllLabels: [
+ "DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels"
+ ],
+ removeAssignees: [
+ "DELETE /repos/{owner}/{repo}/issues/{issue_number}/assignees"
+ ],
+ removeLabel: [
+ "DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels/{name}"
+ ],
setLabels: ["PUT /repos/{owner}/{repo}/issues/{issue_number}/labels"],
unlock: ["DELETE /repos/{owner}/{repo}/issues/{issue_number}/lock"],
update: ["PATCH /repos/{owner}/{repo}/issues/{issue_number}"],
updateComment: ["PATCH /repos/{owner}/{repo}/issues/comments/{comment_id}"],
updateLabel: ["PATCH /repos/{owner}/{repo}/labels/{name}"],
- updateMilestone: ["PATCH /repos/{owner}/{repo}/milestones/{milestone_number}"]
+ updateMilestone: [
+ "PATCH /repos/{owner}/{repo}/milestones/{milestone_number}"
+ ]
},
licenses: {
get: ["GET /licenses/{license}"],
@@ -7899,65 +8604,151 @@ const Endpoints = {
},
markdown: {
render: ["POST /markdown"],
- renderRaw: ["POST /markdown/raw", {
- headers: {
- "content-type": "text/plain; charset=utf-8"
- }
- }]
+ renderRaw: [
+ "POST /markdown/raw",
+ { headers: { "content-type": "text/plain; charset=utf-8" } }
+ ]
},
meta: {
get: ["GET /meta"],
+ getAllVersions: ["GET /versions"],
getOctocat: ["GET /octocat"],
getZen: ["GET /zen"],
root: ["GET /"]
},
migrations: {
- cancelImport: ["DELETE /repos/{owner}/{repo}/import"],
- deleteArchiveForAuthenticatedUser: ["DELETE /user/migrations/{migration_id}/archive"],
- deleteArchiveForOrg: ["DELETE /orgs/{org}/migrations/{migration_id}/archive"],
- downloadArchiveForOrg: ["GET /orgs/{org}/migrations/{migration_id}/archive"],
- getArchiveForAuthenticatedUser: ["GET /user/migrations/{migration_id}/archive"],
- getCommitAuthors: ["GET /repos/{owner}/{repo}/import/authors"],
- getImportStatus: ["GET /repos/{owner}/{repo}/import"],
- getLargeFiles: ["GET /repos/{owner}/{repo}/import/large_files"],
+ cancelImport: [
+ "DELETE /repos/{owner}/{repo}/import",
+ {},
+ {
+ deprecated: "octokit.rest.migrations.cancelImport() is deprecated, see https://docs.github.com/rest/migrations/source-imports#cancel-an-import"
+ }
+ ],
+ deleteArchiveForAuthenticatedUser: [
+ "DELETE /user/migrations/{migration_id}/archive"
+ ],
+ deleteArchiveForOrg: [
+ "DELETE /orgs/{org}/migrations/{migration_id}/archive"
+ ],
+ downloadArchiveForOrg: [
+ "GET /orgs/{org}/migrations/{migration_id}/archive"
+ ],
+ getArchiveForAuthenticatedUser: [
+ "GET /user/migrations/{migration_id}/archive"
+ ],
+ getCommitAuthors: [
+ "GET /repos/{owner}/{repo}/import/authors",
+ {},
+ {
+ deprecated: "octokit.rest.migrations.getCommitAuthors() is deprecated, see https://docs.github.com/rest/migrations/source-imports#get-commit-authors"
+ }
+ ],
+ getImportStatus: [
+ "GET /repos/{owner}/{repo}/import",
+ {},
+ {
+ deprecated: "octokit.rest.migrations.getImportStatus() is deprecated, see https://docs.github.com/rest/migrations/source-imports#get-an-import-status"
+ }
+ ],
+ getLargeFiles: [
+ "GET /repos/{owner}/{repo}/import/large_files",
+ {},
+ {
+ deprecated: "octokit.rest.migrations.getLargeFiles() is deprecated, see https://docs.github.com/rest/migrations/source-imports#get-large-files"
+ }
+ ],
getStatusForAuthenticatedUser: ["GET /user/migrations/{migration_id}"],
getStatusForOrg: ["GET /orgs/{org}/migrations/{migration_id}"],
listForAuthenticatedUser: ["GET /user/migrations"],
listForOrg: ["GET /orgs/{org}/migrations"],
- listReposForAuthenticatedUser: ["GET /user/migrations/{migration_id}/repositories"],
+ listReposForAuthenticatedUser: [
+ "GET /user/migrations/{migration_id}/repositories"
+ ],
listReposForOrg: ["GET /orgs/{org}/migrations/{migration_id}/repositories"],
- listReposForUser: ["GET /user/migrations/{migration_id}/repositories", {}, {
- renamed: ["migrations", "listReposForAuthenticatedUser"]
- }],
- mapCommitAuthor: ["PATCH /repos/{owner}/{repo}/import/authors/{author_id}"],
- setLfsPreference: ["PATCH /repos/{owner}/{repo}/import/lfs"],
+ listReposForUser: [
+ "GET /user/migrations/{migration_id}/repositories",
+ {},
+ { renamed: ["migrations", "listReposForAuthenticatedUser"] }
+ ],
+ mapCommitAuthor: [
+ "PATCH /repos/{owner}/{repo}/import/authors/{author_id}",
+ {},
+ {
+ deprecated: "octokit.rest.migrations.mapCommitAuthor() is deprecated, see https://docs.github.com/rest/migrations/source-imports#map-a-commit-author"
+ }
+ ],
+ setLfsPreference: [
+ "PATCH /repos/{owner}/{repo}/import/lfs",
+ {},
+ {
+ deprecated: "octokit.rest.migrations.setLfsPreference() is deprecated, see https://docs.github.com/rest/migrations/source-imports#update-git-lfs-preference"
+ }
+ ],
startForAuthenticatedUser: ["POST /user/migrations"],
startForOrg: ["POST /orgs/{org}/migrations"],
- startImport: ["PUT /repos/{owner}/{repo}/import"],
- unlockRepoForAuthenticatedUser: ["DELETE /user/migrations/{migration_id}/repos/{repo_name}/lock"],
- unlockRepoForOrg: ["DELETE /orgs/{org}/migrations/{migration_id}/repos/{repo_name}/lock"],
- updateImport: ["PATCH /repos/{owner}/{repo}/import"]
+ startImport: [
+ "PUT /repos/{owner}/{repo}/import",
+ {},
+ {
+ deprecated: "octokit.rest.migrations.startImport() is deprecated, see https://docs.github.com/rest/migrations/source-imports#start-an-import"
+ }
+ ],
+ unlockRepoForAuthenticatedUser: [
+ "DELETE /user/migrations/{migration_id}/repos/{repo_name}/lock"
+ ],
+ unlockRepoForOrg: [
+ "DELETE /orgs/{org}/migrations/{migration_id}/repos/{repo_name}/lock"
+ ],
+ updateImport: [
+ "PATCH /repos/{owner}/{repo}/import",
+ {},
+ {
+ deprecated: "octokit.rest.migrations.updateImport() is deprecated, see https://docs.github.com/rest/migrations/source-imports#update-an-import"
+ }
+ ]
},
orgs: {
+ addSecurityManagerTeam: [
+ "PUT /orgs/{org}/security-managers/teams/{team_slug}"
+ ],
blockUser: ["PUT /orgs/{org}/blocks/{username}"],
cancelInvitation: ["DELETE /orgs/{org}/invitations/{invitation_id}"],
checkBlockedUser: ["GET /orgs/{org}/blocks/{username}"],
checkMembershipForUser: ["GET /orgs/{org}/members/{username}"],
checkPublicMembershipForUser: ["GET /orgs/{org}/public_members/{username}"],
- convertMemberToOutsideCollaborator: ["PUT /orgs/{org}/outside_collaborators/{username}"],
+ convertMemberToOutsideCollaborator: [
+ "PUT /orgs/{org}/outside_collaborators/{username}"
+ ],
createInvitation: ["POST /orgs/{org}/invitations"],
+ createOrUpdateCustomProperties: ["PATCH /orgs/{org}/properties/schema"],
+ createOrUpdateCustomPropertiesValuesForRepos: [
+ "PATCH /orgs/{org}/properties/values"
+ ],
+ createOrUpdateCustomProperty: [
+ "PUT /orgs/{org}/properties/schema/{custom_property_name}"
+ ],
createWebhook: ["POST /orgs/{org}/hooks"],
+ delete: ["DELETE /orgs/{org}"],
deleteWebhook: ["DELETE /orgs/{org}/hooks/{hook_id}"],
+ enableOrDisableSecurityProductOnAllOrgRepos: [
+ "POST /orgs/{org}/{security_product}/{enablement}"
+ ],
get: ["GET /orgs/{org}"],
+ getAllCustomProperties: ["GET /orgs/{org}/properties/schema"],
+ getCustomProperty: [
+ "GET /orgs/{org}/properties/schema/{custom_property_name}"
+ ],
getMembershipForAuthenticatedUser: ["GET /user/memberships/orgs/{org}"],
getMembershipForUser: ["GET /orgs/{org}/memberships/{username}"],
getWebhook: ["GET /orgs/{org}/hooks/{hook_id}"],
getWebhookConfigForOrg: ["GET /orgs/{org}/hooks/{hook_id}/config"],
- getWebhookDelivery: ["GET /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}"],
+ getWebhookDelivery: [
+ "GET /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}"
+ ],
list: ["GET /organizations"],
listAppInstallations: ["GET /orgs/{org}/installations"],
listBlockedUsers: ["GET /orgs/{org}/blocks"],
- listCustomRoles: ["GET /organizations/{organization_id}/custom_roles"],
+ listCustomPropertiesValuesForRepos: ["GET /orgs/{org}/properties/values"],
listFailedInvitations: ["GET /orgs/{org}/failed_invitations"],
listForAuthenticatedUser: ["GET /user/orgs"],
listForUser: ["GET /users/{username}/orgs"],
@@ -7965,55 +8756,148 @@ const Endpoints = {
listMembers: ["GET /orgs/{org}/members"],
listMembershipsForAuthenticatedUser: ["GET /user/memberships/orgs"],
listOutsideCollaborators: ["GET /orgs/{org}/outside_collaborators"],
+ listPatGrantRepositories: [
+ "GET /orgs/{org}/personal-access-tokens/{pat_id}/repositories"
+ ],
+ listPatGrantRequestRepositories: [
+ "GET /orgs/{org}/personal-access-token-requests/{pat_request_id}/repositories"
+ ],
+ listPatGrantRequests: ["GET /orgs/{org}/personal-access-token-requests"],
+ listPatGrants: ["GET /orgs/{org}/personal-access-tokens"],
listPendingInvitations: ["GET /orgs/{org}/invitations"],
listPublicMembers: ["GET /orgs/{org}/public_members"],
+ listSecurityManagerTeams: ["GET /orgs/{org}/security-managers"],
listWebhookDeliveries: ["GET /orgs/{org}/hooks/{hook_id}/deliveries"],
listWebhooks: ["GET /orgs/{org}/hooks"],
pingWebhook: ["POST /orgs/{org}/hooks/{hook_id}/pings"],
- redeliverWebhookDelivery: ["POST /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"],
+ redeliverWebhookDelivery: [
+ "POST /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"
+ ],
+ removeCustomProperty: [
+ "DELETE /orgs/{org}/properties/schema/{custom_property_name}"
+ ],
removeMember: ["DELETE /orgs/{org}/members/{username}"],
removeMembershipForUser: ["DELETE /orgs/{org}/memberships/{username}"],
- removeOutsideCollaborator: ["DELETE /orgs/{org}/outside_collaborators/{username}"],
- removePublicMembershipForAuthenticatedUser: ["DELETE /orgs/{org}/public_members/{username}"],
+ removeOutsideCollaborator: [
+ "DELETE /orgs/{org}/outside_collaborators/{username}"
+ ],
+ removePublicMembershipForAuthenticatedUser: [
+ "DELETE /orgs/{org}/public_members/{username}"
+ ],
+ removeSecurityManagerTeam: [
+ "DELETE /orgs/{org}/security-managers/teams/{team_slug}"
+ ],
+ reviewPatGrantRequest: [
+ "POST /orgs/{org}/personal-access-token-requests/{pat_request_id}"
+ ],
+ reviewPatGrantRequestsInBulk: [
+ "POST /orgs/{org}/personal-access-token-requests"
+ ],
setMembershipForUser: ["PUT /orgs/{org}/memberships/{username}"],
- setPublicMembershipForAuthenticatedUser: ["PUT /orgs/{org}/public_members/{username}"],
+ setPublicMembershipForAuthenticatedUser: [
+ "PUT /orgs/{org}/public_members/{username}"
+ ],
unblockUser: ["DELETE /orgs/{org}/blocks/{username}"],
update: ["PATCH /orgs/{org}"],
- updateMembershipForAuthenticatedUser: ["PATCH /user/memberships/orgs/{org}"],
+ updateMembershipForAuthenticatedUser: [
+ "PATCH /user/memberships/orgs/{org}"
+ ],
+ updatePatAccess: ["POST /orgs/{org}/personal-access-tokens/{pat_id}"],
+ updatePatAccesses: ["POST /orgs/{org}/personal-access-tokens"],
updateWebhook: ["PATCH /orgs/{org}/hooks/{hook_id}"],
updateWebhookConfigForOrg: ["PATCH /orgs/{org}/hooks/{hook_id}/config"]
},
packages: {
- deletePackageForAuthenticatedUser: ["DELETE /user/packages/{package_type}/{package_name}"],
- deletePackageForOrg: ["DELETE /orgs/{org}/packages/{package_type}/{package_name}"],
- deletePackageForUser: ["DELETE /users/{username}/packages/{package_type}/{package_name}"],
- deletePackageVersionForAuthenticatedUser: ["DELETE /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],
- deletePackageVersionForOrg: ["DELETE /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],
- deletePackageVersionForUser: ["DELETE /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],
- getAllPackageVersionsForAPackageOwnedByAnOrg: ["GET /orgs/{org}/packages/{package_type}/{package_name}/versions", {}, {
- renamed: ["packages", "getAllPackageVersionsForPackageOwnedByOrg"]
- }],
- getAllPackageVersionsForAPackageOwnedByTheAuthenticatedUser: ["GET /user/packages/{package_type}/{package_name}/versions", {}, {
- renamed: ["packages", "getAllPackageVersionsForPackageOwnedByAuthenticatedUser"]
- }],
- getAllPackageVersionsForPackageOwnedByAuthenticatedUser: ["GET /user/packages/{package_type}/{package_name}/versions"],
- getAllPackageVersionsForPackageOwnedByOrg: ["GET /orgs/{org}/packages/{package_type}/{package_name}/versions"],
- getAllPackageVersionsForPackageOwnedByUser: ["GET /users/{username}/packages/{package_type}/{package_name}/versions"],
- getPackageForAuthenticatedUser: ["GET /user/packages/{package_type}/{package_name}"],
- getPackageForOrganization: ["GET /orgs/{org}/packages/{package_type}/{package_name}"],
- getPackageForUser: ["GET /users/{username}/packages/{package_type}/{package_name}"],
- getPackageVersionForAuthenticatedUser: ["GET /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],
- getPackageVersionForOrganization: ["GET /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],
- getPackageVersionForUser: ["GET /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],
+ deletePackageForAuthenticatedUser: [
+ "DELETE /user/packages/{package_type}/{package_name}"
+ ],
+ deletePackageForOrg: [
+ "DELETE /orgs/{org}/packages/{package_type}/{package_name}"
+ ],
+ deletePackageForUser: [
+ "DELETE /users/{username}/packages/{package_type}/{package_name}"
+ ],
+ deletePackageVersionForAuthenticatedUser: [
+ "DELETE /user/packages/{package_type}/{package_name}/versions/{package_version_id}"
+ ],
+ deletePackageVersionForOrg: [
+ "DELETE /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"
+ ],
+ deletePackageVersionForUser: [
+ "DELETE /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"
+ ],
+ getAllPackageVersionsForAPackageOwnedByAnOrg: [
+ "GET /orgs/{org}/packages/{package_type}/{package_name}/versions",
+ {},
+ { renamed: ["packages", "getAllPackageVersionsForPackageOwnedByOrg"] }
+ ],
+ getAllPackageVersionsForAPackageOwnedByTheAuthenticatedUser: [
+ "GET /user/packages/{package_type}/{package_name}/versions",
+ {},
+ {
+ renamed: [
+ "packages",
+ "getAllPackageVersionsForPackageOwnedByAuthenticatedUser"
+ ]
+ }
+ ],
+ getAllPackageVersionsForPackageOwnedByAuthenticatedUser: [
+ "GET /user/packages/{package_type}/{package_name}/versions"
+ ],
+ getAllPackageVersionsForPackageOwnedByOrg: [
+ "GET /orgs/{org}/packages/{package_type}/{package_name}/versions"
+ ],
+ getAllPackageVersionsForPackageOwnedByUser: [
+ "GET /users/{username}/packages/{package_type}/{package_name}/versions"
+ ],
+ getPackageForAuthenticatedUser: [
+ "GET /user/packages/{package_type}/{package_name}"
+ ],
+ getPackageForOrganization: [
+ "GET /orgs/{org}/packages/{package_type}/{package_name}"
+ ],
+ getPackageForUser: [
+ "GET /users/{username}/packages/{package_type}/{package_name}"
+ ],
+ getPackageVersionForAuthenticatedUser: [
+ "GET /user/packages/{package_type}/{package_name}/versions/{package_version_id}"
+ ],
+ getPackageVersionForOrganization: [
+ "GET /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"
+ ],
+ getPackageVersionForUser: [
+ "GET /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"
+ ],
+ listDockerMigrationConflictingPackagesForAuthenticatedUser: [
+ "GET /user/docker/conflicts"
+ ],
+ listDockerMigrationConflictingPackagesForOrganization: [
+ "GET /orgs/{org}/docker/conflicts"
+ ],
+ listDockerMigrationConflictingPackagesForUser: [
+ "GET /users/{username}/docker/conflicts"
+ ],
listPackagesForAuthenticatedUser: ["GET /user/packages"],
listPackagesForOrganization: ["GET /orgs/{org}/packages"],
listPackagesForUser: ["GET /users/{username}/packages"],
- restorePackageForAuthenticatedUser: ["POST /user/packages/{package_type}/{package_name}/restore{?token}"],
- restorePackageForOrg: ["POST /orgs/{org}/packages/{package_type}/{package_name}/restore{?token}"],
- restorePackageForUser: ["POST /users/{username}/packages/{package_type}/{package_name}/restore{?token}"],
- restorePackageVersionForAuthenticatedUser: ["POST /user/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],
- restorePackageVersionForOrg: ["POST /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],
- restorePackageVersionForUser: ["POST /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"]
+ restorePackageForAuthenticatedUser: [
+ "POST /user/packages/{package_type}/{package_name}/restore{?token}"
+ ],
+ restorePackageForOrg: [
+ "POST /orgs/{org}/packages/{package_type}/{package_name}/restore{?token}"
+ ],
+ restorePackageForUser: [
+ "POST /users/{username}/packages/{package_type}/{package_name}/restore{?token}"
+ ],
+ restorePackageVersionForAuthenticatedUser: [
+ "POST /user/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"
+ ],
+ restorePackageVersionForOrg: [
+ "POST /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"
+ ],
+ restorePackageVersionForUser: [
+ "POST /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"
+ ]
},
projects: {
addCollaborator: ["PUT /projects/{project_id}/collaborators/{username}"],
@@ -8028,7 +8912,9 @@ const Endpoints = {
get: ["GET /projects/{project_id}"],
getCard: ["GET /projects/columns/cards/{card_id}"],
getColumn: ["GET /projects/columns/{column_id}"],
- getPermissionForUser: ["GET /projects/{project_id}/collaborators/{username}/permission"],
+ getPermissionForUser: [
+ "GET /projects/{project_id}/collaborators/{username}/permission"
+ ],
listCards: ["GET /projects/columns/{column_id}/cards"],
listCollaborators: ["GET /projects/{project_id}/collaborators"],
listColumns: ["GET /projects/{project_id}/columns"],
@@ -8037,7 +8923,9 @@ const Endpoints = {
listForUser: ["GET /users/{username}/projects"],
moveCard: ["POST /projects/columns/cards/{card_id}/moves"],
moveColumn: ["POST /projects/columns/{column_id}/moves"],
- removeCollaborator: ["DELETE /projects/{project_id}/collaborators/{username}"],
+ removeCollaborator: [
+ "DELETE /projects/{project_id}/collaborators/{username}"
+ ],
update: ["PATCH /projects/{project_id}"],
updateCard: ["PATCH /projects/columns/cards/{card_id}"],
updateColumn: ["PATCH /projects/columns/{column_id}"]
@@ -8045,191 +8933,411 @@ const Endpoints = {
pulls: {
checkIfMerged: ["GET /repos/{owner}/{repo}/pulls/{pull_number}/merge"],
create: ["POST /repos/{owner}/{repo}/pulls"],
- createReplyForReviewComment: ["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments/{comment_id}/replies"],
+ createReplyForReviewComment: [
+ "POST /repos/{owner}/{repo}/pulls/{pull_number}/comments/{comment_id}/replies"
+ ],
createReview: ["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],
- createReviewComment: ["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments"],
- deletePendingReview: ["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],
- deleteReviewComment: ["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}"],
- dismissReview: ["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/dismissals"],
+ createReviewComment: [
+ "POST /repos/{owner}/{repo}/pulls/{pull_number}/comments"
+ ],
+ deletePendingReview: [
+ "DELETE /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"
+ ],
+ deleteReviewComment: [
+ "DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}"
+ ],
+ dismissReview: [
+ "PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/dismissals"
+ ],
get: ["GET /repos/{owner}/{repo}/pulls/{pull_number}"],
- getReview: ["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],
+ getReview: [
+ "GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"
+ ],
getReviewComment: ["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}"],
list: ["GET /repos/{owner}/{repo}/pulls"],
- listCommentsForReview: ["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments"],
+ listCommentsForReview: [
+ "GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments"
+ ],
listCommits: ["GET /repos/{owner}/{repo}/pulls/{pull_number}/commits"],
listFiles: ["GET /repos/{owner}/{repo}/pulls/{pull_number}/files"],
- listRequestedReviewers: ["GET /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],
- listReviewComments: ["GET /repos/{owner}/{repo}/pulls/{pull_number}/comments"],
+ listRequestedReviewers: [
+ "GET /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"
+ ],
+ listReviewComments: [
+ "GET /repos/{owner}/{repo}/pulls/{pull_number}/comments"
+ ],
listReviewCommentsForRepo: ["GET /repos/{owner}/{repo}/pulls/comments"],
listReviews: ["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],
merge: ["PUT /repos/{owner}/{repo}/pulls/{pull_number}/merge"],
- removeRequestedReviewers: ["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],
- requestReviewers: ["POST /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],
- submitReview: ["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/events"],
+ removeRequestedReviewers: [
+ "DELETE /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"
+ ],
+ requestReviewers: [
+ "POST /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"
+ ],
+ submitReview: [
+ "POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/events"
+ ],
update: ["PATCH /repos/{owner}/{repo}/pulls/{pull_number}"],
- updateBranch: ["PUT /repos/{owner}/{repo}/pulls/{pull_number}/update-branch"],
- updateReview: ["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],
- updateReviewComment: ["PATCH /repos/{owner}/{repo}/pulls/comments/{comment_id}"]
- },
- rateLimit: {
- get: ["GET /rate_limit"]
+ updateBranch: [
+ "PUT /repos/{owner}/{repo}/pulls/{pull_number}/update-branch"
+ ],
+ updateReview: [
+ "PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"
+ ],
+ updateReviewComment: [
+ "PATCH /repos/{owner}/{repo}/pulls/comments/{comment_id}"
+ ]
},
+ rateLimit: { get: ["GET /rate_limit"] },
reactions: {
- createForCommitComment: ["POST /repos/{owner}/{repo}/comments/{comment_id}/reactions"],
- createForIssue: ["POST /repos/{owner}/{repo}/issues/{issue_number}/reactions"],
- createForIssueComment: ["POST /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"],
- createForPullRequestReviewComment: ["POST /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"],
- createForRelease: ["POST /repos/{owner}/{repo}/releases/{release_id}/reactions"],
- createForTeamDiscussionCommentInOrg: ["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"],
- createForTeamDiscussionInOrg: ["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"],
- deleteForCommitComment: ["DELETE /repos/{owner}/{repo}/comments/{comment_id}/reactions/{reaction_id}"],
- deleteForIssue: ["DELETE /repos/{owner}/{repo}/issues/{issue_number}/reactions/{reaction_id}"],
- deleteForIssueComment: ["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions/{reaction_id}"],
- deleteForPullRequestComment: ["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions/{reaction_id}"],
- deleteForRelease: ["DELETE /repos/{owner}/{repo}/releases/{release_id}/reactions/{reaction_id}"],
- deleteForTeamDiscussion: ["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions/{reaction_id}"],
- deleteForTeamDiscussionComment: ["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions/{reaction_id}"],
- listForCommitComment: ["GET /repos/{owner}/{repo}/comments/{comment_id}/reactions"],
+ createForCommitComment: [
+ "POST /repos/{owner}/{repo}/comments/{comment_id}/reactions"
+ ],
+ createForIssue: [
+ "POST /repos/{owner}/{repo}/issues/{issue_number}/reactions"
+ ],
+ createForIssueComment: [
+ "POST /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"
+ ],
+ createForPullRequestReviewComment: [
+ "POST /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"
+ ],
+ createForRelease: [
+ "POST /repos/{owner}/{repo}/releases/{release_id}/reactions"
+ ],
+ createForTeamDiscussionCommentInOrg: [
+ "POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"
+ ],
+ createForTeamDiscussionInOrg: [
+ "POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"
+ ],
+ deleteForCommitComment: [
+ "DELETE /repos/{owner}/{repo}/comments/{comment_id}/reactions/{reaction_id}"
+ ],
+ deleteForIssue: [
+ "DELETE /repos/{owner}/{repo}/issues/{issue_number}/reactions/{reaction_id}"
+ ],
+ deleteForIssueComment: [
+ "DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions/{reaction_id}"
+ ],
+ deleteForPullRequestComment: [
+ "DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions/{reaction_id}"
+ ],
+ deleteForRelease: [
+ "DELETE /repos/{owner}/{repo}/releases/{release_id}/reactions/{reaction_id}"
+ ],
+ deleteForTeamDiscussion: [
+ "DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions/{reaction_id}"
+ ],
+ deleteForTeamDiscussionComment: [
+ "DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions/{reaction_id}"
+ ],
+ listForCommitComment: [
+ "GET /repos/{owner}/{repo}/comments/{comment_id}/reactions"
+ ],
listForIssue: ["GET /repos/{owner}/{repo}/issues/{issue_number}/reactions"],
- listForIssueComment: ["GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"],
- listForPullRequestReviewComment: ["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"],
- listForRelease: ["GET /repos/{owner}/{repo}/releases/{release_id}/reactions"],
- listForTeamDiscussionCommentInOrg: ["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"],
- listForTeamDiscussionInOrg: ["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"]
+ listForIssueComment: [
+ "GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"
+ ],
+ listForPullRequestReviewComment: [
+ "GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"
+ ],
+ listForRelease: [
+ "GET /repos/{owner}/{repo}/releases/{release_id}/reactions"
+ ],
+ listForTeamDiscussionCommentInOrg: [
+ "GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"
+ ],
+ listForTeamDiscussionInOrg: [
+ "GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"
+ ]
},
repos: {
- acceptInvitation: ["PATCH /user/repository_invitations/{invitation_id}", {}, {
- renamed: ["repos", "acceptInvitationForAuthenticatedUser"]
- }],
- acceptInvitationForAuthenticatedUser: ["PATCH /user/repository_invitations/{invitation_id}"],
- addAppAccessRestrictions: ["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps", {}, {
- mapToData: "apps"
- }],
+ acceptInvitation: [
+ "PATCH /user/repository_invitations/{invitation_id}",
+ {},
+ { renamed: ["repos", "acceptInvitationForAuthenticatedUser"] }
+ ],
+ acceptInvitationForAuthenticatedUser: [
+ "PATCH /user/repository_invitations/{invitation_id}"
+ ],
+ addAppAccessRestrictions: [
+ "POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",
+ {},
+ { mapToData: "apps" }
+ ],
addCollaborator: ["PUT /repos/{owner}/{repo}/collaborators/{username}"],
- addStatusCheckContexts: ["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts", {}, {
- mapToData: "contexts"
- }],
- addTeamAccessRestrictions: ["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams", {}, {
- mapToData: "teams"
- }],
- addUserAccessRestrictions: ["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users", {}, {
- mapToData: "users"
- }],
+ addStatusCheckContexts: [
+ "POST /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",
+ {},
+ { mapToData: "contexts" }
+ ],
+ addTeamAccessRestrictions: [
+ "POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",
+ {},
+ { mapToData: "teams" }
+ ],
+ addUserAccessRestrictions: [
+ "POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",
+ {},
+ { mapToData: "users" }
+ ],
+ checkAutomatedSecurityFixes: [
+ "GET /repos/{owner}/{repo}/automated-security-fixes"
+ ],
checkCollaborator: ["GET /repos/{owner}/{repo}/collaborators/{username}"],
- checkVulnerabilityAlerts: ["GET /repos/{owner}/{repo}/vulnerability-alerts"],
+ checkVulnerabilityAlerts: [
+ "GET /repos/{owner}/{repo}/vulnerability-alerts"
+ ],
codeownersErrors: ["GET /repos/{owner}/{repo}/codeowners/errors"],
compareCommits: ["GET /repos/{owner}/{repo}/compare/{base}...{head}"],
- compareCommitsWithBasehead: ["GET /repos/{owner}/{repo}/compare/{basehead}"],
+ compareCommitsWithBasehead: [
+ "GET /repos/{owner}/{repo}/compare/{basehead}"
+ ],
createAutolink: ["POST /repos/{owner}/{repo}/autolinks"],
- createCommitComment: ["POST /repos/{owner}/{repo}/commits/{commit_sha}/comments"],
- createCommitSignatureProtection: ["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],
+ createCommitComment: [
+ "POST /repos/{owner}/{repo}/commits/{commit_sha}/comments"
+ ],
+ createCommitSignatureProtection: [
+ "POST /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"
+ ],
createCommitStatus: ["POST /repos/{owner}/{repo}/statuses/{sha}"],
createDeployKey: ["POST /repos/{owner}/{repo}/keys"],
createDeployment: ["POST /repos/{owner}/{repo}/deployments"],
- createDeploymentStatus: ["POST /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],
+ createDeploymentBranchPolicy: [
+ "POST /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies"
+ ],
+ createDeploymentProtectionRule: [
+ "POST /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules"
+ ],
+ createDeploymentStatus: [
+ "POST /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"
+ ],
createDispatchEvent: ["POST /repos/{owner}/{repo}/dispatches"],
createForAuthenticatedUser: ["POST /user/repos"],
createFork: ["POST /repos/{owner}/{repo}/forks"],
createInOrg: ["POST /orgs/{org}/repos"],
- createOrUpdateEnvironment: ["PUT /repos/{owner}/{repo}/environments/{environment_name}"],
+ createOrUpdateEnvironment: [
+ "PUT /repos/{owner}/{repo}/environments/{environment_name}"
+ ],
createOrUpdateFileContents: ["PUT /repos/{owner}/{repo}/contents/{path}"],
+ createOrgRuleset: ["POST /orgs/{org}/rulesets"],
+ createPagesDeployment: ["POST /repos/{owner}/{repo}/pages/deployment"],
createPagesSite: ["POST /repos/{owner}/{repo}/pages"],
createRelease: ["POST /repos/{owner}/{repo}/releases"],
+ createRepoRuleset: ["POST /repos/{owner}/{repo}/rulesets"],
createTagProtection: ["POST /repos/{owner}/{repo}/tags/protection"],
- createUsingTemplate: ["POST /repos/{template_owner}/{template_repo}/generate"],
+ createUsingTemplate: [
+ "POST /repos/{template_owner}/{template_repo}/generate"
+ ],
createWebhook: ["POST /repos/{owner}/{repo}/hooks"],
- declineInvitation: ["DELETE /user/repository_invitations/{invitation_id}", {}, {
- renamed: ["repos", "declineInvitationForAuthenticatedUser"]
- }],
- declineInvitationForAuthenticatedUser: ["DELETE /user/repository_invitations/{invitation_id}"],
+ declineInvitation: [
+ "DELETE /user/repository_invitations/{invitation_id}",
+ {},
+ { renamed: ["repos", "declineInvitationForAuthenticatedUser"] }
+ ],
+ declineInvitationForAuthenticatedUser: [
+ "DELETE /user/repository_invitations/{invitation_id}"
+ ],
delete: ["DELETE /repos/{owner}/{repo}"],
- deleteAccessRestrictions: ["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],
- deleteAdminBranchProtection: ["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],
- deleteAnEnvironment: ["DELETE /repos/{owner}/{repo}/environments/{environment_name}"],
+ deleteAccessRestrictions: [
+ "DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"
+ ],
+ deleteAdminBranchProtection: [
+ "DELETE /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"
+ ],
+ deleteAnEnvironment: [
+ "DELETE /repos/{owner}/{repo}/environments/{environment_name}"
+ ],
deleteAutolink: ["DELETE /repos/{owner}/{repo}/autolinks/{autolink_id}"],
- deleteBranchProtection: ["DELETE /repos/{owner}/{repo}/branches/{branch}/protection"],
+ deleteBranchProtection: [
+ "DELETE /repos/{owner}/{repo}/branches/{branch}/protection"
+ ],
deleteCommitComment: ["DELETE /repos/{owner}/{repo}/comments/{comment_id}"],
- deleteCommitSignatureProtection: ["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],
+ deleteCommitSignatureProtection: [
+ "DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"
+ ],
deleteDeployKey: ["DELETE /repos/{owner}/{repo}/keys/{key_id}"],
- deleteDeployment: ["DELETE /repos/{owner}/{repo}/deployments/{deployment_id}"],
+ deleteDeployment: [
+ "DELETE /repos/{owner}/{repo}/deployments/{deployment_id}"
+ ],
+ deleteDeploymentBranchPolicy: [
+ "DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"
+ ],
deleteFile: ["DELETE /repos/{owner}/{repo}/contents/{path}"],
- deleteInvitation: ["DELETE /repos/{owner}/{repo}/invitations/{invitation_id}"],
+ deleteInvitation: [
+ "DELETE /repos/{owner}/{repo}/invitations/{invitation_id}"
+ ],
+ deleteOrgRuleset: ["DELETE /orgs/{org}/rulesets/{ruleset_id}"],
deletePagesSite: ["DELETE /repos/{owner}/{repo}/pages"],
- deletePullRequestReviewProtection: ["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],
+ deletePullRequestReviewProtection: [
+ "DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"
+ ],
deleteRelease: ["DELETE /repos/{owner}/{repo}/releases/{release_id}"],
- deleteReleaseAsset: ["DELETE /repos/{owner}/{repo}/releases/assets/{asset_id}"],
- deleteTagProtection: ["DELETE /repos/{owner}/{repo}/tags/protection/{tag_protection_id}"],
+ deleteReleaseAsset: [
+ "DELETE /repos/{owner}/{repo}/releases/assets/{asset_id}"
+ ],
+ deleteRepoRuleset: ["DELETE /repos/{owner}/{repo}/rulesets/{ruleset_id}"],
+ deleteTagProtection: [
+ "DELETE /repos/{owner}/{repo}/tags/protection/{tag_protection_id}"
+ ],
deleteWebhook: ["DELETE /repos/{owner}/{repo}/hooks/{hook_id}"],
- disableAutomatedSecurityFixes: ["DELETE /repos/{owner}/{repo}/automated-security-fixes"],
- disableLfsForRepo: ["DELETE /repos/{owner}/{repo}/lfs"],
- disableVulnerabilityAlerts: ["DELETE /repos/{owner}/{repo}/vulnerability-alerts"],
- downloadArchive: ["GET /repos/{owner}/{repo}/zipball/{ref}", {}, {
- renamed: ["repos", "downloadZipballArchive"]
- }],
+ disableAutomatedSecurityFixes: [
+ "DELETE /repos/{owner}/{repo}/automated-security-fixes"
+ ],
+ disableDeploymentProtectionRule: [
+ "DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"
+ ],
+ disablePrivateVulnerabilityReporting: [
+ "DELETE /repos/{owner}/{repo}/private-vulnerability-reporting"
+ ],
+ disableVulnerabilityAlerts: [
+ "DELETE /repos/{owner}/{repo}/vulnerability-alerts"
+ ],
+ downloadArchive: [
+ "GET /repos/{owner}/{repo}/zipball/{ref}",
+ {},
+ { renamed: ["repos", "downloadZipballArchive"] }
+ ],
downloadTarballArchive: ["GET /repos/{owner}/{repo}/tarball/{ref}"],
downloadZipballArchive: ["GET /repos/{owner}/{repo}/zipball/{ref}"],
- enableAutomatedSecurityFixes: ["PUT /repos/{owner}/{repo}/automated-security-fixes"],
- enableLfsForRepo: ["PUT /repos/{owner}/{repo}/lfs"],
- enableVulnerabilityAlerts: ["PUT /repos/{owner}/{repo}/vulnerability-alerts"],
- generateReleaseNotes: ["POST /repos/{owner}/{repo}/releases/generate-notes"],
+ enableAutomatedSecurityFixes: [
+ "PUT /repos/{owner}/{repo}/automated-security-fixes"
+ ],
+ enablePrivateVulnerabilityReporting: [
+ "PUT /repos/{owner}/{repo}/private-vulnerability-reporting"
+ ],
+ enableVulnerabilityAlerts: [
+ "PUT /repos/{owner}/{repo}/vulnerability-alerts"
+ ],
+ generateReleaseNotes: [
+ "POST /repos/{owner}/{repo}/releases/generate-notes"
+ ],
get: ["GET /repos/{owner}/{repo}"],
- getAccessRestrictions: ["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],
- getAdminBranchProtection: ["GET /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],
+ getAccessRestrictions: [
+ "GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"
+ ],
+ getAdminBranchProtection: [
+ "GET /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"
+ ],
+ getAllDeploymentProtectionRules: [
+ "GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules"
+ ],
getAllEnvironments: ["GET /repos/{owner}/{repo}/environments"],
- getAllStatusCheckContexts: ["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts"],
+ getAllStatusCheckContexts: [
+ "GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts"
+ ],
getAllTopics: ["GET /repos/{owner}/{repo}/topics"],
- getAppsWithAccessToProtectedBranch: ["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps"],
+ getAppsWithAccessToProtectedBranch: [
+ "GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps"
+ ],
getAutolink: ["GET /repos/{owner}/{repo}/autolinks/{autolink_id}"],
getBranch: ["GET /repos/{owner}/{repo}/branches/{branch}"],
- getBranchProtection: ["GET /repos/{owner}/{repo}/branches/{branch}/protection"],
+ getBranchProtection: [
+ "GET /repos/{owner}/{repo}/branches/{branch}/protection"
+ ],
+ getBranchRules: ["GET /repos/{owner}/{repo}/rules/branches/{branch}"],
getClones: ["GET /repos/{owner}/{repo}/traffic/clones"],
getCodeFrequencyStats: ["GET /repos/{owner}/{repo}/stats/code_frequency"],
- getCollaboratorPermissionLevel: ["GET /repos/{owner}/{repo}/collaborators/{username}/permission"],
+ getCollaboratorPermissionLevel: [
+ "GET /repos/{owner}/{repo}/collaborators/{username}/permission"
+ ],
getCombinedStatusForRef: ["GET /repos/{owner}/{repo}/commits/{ref}/status"],
getCommit: ["GET /repos/{owner}/{repo}/commits/{ref}"],
getCommitActivityStats: ["GET /repos/{owner}/{repo}/stats/commit_activity"],
getCommitComment: ["GET /repos/{owner}/{repo}/comments/{comment_id}"],
- getCommitSignatureProtection: ["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],
+ getCommitSignatureProtection: [
+ "GET /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"
+ ],
getCommunityProfileMetrics: ["GET /repos/{owner}/{repo}/community/profile"],
getContent: ["GET /repos/{owner}/{repo}/contents/{path}"],
getContributorsStats: ["GET /repos/{owner}/{repo}/stats/contributors"],
+ getCustomDeploymentProtectionRule: [
+ "GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"
+ ],
+ getCustomPropertiesValues: ["GET /repos/{owner}/{repo}/properties/values"],
getDeployKey: ["GET /repos/{owner}/{repo}/keys/{key_id}"],
getDeployment: ["GET /repos/{owner}/{repo}/deployments/{deployment_id}"],
- getDeploymentStatus: ["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses/{status_id}"],
- getEnvironment: ["GET /repos/{owner}/{repo}/environments/{environment_name}"],
+ getDeploymentBranchPolicy: [
+ "GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"
+ ],
+ getDeploymentStatus: [
+ "GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses/{status_id}"
+ ],
+ getEnvironment: [
+ "GET /repos/{owner}/{repo}/environments/{environment_name}"
+ ],
getLatestPagesBuild: ["GET /repos/{owner}/{repo}/pages/builds/latest"],
getLatestRelease: ["GET /repos/{owner}/{repo}/releases/latest"],
+ getOrgRuleSuite: ["GET /orgs/{org}/rulesets/rule-suites/{rule_suite_id}"],
+ getOrgRuleSuites: ["GET /orgs/{org}/rulesets/rule-suites"],
+ getOrgRuleset: ["GET /orgs/{org}/rulesets/{ruleset_id}"],
+ getOrgRulesets: ["GET /orgs/{org}/rulesets"],
getPages: ["GET /repos/{owner}/{repo}/pages"],
getPagesBuild: ["GET /repos/{owner}/{repo}/pages/builds/{build_id}"],
getPagesHealthCheck: ["GET /repos/{owner}/{repo}/pages/health"],
getParticipationStats: ["GET /repos/{owner}/{repo}/stats/participation"],
- getPullRequestReviewProtection: ["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],
+ getPullRequestReviewProtection: [
+ "GET /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"
+ ],
getPunchCardStats: ["GET /repos/{owner}/{repo}/stats/punch_card"],
getReadme: ["GET /repos/{owner}/{repo}/readme"],
getReadmeInDirectory: ["GET /repos/{owner}/{repo}/readme/{dir}"],
getRelease: ["GET /repos/{owner}/{repo}/releases/{release_id}"],
getReleaseAsset: ["GET /repos/{owner}/{repo}/releases/assets/{asset_id}"],
getReleaseByTag: ["GET /repos/{owner}/{repo}/releases/tags/{tag}"],
- getStatusChecksProtection: ["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],
- getTeamsWithAccessToProtectedBranch: ["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams"],
+ getRepoRuleSuite: [
+ "GET /repos/{owner}/{repo}/rulesets/rule-suites/{rule_suite_id}"
+ ],
+ getRepoRuleSuites: ["GET /repos/{owner}/{repo}/rulesets/rule-suites"],
+ getRepoRuleset: ["GET /repos/{owner}/{repo}/rulesets/{ruleset_id}"],
+ getRepoRulesets: ["GET /repos/{owner}/{repo}/rulesets"],
+ getStatusChecksProtection: [
+ "GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"
+ ],
+ getTeamsWithAccessToProtectedBranch: [
+ "GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams"
+ ],
getTopPaths: ["GET /repos/{owner}/{repo}/traffic/popular/paths"],
getTopReferrers: ["GET /repos/{owner}/{repo}/traffic/popular/referrers"],
- getUsersWithAccessToProtectedBranch: ["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users"],
+ getUsersWithAccessToProtectedBranch: [
+ "GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users"
+ ],
getViews: ["GET /repos/{owner}/{repo}/traffic/views"],
getWebhook: ["GET /repos/{owner}/{repo}/hooks/{hook_id}"],
- getWebhookConfigForRepo: ["GET /repos/{owner}/{repo}/hooks/{hook_id}/config"],
- getWebhookDelivery: ["GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}"],
+ getWebhookConfigForRepo: [
+ "GET /repos/{owner}/{repo}/hooks/{hook_id}/config"
+ ],
+ getWebhookDelivery: [
+ "GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}"
+ ],
+ listActivities: ["GET /repos/{owner}/{repo}/activity"],
listAutolinks: ["GET /repos/{owner}/{repo}/autolinks"],
listBranches: ["GET /repos/{owner}/{repo}/branches"],
- listBranchesForHeadCommit: ["GET /repos/{owner}/{repo}/commits/{commit_sha}/branches-where-head"],
+ listBranchesForHeadCommit: [
+ "GET /repos/{owner}/{repo}/commits/{commit_sha}/branches-where-head"
+ ],
listCollaborators: ["GET /repos/{owner}/{repo}/collaborators"],
- listCommentsForCommit: ["GET /repos/{owner}/{repo}/commits/{commit_sha}/comments"],
+ listCommentsForCommit: [
+ "GET /repos/{owner}/{repo}/commits/{commit_sha}/comments"
+ ],
listCommitCommentsForRepo: ["GET /repos/{owner}/{repo}/comments"],
- listCommitStatusesForRef: ["GET /repos/{owner}/{repo}/commits/{ref}/statuses"],
+ listCommitStatusesForRef: [
+ "GET /repos/{owner}/{repo}/commits/{ref}/statuses"
+ ],
listCommits: ["GET /repos/{owner}/{repo}/commits"],
listContributors: ["GET /repos/{owner}/{repo}/contributors"],
+ listCustomDeploymentRuleIntegrations: [
+ "GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/apps"
+ ],
listDeployKeys: ["GET /repos/{owner}/{repo}/keys"],
- listDeploymentStatuses: ["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],
+ listDeploymentBranchPolicies: [
+ "GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies"
+ ],
+ listDeploymentStatuses: [
+ "GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"
+ ],
listDeployments: ["GET /repos/{owner}/{repo}/deployments"],
listForAuthenticatedUser: ["GET /user/repos"],
listForOrg: ["GET /orgs/{org}/repos"],
@@ -8240,67 +9348,117 @@ const Endpoints = {
listLanguages: ["GET /repos/{owner}/{repo}/languages"],
listPagesBuilds: ["GET /repos/{owner}/{repo}/pages/builds"],
listPublic: ["GET /repositories"],
- listPullRequestsAssociatedWithCommit: ["GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls"],
- listReleaseAssets: ["GET /repos/{owner}/{repo}/releases/{release_id}/assets"],
+ listPullRequestsAssociatedWithCommit: [
+ "GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls"
+ ],
+ listReleaseAssets: [
+ "GET /repos/{owner}/{repo}/releases/{release_id}/assets"
+ ],
listReleases: ["GET /repos/{owner}/{repo}/releases"],
listTagProtection: ["GET /repos/{owner}/{repo}/tags/protection"],
listTags: ["GET /repos/{owner}/{repo}/tags"],
listTeams: ["GET /repos/{owner}/{repo}/teams"],
- listWebhookDeliveries: ["GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries"],
+ listWebhookDeliveries: [
+ "GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries"
+ ],
listWebhooks: ["GET /repos/{owner}/{repo}/hooks"],
merge: ["POST /repos/{owner}/{repo}/merges"],
mergeUpstream: ["POST /repos/{owner}/{repo}/merge-upstream"],
pingWebhook: ["POST /repos/{owner}/{repo}/hooks/{hook_id}/pings"],
- redeliverWebhookDelivery: ["POST /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"],
- removeAppAccessRestrictions: ["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps", {}, {
- mapToData: "apps"
- }],
- removeCollaborator: ["DELETE /repos/{owner}/{repo}/collaborators/{username}"],
- removeStatusCheckContexts: ["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts", {}, {
- mapToData: "contexts"
- }],
- removeStatusCheckProtection: ["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],
- removeTeamAccessRestrictions: ["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams", {}, {
- mapToData: "teams"
- }],
- removeUserAccessRestrictions: ["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users", {}, {
- mapToData: "users"
- }],
+ redeliverWebhookDelivery: [
+ "POST /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"
+ ],
+ removeAppAccessRestrictions: [
+ "DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",
+ {},
+ { mapToData: "apps" }
+ ],
+ removeCollaborator: [
+ "DELETE /repos/{owner}/{repo}/collaborators/{username}"
+ ],
+ removeStatusCheckContexts: [
+ "DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",
+ {},
+ { mapToData: "contexts" }
+ ],
+ removeStatusCheckProtection: [
+ "DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"
+ ],
+ removeTeamAccessRestrictions: [
+ "DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",
+ {},
+ { mapToData: "teams" }
+ ],
+ removeUserAccessRestrictions: [
+ "DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",
+ {},
+ { mapToData: "users" }
+ ],
renameBranch: ["POST /repos/{owner}/{repo}/branches/{branch}/rename"],
replaceAllTopics: ["PUT /repos/{owner}/{repo}/topics"],
requestPagesBuild: ["POST /repos/{owner}/{repo}/pages/builds"],
- setAdminBranchProtection: ["POST /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],
- setAppAccessRestrictions: ["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps", {}, {
- mapToData: "apps"
- }],
- setStatusCheckContexts: ["PUT /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts", {}, {
- mapToData: "contexts"
- }],
- setTeamAccessRestrictions: ["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams", {}, {
- mapToData: "teams"
- }],
- setUserAccessRestrictions: ["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users", {}, {
- mapToData: "users"
- }],
+ setAdminBranchProtection: [
+ "POST /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"
+ ],
+ setAppAccessRestrictions: [
+ "PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",
+ {},
+ { mapToData: "apps" }
+ ],
+ setStatusCheckContexts: [
+ "PUT /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",
+ {},
+ { mapToData: "contexts" }
+ ],
+ setTeamAccessRestrictions: [
+ "PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",
+ {},
+ { mapToData: "teams" }
+ ],
+ setUserAccessRestrictions: [
+ "PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",
+ {},
+ { mapToData: "users" }
+ ],
testPushWebhook: ["POST /repos/{owner}/{repo}/hooks/{hook_id}/tests"],
transfer: ["POST /repos/{owner}/{repo}/transfer"],
update: ["PATCH /repos/{owner}/{repo}"],
- updateBranchProtection: ["PUT /repos/{owner}/{repo}/branches/{branch}/protection"],
+ updateBranchProtection: [
+ "PUT /repos/{owner}/{repo}/branches/{branch}/protection"
+ ],
updateCommitComment: ["PATCH /repos/{owner}/{repo}/comments/{comment_id}"],
+ updateDeploymentBranchPolicy: [
+ "PUT /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"
+ ],
updateInformationAboutPagesSite: ["PUT /repos/{owner}/{repo}/pages"],
- updateInvitation: ["PATCH /repos/{owner}/{repo}/invitations/{invitation_id}"],
- updatePullRequestReviewProtection: ["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],
+ updateInvitation: [
+ "PATCH /repos/{owner}/{repo}/invitations/{invitation_id}"
+ ],
+ updateOrgRuleset: ["PUT /orgs/{org}/rulesets/{ruleset_id}"],
+ updatePullRequestReviewProtection: [
+ "PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"
+ ],
updateRelease: ["PATCH /repos/{owner}/{repo}/releases/{release_id}"],
- updateReleaseAsset: ["PATCH /repos/{owner}/{repo}/releases/assets/{asset_id}"],
- updateStatusCheckPotection: ["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks", {}, {
- renamed: ["repos", "updateStatusCheckProtection"]
- }],
- updateStatusCheckProtection: ["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],
+ updateReleaseAsset: [
+ "PATCH /repos/{owner}/{repo}/releases/assets/{asset_id}"
+ ],
+ updateRepoRuleset: ["PUT /repos/{owner}/{repo}/rulesets/{ruleset_id}"],
+ updateStatusCheckPotection: [
+ "PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks",
+ {},
+ { renamed: ["repos", "updateStatusCheckProtection"] }
+ ],
+ updateStatusCheckProtection: [
+ "PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"
+ ],
updateWebhook: ["PATCH /repos/{owner}/{repo}/hooks/{hook_id}"],
- updateWebhookConfigForRepo: ["PATCH /repos/{owner}/{repo}/hooks/{hook_id}/config"],
- uploadReleaseAsset: ["POST /repos/{owner}/{repo}/releases/{release_id}/assets{?name,label}", {
- baseUrl: "https://uploads.github.com"
- }]
+ updateWebhookConfigForRepo: [
+ "PATCH /repos/{owner}/{repo}/hooks/{hook_id}/config"
+ ],
+ uploadReleaseAsset: [
+ "POST /repos/{owner}/{repo}/releases/{release_id}/assets{?name,label}",
+ { baseUrl: "https://uploads.github.com" }
+ ]
},
search: {
code: ["GET /search/code"],
@@ -8312,390 +9470,596 @@ const Endpoints = {
users: ["GET /search/users"]
},
secretScanning: {
- getAlert: ["GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"],
- listAlertsForEnterprise: ["GET /enterprises/{enterprise}/secret-scanning/alerts"],
+ getAlert: [
+ "GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"
+ ],
+ listAlertsForEnterprise: [
+ "GET /enterprises/{enterprise}/secret-scanning/alerts"
+ ],
listAlertsForOrg: ["GET /orgs/{org}/secret-scanning/alerts"],
listAlertsForRepo: ["GET /repos/{owner}/{repo}/secret-scanning/alerts"],
- listLocationsForAlert: ["GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations"],
- updateAlert: ["PATCH /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"]
+ listLocationsForAlert: [
+ "GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations"
+ ],
+ updateAlert: [
+ "PATCH /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"
+ ]
+ },
+ securityAdvisories: {
+ createPrivateVulnerabilityReport: [
+ "POST /repos/{owner}/{repo}/security-advisories/reports"
+ ],
+ createRepositoryAdvisory: [
+ "POST /repos/{owner}/{repo}/security-advisories"
+ ],
+ createRepositoryAdvisoryCveRequest: [
+ "POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/cve"
+ ],
+ getGlobalAdvisory: ["GET /advisories/{ghsa_id}"],
+ getRepositoryAdvisory: [
+ "GET /repos/{owner}/{repo}/security-advisories/{ghsa_id}"
+ ],
+ listGlobalAdvisories: ["GET /advisories"],
+ listOrgRepositoryAdvisories: ["GET /orgs/{org}/security-advisories"],
+ listRepositoryAdvisories: ["GET /repos/{owner}/{repo}/security-advisories"],
+ updateRepositoryAdvisory: [
+ "PATCH /repos/{owner}/{repo}/security-advisories/{ghsa_id}"
+ ]
},
teams: {
- addOrUpdateMembershipForUserInOrg: ["PUT /orgs/{org}/teams/{team_slug}/memberships/{username}"],
- addOrUpdateProjectPermissionsInOrg: ["PUT /orgs/{org}/teams/{team_slug}/projects/{project_id}"],
- addOrUpdateRepoPermissionsInOrg: ["PUT /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],
- checkPermissionsForProjectInOrg: ["GET /orgs/{org}/teams/{team_slug}/projects/{project_id}"],
- checkPermissionsForRepoInOrg: ["GET /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],
+ addOrUpdateMembershipForUserInOrg: [
+ "PUT /orgs/{org}/teams/{team_slug}/memberships/{username}"
+ ],
+ addOrUpdateProjectPermissionsInOrg: [
+ "PUT /orgs/{org}/teams/{team_slug}/projects/{project_id}"
+ ],
+ addOrUpdateRepoPermissionsInOrg: [
+ "PUT /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"
+ ],
+ checkPermissionsForProjectInOrg: [
+ "GET /orgs/{org}/teams/{team_slug}/projects/{project_id}"
+ ],
+ checkPermissionsForRepoInOrg: [
+ "GET /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"
+ ],
create: ["POST /orgs/{org}/teams"],
- createDiscussionCommentInOrg: ["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],
+ createDiscussionCommentInOrg: [
+ "POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"
+ ],
createDiscussionInOrg: ["POST /orgs/{org}/teams/{team_slug}/discussions"],
- deleteDiscussionCommentInOrg: ["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],
- deleteDiscussionInOrg: ["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],
+ deleteDiscussionCommentInOrg: [
+ "DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"
+ ],
+ deleteDiscussionInOrg: [
+ "DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"
+ ],
deleteInOrg: ["DELETE /orgs/{org}/teams/{team_slug}"],
getByName: ["GET /orgs/{org}/teams/{team_slug}"],
- getDiscussionCommentInOrg: ["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],
- getDiscussionInOrg: ["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],
- getMembershipForUserInOrg: ["GET /orgs/{org}/teams/{team_slug}/memberships/{username}"],
+ getDiscussionCommentInOrg: [
+ "GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"
+ ],
+ getDiscussionInOrg: [
+ "GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"
+ ],
+ getMembershipForUserInOrg: [
+ "GET /orgs/{org}/teams/{team_slug}/memberships/{username}"
+ ],
list: ["GET /orgs/{org}/teams"],
listChildInOrg: ["GET /orgs/{org}/teams/{team_slug}/teams"],
- listDiscussionCommentsInOrg: ["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],
+ listDiscussionCommentsInOrg: [
+ "GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"
+ ],
listDiscussionsInOrg: ["GET /orgs/{org}/teams/{team_slug}/discussions"],
listForAuthenticatedUser: ["GET /user/teams"],
listMembersInOrg: ["GET /orgs/{org}/teams/{team_slug}/members"],
- listPendingInvitationsInOrg: ["GET /orgs/{org}/teams/{team_slug}/invitations"],
+ listPendingInvitationsInOrg: [
+ "GET /orgs/{org}/teams/{team_slug}/invitations"
+ ],
listProjectsInOrg: ["GET /orgs/{org}/teams/{team_slug}/projects"],
listReposInOrg: ["GET /orgs/{org}/teams/{team_slug}/repos"],
- removeMembershipForUserInOrg: ["DELETE /orgs/{org}/teams/{team_slug}/memberships/{username}"],
- removeProjectInOrg: ["DELETE /orgs/{org}/teams/{team_slug}/projects/{project_id}"],
- removeRepoInOrg: ["DELETE /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],
- updateDiscussionCommentInOrg: ["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],
- updateDiscussionInOrg: ["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],
+ removeMembershipForUserInOrg: [
+ "DELETE /orgs/{org}/teams/{team_slug}/memberships/{username}"
+ ],
+ removeProjectInOrg: [
+ "DELETE /orgs/{org}/teams/{team_slug}/projects/{project_id}"
+ ],
+ removeRepoInOrg: [
+ "DELETE /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"
+ ],
+ updateDiscussionCommentInOrg: [
+ "PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"
+ ],
+ updateDiscussionInOrg: [
+ "PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"
+ ],
updateInOrg: ["PATCH /orgs/{org}/teams/{team_slug}"]
},
users: {
- addEmailForAuthenticated: ["POST /user/emails", {}, {
- renamed: ["users", "addEmailForAuthenticatedUser"]
- }],
+ addEmailForAuthenticated: [
+ "POST /user/emails",
+ {},
+ { renamed: ["users", "addEmailForAuthenticatedUser"] }
+ ],
addEmailForAuthenticatedUser: ["POST /user/emails"],
+ addSocialAccountForAuthenticatedUser: ["POST /user/social_accounts"],
block: ["PUT /user/blocks/{username}"],
checkBlocked: ["GET /user/blocks/{username}"],
checkFollowingForUser: ["GET /users/{username}/following/{target_user}"],
checkPersonIsFollowedByAuthenticated: ["GET /user/following/{username}"],
- createGpgKeyForAuthenticated: ["POST /user/gpg_keys", {}, {
- renamed: ["users", "createGpgKeyForAuthenticatedUser"]
- }],
+ createGpgKeyForAuthenticated: [
+ "POST /user/gpg_keys",
+ {},
+ { renamed: ["users", "createGpgKeyForAuthenticatedUser"] }
+ ],
createGpgKeyForAuthenticatedUser: ["POST /user/gpg_keys"],
- createPublicSshKeyForAuthenticated: ["POST /user/keys", {}, {
- renamed: ["users", "createPublicSshKeyForAuthenticatedUser"]
- }],
+ createPublicSshKeyForAuthenticated: [
+ "POST /user/keys",
+ {},
+ { renamed: ["users", "createPublicSshKeyForAuthenticatedUser"] }
+ ],
createPublicSshKeyForAuthenticatedUser: ["POST /user/keys"],
- deleteEmailForAuthenticated: ["DELETE /user/emails", {}, {
- renamed: ["users", "deleteEmailForAuthenticatedUser"]
- }],
+ createSshSigningKeyForAuthenticatedUser: ["POST /user/ssh_signing_keys"],
+ deleteEmailForAuthenticated: [
+ "DELETE /user/emails",
+ {},
+ { renamed: ["users", "deleteEmailForAuthenticatedUser"] }
+ ],
deleteEmailForAuthenticatedUser: ["DELETE /user/emails"],
- deleteGpgKeyForAuthenticated: ["DELETE /user/gpg_keys/{gpg_key_id}", {}, {
- renamed: ["users", "deleteGpgKeyForAuthenticatedUser"]
- }],
+ deleteGpgKeyForAuthenticated: [
+ "DELETE /user/gpg_keys/{gpg_key_id}",
+ {},
+ { renamed: ["users", "deleteGpgKeyForAuthenticatedUser"] }
+ ],
deleteGpgKeyForAuthenticatedUser: ["DELETE /user/gpg_keys/{gpg_key_id}"],
- deletePublicSshKeyForAuthenticated: ["DELETE /user/keys/{key_id}", {}, {
- renamed: ["users", "deletePublicSshKeyForAuthenticatedUser"]
- }],
+ deletePublicSshKeyForAuthenticated: [
+ "DELETE /user/keys/{key_id}",
+ {},
+ { renamed: ["users", "deletePublicSshKeyForAuthenticatedUser"] }
+ ],
deletePublicSshKeyForAuthenticatedUser: ["DELETE /user/keys/{key_id}"],
+ deleteSocialAccountForAuthenticatedUser: ["DELETE /user/social_accounts"],
+ deleteSshSigningKeyForAuthenticatedUser: [
+ "DELETE /user/ssh_signing_keys/{ssh_signing_key_id}"
+ ],
follow: ["PUT /user/following/{username}"],
getAuthenticated: ["GET /user"],
getByUsername: ["GET /users/{username}"],
getContextForUser: ["GET /users/{username}/hovercard"],
- getGpgKeyForAuthenticated: ["GET /user/gpg_keys/{gpg_key_id}", {}, {
- renamed: ["users", "getGpgKeyForAuthenticatedUser"]
- }],
+ getGpgKeyForAuthenticated: [
+ "GET /user/gpg_keys/{gpg_key_id}",
+ {},
+ { renamed: ["users", "getGpgKeyForAuthenticatedUser"] }
+ ],
getGpgKeyForAuthenticatedUser: ["GET /user/gpg_keys/{gpg_key_id}"],
- getPublicSshKeyForAuthenticated: ["GET /user/keys/{key_id}", {}, {
- renamed: ["users", "getPublicSshKeyForAuthenticatedUser"]
- }],
+ getPublicSshKeyForAuthenticated: [
+ "GET /user/keys/{key_id}",
+ {},
+ { renamed: ["users", "getPublicSshKeyForAuthenticatedUser"] }
+ ],
getPublicSshKeyForAuthenticatedUser: ["GET /user/keys/{key_id}"],
+ getSshSigningKeyForAuthenticatedUser: [
+ "GET /user/ssh_signing_keys/{ssh_signing_key_id}"
+ ],
list: ["GET /users"],
- listBlockedByAuthenticated: ["GET /user/blocks", {}, {
- renamed: ["users", "listBlockedByAuthenticatedUser"]
- }],
+ listBlockedByAuthenticated: [
+ "GET /user/blocks",
+ {},
+ { renamed: ["users", "listBlockedByAuthenticatedUser"] }
+ ],
listBlockedByAuthenticatedUser: ["GET /user/blocks"],
- listEmailsForAuthenticated: ["GET /user/emails", {}, {
- renamed: ["users", "listEmailsForAuthenticatedUser"]
- }],
+ listEmailsForAuthenticated: [
+ "GET /user/emails",
+ {},
+ { renamed: ["users", "listEmailsForAuthenticatedUser"] }
+ ],
listEmailsForAuthenticatedUser: ["GET /user/emails"],
- listFollowedByAuthenticated: ["GET /user/following", {}, {
- renamed: ["users", "listFollowedByAuthenticatedUser"]
- }],
+ listFollowedByAuthenticated: [
+ "GET /user/following",
+ {},
+ { renamed: ["users", "listFollowedByAuthenticatedUser"] }
+ ],
listFollowedByAuthenticatedUser: ["GET /user/following"],
listFollowersForAuthenticatedUser: ["GET /user/followers"],
listFollowersForUser: ["GET /users/{username}/followers"],
listFollowingForUser: ["GET /users/{username}/following"],
- listGpgKeysForAuthenticated: ["GET /user/gpg_keys", {}, {
- renamed: ["users", "listGpgKeysForAuthenticatedUser"]
- }],
+ listGpgKeysForAuthenticated: [
+ "GET /user/gpg_keys",
+ {},
+ { renamed: ["users", "listGpgKeysForAuthenticatedUser"] }
+ ],
listGpgKeysForAuthenticatedUser: ["GET /user/gpg_keys"],
listGpgKeysForUser: ["GET /users/{username}/gpg_keys"],
- listPublicEmailsForAuthenticated: ["GET /user/public_emails", {}, {
- renamed: ["users", "listPublicEmailsForAuthenticatedUser"]
- }],
+ listPublicEmailsForAuthenticated: [
+ "GET /user/public_emails",
+ {},
+ { renamed: ["users", "listPublicEmailsForAuthenticatedUser"] }
+ ],
listPublicEmailsForAuthenticatedUser: ["GET /user/public_emails"],
listPublicKeysForUser: ["GET /users/{username}/keys"],
- listPublicSshKeysForAuthenticated: ["GET /user/keys", {}, {
- renamed: ["users", "listPublicSshKeysForAuthenticatedUser"]
- }],
+ listPublicSshKeysForAuthenticated: [
+ "GET /user/keys",
+ {},
+ { renamed: ["users", "listPublicSshKeysForAuthenticatedUser"] }
+ ],
listPublicSshKeysForAuthenticatedUser: ["GET /user/keys"],
- setPrimaryEmailVisibilityForAuthenticated: ["PATCH /user/email/visibility", {}, {
- renamed: ["users", "setPrimaryEmailVisibilityForAuthenticatedUser"]
- }],
- setPrimaryEmailVisibilityForAuthenticatedUser: ["PATCH /user/email/visibility"],
+ listSocialAccountsForAuthenticatedUser: ["GET /user/social_accounts"],
+ listSocialAccountsForUser: ["GET /users/{username}/social_accounts"],
+ listSshSigningKeysForAuthenticatedUser: ["GET /user/ssh_signing_keys"],
+ listSshSigningKeysForUser: ["GET /users/{username}/ssh_signing_keys"],
+ setPrimaryEmailVisibilityForAuthenticated: [
+ "PATCH /user/email/visibility",
+ {},
+ { renamed: ["users", "setPrimaryEmailVisibilityForAuthenticatedUser"] }
+ ],
+ setPrimaryEmailVisibilityForAuthenticatedUser: [
+ "PATCH /user/email/visibility"
+ ],
unblock: ["DELETE /user/blocks/{username}"],
unfollow: ["DELETE /user/following/{username}"],
updateAuthenticated: ["PATCH /user"]
}
};
+var endpoints_default = Endpoints;
-const VERSION = "5.16.2";
-
-function endpointsToMethods(octokit, endpointsMap) {
- const newMethods = {};
-
- for (const [scope, endpoints] of Object.entries(endpointsMap)) {
- for (const [methodName, endpoint] of Object.entries(endpoints)) {
- const [route, defaults, decorations] = endpoint;
- const [method, url] = route.split(/ /);
- const endpointDefaults = Object.assign({
+// pkg/dist-src/endpoints-to-methods.js
+var endpointMethodsMap = /* @__PURE__ */ new Map();
+for (const [scope, endpoints] of Object.entries(endpoints_default)) {
+ for (const [methodName, endpoint] of Object.entries(endpoints)) {
+ const [route, defaults, decorations] = endpoint;
+ const [method, url] = route.split(/ /);
+ const endpointDefaults = Object.assign(
+ {
method,
url
- }, defaults);
-
- if (!newMethods[scope]) {
- newMethods[scope] = {};
- }
-
- const scopeMethods = newMethods[scope];
-
- if (decorations) {
- scopeMethods[methodName] = decorate(octokit, scope, methodName, endpointDefaults, decorations);
- continue;
- }
-
- scopeMethods[methodName] = octokit.request.defaults(endpointDefaults);
+ },
+ defaults
+ );
+ if (!endpointMethodsMap.has(scope)) {
+ endpointMethodsMap.set(scope, /* @__PURE__ */ new Map());
+ }
+ endpointMethodsMap.get(scope).set(methodName, {
+ scope,
+ methodName,
+ endpointDefaults,
+ decorations
+ });
+ }
+}
+var handler = {
+ has({ scope }, methodName) {
+ return endpointMethodsMap.get(scope).has(methodName);
+ },
+ getOwnPropertyDescriptor(target, methodName) {
+ return {
+ value: this.get(target, methodName),
+ // ensures method is in the cache
+ configurable: true,
+ writable: true,
+ enumerable: true
+ };
+ },
+ defineProperty(target, methodName, descriptor) {
+ Object.defineProperty(target.cache, methodName, descriptor);
+ return true;
+ },
+ deleteProperty(target, methodName) {
+ delete target.cache[methodName];
+ return true;
+ },
+ ownKeys({ scope }) {
+ return [...endpointMethodsMap.get(scope).keys()];
+ },
+ set(target, methodName, value) {
+ return target.cache[methodName] = value;
+ },
+ get({ octokit, scope, cache }, methodName) {
+ if (cache[methodName]) {
+ return cache[methodName];
+ }
+ const method = endpointMethodsMap.get(scope).get(methodName);
+ if (!method) {
+ return void 0;
+ }
+ const { endpointDefaults, decorations } = method;
+ if (decorations) {
+ cache[methodName] = decorate(
+ octokit,
+ scope,
+ methodName,
+ endpointDefaults,
+ decorations
+ );
+ } else {
+ cache[methodName] = octokit.request.defaults(endpointDefaults);
}
+ return cache[methodName];
+ }
+};
+function endpointsToMethods(octokit) {
+ const newMethods = {};
+ for (const scope of endpointMethodsMap.keys()) {
+ newMethods[scope] = new Proxy({ octokit, scope, cache: {} }, handler);
}
-
return newMethods;
}
-
function decorate(octokit, scope, methodName, defaults, decorations) {
const requestWithDefaults = octokit.request.defaults(defaults);
- /* istanbul ignore next */
-
function withDecorations(...args) {
- // @ts-ignore https://github.com/microsoft/TypeScript/issues/25488
- let options = requestWithDefaults.endpoint.merge(...args); // There are currently no other decorations than `.mapToData`
-
+ let options = requestWithDefaults.endpoint.merge(...args);
if (decorations.mapToData) {
options = Object.assign({}, options, {
data: options[decorations.mapToData],
- [decorations.mapToData]: undefined
+ [decorations.mapToData]: void 0
});
return requestWithDefaults(options);
}
-
if (decorations.renamed) {
const [newScope, newMethodName] = decorations.renamed;
- octokit.log.warn(`octokit.${scope}.${methodName}() has been renamed to octokit.${newScope}.${newMethodName}()`);
+ octokit.log.warn(
+ `octokit.${scope}.${methodName}() has been renamed to octokit.${newScope}.${newMethodName}()`
+ );
}
-
if (decorations.deprecated) {
octokit.log.warn(decorations.deprecated);
}
-
if (decorations.renamedParameters) {
- // @ts-ignore https://github.com/microsoft/TypeScript/issues/25488
- const options = requestWithDefaults.endpoint.merge(...args);
-
- for (const [name, alias] of Object.entries(decorations.renamedParameters)) {
- if (name in options) {
- octokit.log.warn(`"${name}" parameter is deprecated for "octokit.${scope}.${methodName}()". Use "${alias}" instead`);
-
- if (!(alias in options)) {
- options[alias] = options[name];
+ const options2 = requestWithDefaults.endpoint.merge(...args);
+ for (const [name, alias] of Object.entries(
+ decorations.renamedParameters
+ )) {
+ if (name in options2) {
+ octokit.log.warn(
+ `"${name}" parameter is deprecated for "octokit.${scope}.${methodName}()". Use "${alias}" instead`
+ );
+ if (!(alias in options2)) {
+ options2[alias] = options2[name];
}
-
- delete options[name];
+ delete options2[name];
}
}
-
- return requestWithDefaults(options);
- } // @ts-ignore https://github.com/microsoft/TypeScript/issues/25488
-
-
+ return requestWithDefaults(options2);
+ }
return requestWithDefaults(...args);
}
-
return Object.assign(withDecorations, requestWithDefaults);
}
+// pkg/dist-src/index.js
function restEndpointMethods(octokit) {
- const api = endpointsToMethods(octokit, Endpoints);
+ const api = endpointsToMethods(octokit);
return {
rest: api
};
}
restEndpointMethods.VERSION = VERSION;
function legacyRestEndpointMethods(octokit) {
- const api = endpointsToMethods(octokit, Endpoints);
- return _objectSpread2(_objectSpread2({}, api), {}, {
+ const api = endpointsToMethods(octokit);
+ return {
+ ...api,
rest: api
- });
+ };
}
legacyRestEndpointMethods.VERSION = VERSION;
-
-exports.legacyRestEndpointMethods = legacyRestEndpointMethods;
-exports.restEndpointMethods = restEndpointMethods;
-//# sourceMappingURL=index.js.map
+// Annotate the CommonJS export names for ESM import in node:
+0 && (0);
/***/ }),
/***/ 537:
-/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => {
+/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
"use strict";
-
-Object.defineProperty(exports, "__esModule", ({ value: true }));
-
-function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
-
-var deprecation = __nccwpck_require__(8932);
-var once = _interopDefault(__nccwpck_require__(1223));
-
-const logOnceCode = once(deprecation => console.warn(deprecation));
-const logOnceHeaders = once(deprecation => console.warn(deprecation));
-/**
- * Error with extra properties to help with debugging
- */
-
-class RequestError extends Error {
+var __create = Object.create;
+var __defProp = Object.defineProperty;
+var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
+var __getOwnPropNames = Object.getOwnPropertyNames;
+var __getProtoOf = Object.getPrototypeOf;
+var __hasOwnProp = Object.prototype.hasOwnProperty;
+var __export = (target, all) => {
+ for (var name in all)
+ __defProp(target, name, { get: all[name], enumerable: true });
+};
+var __copyProps = (to, from, except, desc) => {
+ if (from && typeof from === "object" || typeof from === "function") {
+ for (let key of __getOwnPropNames(from))
+ if (!__hasOwnProp.call(to, key) && key !== except)
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
+ }
+ return to;
+};
+var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
+ // If the importer is in node compatibility mode or this is not an ESM
+ // file that has been converted to a CommonJS file using a Babel-
+ // compatible transform (i.e. "__esModule" has not been set), then set
+ // "default" to the CommonJS "module.exports" for node compatibility.
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
+ mod
+));
+var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
+
+// pkg/dist-src/index.js
+var dist_src_exports = {};
+__export(dist_src_exports, {
+ RequestError: () => RequestError
+});
+module.exports = __toCommonJS(dist_src_exports);
+var import_deprecation = __nccwpck_require__(8932);
+var import_once = __toESM(__nccwpck_require__(1223));
+var logOnceCode = (0, import_once.default)((deprecation) => console.warn(deprecation));
+var logOnceHeaders = (0, import_once.default)((deprecation) => console.warn(deprecation));
+var RequestError = class extends Error {
constructor(message, statusCode, options) {
- super(message); // Maintains proper stack trace (only available on V8)
-
- /* istanbul ignore next */
-
+ super(message);
if (Error.captureStackTrace) {
Error.captureStackTrace(this, this.constructor);
}
-
this.name = "HttpError";
this.status = statusCode;
let headers;
-
if ("headers" in options && typeof options.headers !== "undefined") {
headers = options.headers;
}
-
if ("response" in options) {
this.response = options.response;
headers = options.response.headers;
- } // redact request credentials without mutating original request options
-
-
+ }
const requestCopy = Object.assign({}, options.request);
-
if (options.request.headers.authorization) {
requestCopy.headers = Object.assign({}, options.request.headers, {
- authorization: options.request.headers.authorization.replace(/ .*$/, " [REDACTED]")
+ authorization: options.request.headers.authorization.replace(
+ / .*$/,
+ " [REDACTED]"
+ )
});
}
-
- requestCopy.url = requestCopy.url // client_id & client_secret can be passed as URL query parameters to increase rate limit
- // see https://developer.github.com/v3/#increasing-the-unauthenticated-rate-limit-for-oauth-applications
- .replace(/\bclient_secret=\w+/g, "client_secret=[REDACTED]") // OAuth tokens can be passed as URL query parameters, although it is not recommended
- // see https://developer.github.com/v3/#oauth2-token-sent-in-a-header
- .replace(/\baccess_token=\w+/g, "access_token=[REDACTED]");
- this.request = requestCopy; // deprecations
-
+ requestCopy.url = requestCopy.url.replace(/\bclient_secret=\w+/g, "client_secret=[REDACTED]").replace(/\baccess_token=\w+/g, "access_token=[REDACTED]");
+ this.request = requestCopy;
Object.defineProperty(this, "code", {
get() {
- logOnceCode(new deprecation.Deprecation("[@octokit/request-error] `error.code` is deprecated, use `error.status`."));
+ logOnceCode(
+ new import_deprecation.Deprecation(
+ "[@octokit/request-error] `error.code` is deprecated, use `error.status`."
+ )
+ );
return statusCode;
}
-
});
Object.defineProperty(this, "headers", {
get() {
- logOnceHeaders(new deprecation.Deprecation("[@octokit/request-error] `error.headers` is deprecated, use `error.response.headers`."));
+ logOnceHeaders(
+ new import_deprecation.Deprecation(
+ "[@octokit/request-error] `error.headers` is deprecated, use `error.response.headers`."
+ )
+ );
return headers || {};
}
-
});
}
-
-}
-
-exports.RequestError = RequestError;
-//# sourceMappingURL=index.js.map
+};
+// Annotate the CommonJS export names for ESM import in node:
+0 && (0);
/***/ }),
/***/ 6234:
-/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => {
+/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
"use strict";
+var __defProp = Object.defineProperty;
+var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
+var __getOwnPropNames = Object.getOwnPropertyNames;
+var __hasOwnProp = Object.prototype.hasOwnProperty;
+var __export = (target, all) => {
+ for (var name in all)
+ __defProp(target, name, { get: all[name], enumerable: true });
+};
+var __copyProps = (to, from, except, desc) => {
+ if (from && typeof from === "object" || typeof from === "function") {
+ for (let key of __getOwnPropNames(from))
+ if (!__hasOwnProp.call(to, key) && key !== except)
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
+ }
+ return to;
+};
+var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
-Object.defineProperty(exports, "__esModule", ({ value: true }));
+// pkg/dist-src/index.js
+var dist_src_exports = {};
+__export(dist_src_exports, {
+ request: () => request
+});
+module.exports = __toCommonJS(dist_src_exports);
+var import_endpoint = __nccwpck_require__(9440);
+var import_universal_user_agent = __nccwpck_require__(5030);
-function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
+// pkg/dist-src/version.js
+var VERSION = "8.1.6";
-var endpoint = __nccwpck_require__(9440);
-var universalUserAgent = __nccwpck_require__(5030);
-var isPlainObject = __nccwpck_require__(3287);
-var nodeFetch = _interopDefault(__nccwpck_require__(467));
-var requestError = __nccwpck_require__(537);
+// pkg/dist-src/is-plain-object.js
+function isPlainObject(value) {
+ if (typeof value !== "object" || value === null)
+ return false;
+ if (Object.prototype.toString.call(value) !== "[object Object]")
+ return false;
+ const proto = Object.getPrototypeOf(value);
+ if (proto === null)
+ return true;
+ const Ctor = Object.prototype.hasOwnProperty.call(proto, "constructor") && proto.constructor;
+ return typeof Ctor === "function" && Ctor instanceof Ctor && Function.prototype.call(Ctor) === Function.prototype.call(value);
+}
-const VERSION = "5.6.3";
+// pkg/dist-src/fetch-wrapper.js
+var import_request_error = __nccwpck_require__(537);
+// pkg/dist-src/get-buffer-response.js
function getBufferResponse(response) {
return response.arrayBuffer();
}
+// pkg/dist-src/fetch-wrapper.js
function fetchWrapper(requestOptions) {
+ var _a, _b, _c;
const log = requestOptions.request && requestOptions.request.log ? requestOptions.request.log : console;
-
- if (isPlainObject.isPlainObject(requestOptions.body) || Array.isArray(requestOptions.body)) {
+ const parseSuccessResponseBody = ((_a = requestOptions.request) == null ? void 0 : _a.parseSuccessResponseBody) !== false;
+ if (isPlainObject(requestOptions.body) || Array.isArray(requestOptions.body)) {
requestOptions.body = JSON.stringify(requestOptions.body);
}
-
let headers = {};
let status;
let url;
- const fetch = requestOptions.request && requestOptions.request.fetch || nodeFetch;
- return fetch(requestOptions.url, Object.assign({
+ let { fetch } = globalThis;
+ if ((_b = requestOptions.request) == null ? void 0 : _b.fetch) {
+ fetch = requestOptions.request.fetch;
+ }
+ if (!fetch) {
+ throw new Error(
+ "fetch is not set. Please pass a fetch implementation as new Octokit({ request: { fetch }}). Learn more at https://github.com/octokit/octokit.js/#fetch-missing"
+ );
+ }
+ return fetch(requestOptions.url, {
method: requestOptions.method,
body: requestOptions.body,
headers: requestOptions.headers,
- redirect: requestOptions.redirect
- }, // `requestOptions.request.agent` type is incompatible
- // see https://github.com/octokit/types.ts/pull/264
- requestOptions.request)).then(async response => {
+ signal: (_c = requestOptions.request) == null ? void 0 : _c.signal,
+ // duplex must be set if request.body is ReadableStream or Async Iterables.
+ // See https://fetch.spec.whatwg.org/#dom-requestinit-duplex.
+ ...requestOptions.body && { duplex: "half" }
+ }).then(async (response) => {
url = response.url;
status = response.status;
-
for (const keyAndValue of response.headers) {
headers[keyAndValue[0]] = keyAndValue[1];
}
-
if ("deprecation" in headers) {
const matches = headers.link && headers.link.match(/<([^>]+)>; rel="deprecation"/);
const deprecationLink = matches && matches.pop();
- log.warn(`[@octokit/request] "${requestOptions.method} ${requestOptions.url}" is deprecated. It is scheduled to be removed on ${headers.sunset}${deprecationLink ? `. See ${deprecationLink}` : ""}`);
+ log.warn(
+ `[@octokit/request] "${requestOptions.method} ${requestOptions.url}" is deprecated. It is scheduled to be removed on ${headers.sunset}${deprecationLink ? `. See ${deprecationLink}` : ""}`
+ );
}
-
if (status === 204 || status === 205) {
return;
- } // GitHub API returns 200 for HEAD requests
-
-
+ }
if (requestOptions.method === "HEAD") {
if (status < 400) {
return;
}
-
- throw new requestError.RequestError(response.statusText, status, {
+ throw new import_request_error.RequestError(response.statusText, status, {
response: {
url,
status,
headers,
- data: undefined
+ data: void 0
},
request: requestOptions
});
}
-
if (status === 304) {
- throw new requestError.RequestError("Not modified", status, {
+ throw new import_request_error.RequestError("Not modified", status, {
response: {
url,
status,
@@ -8705,10 +10069,9 @@ function fetchWrapper(requestOptions) {
request: requestOptions
});
}
-
if (status >= 400) {
const data = await getResponseData(response);
- const error = new requestError.RequestError(toErrorMessage(data), status, {
+ const error = new import_request_error.RequestError(toErrorMessage(data), status, {
response: {
url,
status,
@@ -8719,87 +10082,87 @@ function fetchWrapper(requestOptions) {
});
throw error;
}
-
- return getResponseData(response);
- }).then(data => {
+ return parseSuccessResponseBody ? await getResponseData(response) : response.body;
+ }).then((data) => {
return {
status,
url,
headers,
data
};
- }).catch(error => {
- if (error instanceof requestError.RequestError) throw error;
- throw new requestError.RequestError(error.message, 500, {
+ }).catch((error) => {
+ if (error instanceof import_request_error.RequestError)
+ throw error;
+ else if (error.name === "AbortError")
+ throw error;
+ let message = error.message;
+ if (error.name === "TypeError" && "cause" in error) {
+ if (error.cause instanceof Error) {
+ message = error.cause.message;
+ } else if (typeof error.cause === "string") {
+ message = error.cause;
+ }
+ }
+ throw new import_request_error.RequestError(message, 500, {
request: requestOptions
});
});
}
-
async function getResponseData(response) {
const contentType = response.headers.get("content-type");
-
if (/application\/json/.test(contentType)) {
- return response.json();
+ return response.json().catch(() => response.text()).catch(() => "");
}
-
if (!contentType || /^text\/|charset=utf-8$/.test(contentType)) {
return response.text();
}
-
return getBufferResponse(response);
}
-
function toErrorMessage(data) {
- if (typeof data === "string") return data; // istanbul ignore else - just in case
-
+ if (typeof data === "string")
+ return data;
if ("message" in data) {
if (Array.isArray(data.errors)) {
return `${data.message}: ${data.errors.map(JSON.stringify).join(", ")}`;
}
-
return data.message;
- } // istanbul ignore next - just in case
-
-
+ }
return `Unknown error: ${JSON.stringify(data)}`;
}
+// pkg/dist-src/with-defaults.js
function withDefaults(oldEndpoint, newDefaults) {
- const endpoint = oldEndpoint.defaults(newDefaults);
-
- const newApi = function (route, parameters) {
- const endpointOptions = endpoint.merge(route, parameters);
-
+ const endpoint2 = oldEndpoint.defaults(newDefaults);
+ const newApi = function(route, parameters) {
+ const endpointOptions = endpoint2.merge(route, parameters);
if (!endpointOptions.request || !endpointOptions.request.hook) {
- return fetchWrapper(endpoint.parse(endpointOptions));
+ return fetchWrapper(endpoint2.parse(endpointOptions));
}
-
- const request = (route, parameters) => {
- return fetchWrapper(endpoint.parse(endpoint.merge(route, parameters)));
+ const request2 = (route2, parameters2) => {
+ return fetchWrapper(
+ endpoint2.parse(endpoint2.merge(route2, parameters2))
+ );
};
-
- Object.assign(request, {
- endpoint,
- defaults: withDefaults.bind(null, endpoint)
+ Object.assign(request2, {
+ endpoint: endpoint2,
+ defaults: withDefaults.bind(null, endpoint2)
});
- return endpointOptions.request.hook(request, endpointOptions);
+ return endpointOptions.request.hook(request2, endpointOptions);
};
-
return Object.assign(newApi, {
- endpoint,
- defaults: withDefaults.bind(null, endpoint)
+ endpoint: endpoint2,
+ defaults: withDefaults.bind(null, endpoint2)
});
}
-const request = withDefaults(endpoint.endpoint, {
+// pkg/dist-src/index.js
+var request = withDefaults(import_endpoint.endpoint, {
headers: {
- "user-agent": `octokit-request.js/${VERSION} ${universalUserAgent.getUserAgent()}`
+ "user-agent": `octokit-request.js/${VERSION} ${(0, import_universal_user_agent.getUserAgent)()}`
}
});
-
-exports.request = request;
-//# sourceMappingURL=index.js.map
+// Annotate the CommonJS export names for ESM import in node:
+0 && (0);
/***/ }),
@@ -10522,12 +11885,12 @@ module.exports = function () {
/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => {
exports.EntryHeader = __nccwpck_require__(9032);
-exports.MainHeader = __nccwpck_require__(4408);
+exports.MainHeader = __nccwpck_require__(8952);
/***/ }),
-/***/ 4408:
+/***/ 8952:
/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
var Utils = __nccwpck_require__(5182),
@@ -13331,7 +14694,7 @@ exports.flatten = (...args) => {
/***/ }),
-/***/ 2286:
+/***/ 8367:
/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
"use strict";
@@ -13773,6 +15136,134 @@ module.exports = CacheableLookup;
module.exports["default"] = CacheableLookup;
+/***/ }),
+
+/***/ 4340:
+/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
+
+"use strict";
+
+const {PassThrough: PassThroughStream} = __nccwpck_require__(2781);
+
+module.exports = options => {
+ options = {...options};
+
+ const {array} = options;
+ let {encoding} = options;
+ const isBuffer = encoding === 'buffer';
+ let objectMode = false;
+
+ if (array) {
+ objectMode = !(encoding || isBuffer);
+ } else {
+ encoding = encoding || 'utf8';
+ }
+
+ if (isBuffer) {
+ encoding = null;
+ }
+
+ const stream = new PassThroughStream({objectMode});
+
+ if (encoding) {
+ stream.setEncoding(encoding);
+ }
+
+ let length = 0;
+ const chunks = [];
+
+ stream.on('data', chunk => {
+ chunks.push(chunk);
+
+ if (objectMode) {
+ length = chunks.length;
+ } else {
+ length += chunk.length;
+ }
+ });
+
+ stream.getBufferedValue = () => {
+ if (array) {
+ return chunks;
+ }
+
+ return isBuffer ? Buffer.concat(chunks, length) : chunks.join('');
+ };
+
+ stream.getBufferedLength = () => length;
+
+ return stream;
+};
+
+
+/***/ }),
+
+/***/ 7040:
+/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
+
+"use strict";
+
+const {constants: BufferConstants} = __nccwpck_require__(4300);
+const pump = __nccwpck_require__(8341);
+const bufferStream = __nccwpck_require__(4340);
+
+class MaxBufferError extends Error {
+ constructor() {
+ super('maxBuffer exceeded');
+ this.name = 'MaxBufferError';
+ }
+}
+
+async function getStream(inputStream, options) {
+ if (!inputStream) {
+ return Promise.reject(new Error('Expected a stream'));
+ }
+
+ options = {
+ maxBuffer: Infinity,
+ ...options
+ };
+
+ const {maxBuffer} = options;
+
+ let stream;
+ await new Promise((resolve, reject) => {
+ const rejectPromise = error => {
+ // Don't retrieve an oversized buffer.
+ if (error && stream.getBufferedLength() <= BufferConstants.MAX_LENGTH) {
+ error.bufferedData = stream.getBufferedValue();
+ }
+
+ reject(error);
+ };
+
+ stream = pump(inputStream, bufferStream(options), error => {
+ if (error) {
+ rejectPromise(error);
+ return;
+ }
+
+ resolve();
+ });
+
+ stream.on('data', () => {
+ if (stream.getBufferedLength() > maxBuffer) {
+ rejectPromise(new MaxBufferError());
+ }
+ });
+ });
+
+ return stream.getBufferedValue();
+}
+
+module.exports = getStream;
+// TODO: Remove this for the next major release
+module.exports["default"] = getStream;
+module.exports.buffer = (stream, options) => getStream(stream, {...options, encoding: 'buffer'});
+module.exports.array = (stream, options) => getStream(stream, {...options, array: true});
+module.exports.MaxBufferError = MaxBufferError;
+
+
/***/ }),
/***/ 8116:
@@ -13784,7 +15275,7 @@ module.exports["default"] = CacheableLookup;
const EventEmitter = __nccwpck_require__(2361);
const urlLib = __nccwpck_require__(7310);
const normalizeUrl = __nccwpck_require__(7952);
-const getStream = __nccwpck_require__(1766);
+const getStream = __nccwpck_require__(7040);
const CachePolicy = __nccwpck_require__(1002);
const Response = __nccwpck_require__(9004);
const lowercaseKeys = __nccwpck_require__(9662);
@@ -14454,7 +15945,7 @@ const async_1 = __nccwpck_require__(5679);
const stream_1 = __nccwpck_require__(4630);
const sync_1 = __nccwpck_require__(2405);
const settings_1 = __nccwpck_require__(952);
-const utils = __nccwpck_require__(5444);
+const utils = __nccwpck_require__(8223);
async function FastGlob(source, options) {
assertPatternsInput(source);
const works = getWorks(source, async_1.default, options);
@@ -14561,7 +16052,7 @@ module.exports = FastGlob;
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.convertPatternGroupToTask = exports.convertPatternGroupsToTasks = exports.groupPatternsByBaseDirectory = exports.getNegativePatternsAsPositive = exports.getPositivePatterns = exports.convertPatternsToTasks = exports.generate = void 0;
-const utils = __nccwpck_require__(5444);
+const utils = __nccwpck_require__(8223);
function generate(input, settings) {
const patterns = processPatterns(input, settings);
const ignore = processPatterns(settings.ignore, settings);
@@ -14709,7 +16200,7 @@ exports["default"] = ProviderAsync;
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
-const utils = __nccwpck_require__(5444);
+const utils = __nccwpck_require__(8223);
const partial_1 = __nccwpck_require__(5295);
class DeepFilter {
constructor(_settings, _micromatchOptions) {
@@ -14779,7 +16270,7 @@ exports["default"] = DeepFilter;
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
-const utils = __nccwpck_require__(5444);
+const utils = __nccwpck_require__(8223);
class EntryFilter {
constructor(_settings, _micromatchOptions) {
this._settings = _settings;
@@ -14850,7 +16341,7 @@ exports["default"] = EntryFilter;
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
-const utils = __nccwpck_require__(5444);
+const utils = __nccwpck_require__(8223);
class ErrorFilter {
constructor(_settings) {
this._settings = _settings;
@@ -14873,7 +16364,7 @@ exports["default"] = ErrorFilter;
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
-const utils = __nccwpck_require__(5444);
+const utils = __nccwpck_require__(8223);
class Matcher {
constructor(_patterns, _settings, _micromatchOptions) {
this._patterns = _patterns;
@@ -15098,7 +16589,7 @@ exports["default"] = ProviderSync;
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
-const utils = __nccwpck_require__(5444);
+const utils = __nccwpck_require__(8223);
class EntryTransformer {
constructor(_settings) {
this._settings = _settings;
@@ -15177,7 +16668,7 @@ exports["default"] = ReaderAsync;
Object.defineProperty(exports, "__esModule", ({ value: true }));
const path = __nccwpck_require__(1017);
const fsStat = __nccwpck_require__(109);
-const utils = __nccwpck_require__(5444);
+const utils = __nccwpck_require__(8223);
class Reader {
constructor(_settings) {
this._settings = _settings;
@@ -15463,7 +16954,7 @@ exports.createDirentFromStats = createDirentFromStats;
/***/ }),
-/***/ 5444:
+/***/ 8223:
/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => {
"use strict";
@@ -15501,11 +16992,11 @@ const IS_WINDOWS_PLATFORM = os.platform() === 'win32';
const LEADING_DOT_SEGMENT_CHARACTERS_COUNT = 2; // ./ or .\\
/**
* All non-escaped special characters.
- * Posix: ()*?[\]{|}, !+@ before (, ! at the beginning, \\ before non-special characters.
- * Windows: (){}, !+@ before (, ! at the beginning.
+ * Posix: ()*?[]{|}, !+@ before (, ! at the beginning, \\ before non-special characters.
+ * Windows: (){}[], !+@ before (, ! at the beginning.
*/
const POSIX_UNESCAPED_GLOB_SYMBOLS_RE = /(\\?)([()*?[\]{|}]|^!|[!+@](?=\()|\\(?![!()*+?@[\]{|}]))/g;
-const WINDOWS_UNESCAPED_GLOB_SYMBOLS_RE = /(\\?)([(){}]|^!|[!+@](?=\())/g;
+const WINDOWS_UNESCAPED_GLOB_SYMBOLS_RE = /(\\?)([()[\]{}]|^!|[!+@](?=\())/g;
/**
* The device path (\\.\ or \\?\).
* https://learn.microsoft.com/en-us/dotnet/standard/io/file-path-formats#dos-device-paths
@@ -15516,7 +17007,7 @@ const DOS_DEVICE_PATH_RE = /^\\\\([.?])/;
* Windows: !()+@{}
* https://learn.microsoft.com/en-us/windows/win32/fileio/naming-a-file#naming-conventions
*/
-const WINDOWS_BACKSLASHES_RE = /\\(?![!()+@{}])/g;
+const WINDOWS_BACKSLASHES_RE = /\\(?![!()+@[\]{}])/g;
/**
* Designed to work only with simple paths: `dir\\file`.
*/
@@ -15704,7 +17195,7 @@ function expandPatternsWithBraceExpansion(patterns) {
}
exports.expandPatternsWithBraceExpansion = expandPatternsWithBraceExpansion;
function expandBraceExpansion(pattern) {
- const patterns = micromatch.braces(pattern, { expand: true, nodupes: true });
+ const patterns = micromatch.braces(pattern, { expand: true, nodupes: true, keepEscaping: true });
/**
* Sort the patterns by length so that the same depth patterns are processed side by side.
* `a/{b,}/{c,}/*` – `['a///*', 'a/b//*', 'a//c/*', 'a/b/c/*']`
@@ -16356,134 +17847,6 @@ const fill = (start, end, step, options = {}) => {
module.exports = fill;
-/***/ }),
-
-/***/ 1585:
-/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
-
-"use strict";
-
-const {PassThrough: PassThroughStream} = __nccwpck_require__(2781);
-
-module.exports = options => {
- options = {...options};
-
- const {array} = options;
- let {encoding} = options;
- const isBuffer = encoding === 'buffer';
- let objectMode = false;
-
- if (array) {
- objectMode = !(encoding || isBuffer);
- } else {
- encoding = encoding || 'utf8';
- }
-
- if (isBuffer) {
- encoding = null;
- }
-
- const stream = new PassThroughStream({objectMode});
-
- if (encoding) {
- stream.setEncoding(encoding);
- }
-
- let length = 0;
- const chunks = [];
-
- stream.on('data', chunk => {
- chunks.push(chunk);
-
- if (objectMode) {
- length = chunks.length;
- } else {
- length += chunk.length;
- }
- });
-
- stream.getBufferedValue = () => {
- if (array) {
- return chunks;
- }
-
- return isBuffer ? Buffer.concat(chunks, length) : chunks.join('');
- };
-
- stream.getBufferedLength = () => length;
-
- return stream;
-};
-
-
-/***/ }),
-
-/***/ 1766:
-/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
-
-"use strict";
-
-const {constants: BufferConstants} = __nccwpck_require__(4300);
-const pump = __nccwpck_require__(8341);
-const bufferStream = __nccwpck_require__(1585);
-
-class MaxBufferError extends Error {
- constructor() {
- super('maxBuffer exceeded');
- this.name = 'MaxBufferError';
- }
-}
-
-async function getStream(inputStream, options) {
- if (!inputStream) {
- return Promise.reject(new Error('Expected a stream'));
- }
-
- options = {
- maxBuffer: Infinity,
- ...options
- };
-
- const {maxBuffer} = options;
-
- let stream;
- await new Promise((resolve, reject) => {
- const rejectPromise = error => {
- // Don't retrieve an oversized buffer.
- if (error && stream.getBufferedLength() <= BufferConstants.MAX_LENGTH) {
- error.bufferedData = stream.getBufferedValue();
- }
-
- reject(error);
- };
-
- stream = pump(inputStream, bufferStream(options), error => {
- if (error) {
- rejectPromise(error);
- return;
- }
-
- resolve();
- });
-
- stream.on('data', () => {
- if (stream.getBufferedLength() > maxBuffer) {
- rejectPromise(new MaxBufferError());
- }
- });
- });
-
- return stream.getBufferedValue();
-}
-
-module.exports = getStream;
-// TODO: Remove this for the next major release
-module.exports["default"] = getStream;
-module.exports.buffer = (stream, options) => getStream(stream, {...options, encoding: 'buffer'});
-module.exports.array = (stream, options) => getStream(stream, {...options, array: true});
-module.exports.MaxBufferError = MaxBufferError;
-
-
/***/ }),
/***/ 6457:
@@ -16929,7 +18292,7 @@ const http = __nccwpck_require__(3685);
const http_1 = __nccwpck_require__(3685);
const https = __nccwpck_require__(5687);
const http_timer_1 = __nccwpck_require__(8097);
-const cacheable_lookup_1 = __nccwpck_require__(2286);
+const cacheable_lookup_1 = __nccwpck_require__(8367);
const CacheableRequest = __nccwpck_require__(8116);
const decompressResponse = __nccwpck_require__(2391);
// @ts-expect-error Missing types
@@ -21734,52 +23097,6 @@ module.exports = function(num) {
};
-/***/ }),
-
-/***/ 3287:
-/***/ ((__unused_webpack_module, exports) => {
-
-"use strict";
-
-
-Object.defineProperty(exports, "__esModule", ({ value: true }));
-
-/*!
- * is-plain-object
- *
- * Copyright (c) 2014-2017, Jon Schlinkert.
- * Released under the MIT License.
- */
-
-function isObject(o) {
- return Object.prototype.toString.call(o) === '[object Object]';
-}
-
-function isPlainObject(o) {
- var ctor,prot;
-
- if (isObject(o) === false) return false;
-
- // If has modified constructor
- ctor = o.constructor;
- if (ctor === undefined) return true;
-
- // If has modified prototype
- prot = ctor.prototype;
- if (isObject(prot) === false) return false;
-
- // If constructor does not have an Object-specific method
- if (prot.hasOwnProperty('isPrototypeOf') === false) {
- return false;
- }
-
- // Most likely a plain Object
- return true;
-}
-
-exports.isPlainObject = isPlainObject;
-
-
/***/ }),
/***/ 2820:
@@ -22297,8 +23614,8 @@ function pauseStreams (streams, options) {
const util = __nccwpck_require__(3837);
const braces = __nccwpck_require__(610);
-const picomatch = __nccwpck_require__(8569);
-const utils = __nccwpck_require__(479);
+const picomatch = __nccwpck_require__(2864);
+const utils = __nccwpck_require__(7426);
const isEmptyString = val => val === '' || val === './';
/**
@@ -22764,9758 +24081,29886 @@ module.exports = micromatch;
/***/ }),
-/***/ 2610:
-/***/ ((module) => {
+/***/ 2864:
+/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
"use strict";
-// We define these manually to ensure they're always copied
-// even if they would move up the prototype chain
-// https://nodejs.org/api/http.html#http_class_http_incomingmessage
-const knownProps = [
- 'destroy',
- 'setTimeout',
- 'socket',
- 'headers',
- 'trailers',
- 'rawHeaders',
- 'statusCode',
- 'httpVersion',
- 'httpVersionMinor',
- 'httpVersionMajor',
- 'rawTrailers',
- 'statusMessage'
-];
-
-module.exports = (fromStream, toStream) => {
- const fromProps = new Set(Object.keys(fromStream).concat(knownProps));
-
- for (const prop of fromProps) {
- // Don't overwrite existing properties
- if (prop in toStream) {
- continue;
- }
-
- toStream[prop] = typeof fromStream[prop] === 'function' ? fromStream[prop].bind(fromStream) : fromStream[prop];
- }
-};
+module.exports = __nccwpck_require__(555);
/***/ }),
-/***/ 467:
-/***/ ((module, exports, __nccwpck_require__) => {
+/***/ 6476:
+/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
"use strict";
-Object.defineProperty(exports, "__esModule", ({ value: true }));
+const path = __nccwpck_require__(1017);
+const WIN_SLASH = '\\\\/';
+const WIN_NO_SLASH = `[^${WIN_SLASH}]`;
-function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
+/**
+ * Posix glob regex
+ */
-var Stream = _interopDefault(__nccwpck_require__(2781));
-var http = _interopDefault(__nccwpck_require__(3685));
-var Url = _interopDefault(__nccwpck_require__(7310));
-var whatwgUrl = _interopDefault(__nccwpck_require__(8665));
-var https = _interopDefault(__nccwpck_require__(5687));
-var zlib = _interopDefault(__nccwpck_require__(9796));
+const DOT_LITERAL = '\\.';
+const PLUS_LITERAL = '\\+';
+const QMARK_LITERAL = '\\?';
+const SLASH_LITERAL = '\\/';
+const ONE_CHAR = '(?=.)';
+const QMARK = '[^/]';
+const END_ANCHOR = `(?:${SLASH_LITERAL}|$)`;
+const START_ANCHOR = `(?:^|${SLASH_LITERAL})`;
+const DOTS_SLASH = `${DOT_LITERAL}{1,2}${END_ANCHOR}`;
+const NO_DOT = `(?!${DOT_LITERAL})`;
+const NO_DOTS = `(?!${START_ANCHOR}${DOTS_SLASH})`;
+const NO_DOT_SLASH = `(?!${DOT_LITERAL}{0,1}${END_ANCHOR})`;
+const NO_DOTS_SLASH = `(?!${DOTS_SLASH})`;
+const QMARK_NO_DOT = `[^.${SLASH_LITERAL}]`;
+const STAR = `${QMARK}*?`;
-// Based on https://github.com/tmpvar/jsdom/blob/aa85b2abf07766ff7bf5c1f6daafb3726f2f2db5/lib/jsdom/living/blob.js
+const POSIX_CHARS = {
+ DOT_LITERAL,
+ PLUS_LITERAL,
+ QMARK_LITERAL,
+ SLASH_LITERAL,
+ ONE_CHAR,
+ QMARK,
+ END_ANCHOR,
+ DOTS_SLASH,
+ NO_DOT,
+ NO_DOTS,
+ NO_DOT_SLASH,
+ NO_DOTS_SLASH,
+ QMARK_NO_DOT,
+ STAR,
+ START_ANCHOR
+};
-// fix for "Readable" isn't a named export issue
-const Readable = Stream.Readable;
+/**
+ * Windows glob regex
+ */
-const BUFFER = Symbol('buffer');
-const TYPE = Symbol('type');
+const WINDOWS_CHARS = {
+ ...POSIX_CHARS,
-class Blob {
- constructor() {
- this[TYPE] = '';
-
- const blobParts = arguments[0];
- const options = arguments[1];
-
- const buffers = [];
- let size = 0;
-
- if (blobParts) {
- const a = blobParts;
- const length = Number(a.length);
- for (let i = 0; i < length; i++) {
- const element = a[i];
- let buffer;
- if (element instanceof Buffer) {
- buffer = element;
- } else if (ArrayBuffer.isView(element)) {
- buffer = Buffer.from(element.buffer, element.byteOffset, element.byteLength);
- } else if (element instanceof ArrayBuffer) {
- buffer = Buffer.from(element);
- } else if (element instanceof Blob) {
- buffer = element[BUFFER];
- } else {
- buffer = Buffer.from(typeof element === 'string' ? element : String(element));
- }
- size += buffer.length;
- buffers.push(buffer);
- }
- }
+ SLASH_LITERAL: `[${WIN_SLASH}]`,
+ QMARK: WIN_NO_SLASH,
+ STAR: `${WIN_NO_SLASH}*?`,
+ DOTS_SLASH: `${DOT_LITERAL}{1,2}(?:[${WIN_SLASH}]|$)`,
+ NO_DOT: `(?!${DOT_LITERAL})`,
+ NO_DOTS: `(?!(?:^|[${WIN_SLASH}])${DOT_LITERAL}{1,2}(?:[${WIN_SLASH}]|$))`,
+ NO_DOT_SLASH: `(?!${DOT_LITERAL}{0,1}(?:[${WIN_SLASH}]|$))`,
+ NO_DOTS_SLASH: `(?!${DOT_LITERAL}{1,2}(?:[${WIN_SLASH}]|$))`,
+ QMARK_NO_DOT: `[^.${WIN_SLASH}]`,
+ START_ANCHOR: `(?:^|[${WIN_SLASH}])`,
+ END_ANCHOR: `(?:[${WIN_SLASH}]|$)`
+};
- this[BUFFER] = Buffer.concat(buffers);
+/**
+ * POSIX Bracket Regex
+ */
- let type = options && options.type !== undefined && String(options.type).toLowerCase();
- if (type && !/[^\u0020-\u007E]/.test(type)) {
- this[TYPE] = type;
- }
- }
- get size() {
- return this[BUFFER].length;
- }
- get type() {
- return this[TYPE];
- }
- text() {
- return Promise.resolve(this[BUFFER].toString());
- }
- arrayBuffer() {
- const buf = this[BUFFER];
- const ab = buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength);
- return Promise.resolve(ab);
- }
- stream() {
- const readable = new Readable();
- readable._read = function () {};
- readable.push(this[BUFFER]);
- readable.push(null);
- return readable;
- }
- toString() {
- return '[object Blob]';
- }
- slice() {
- const size = this.size;
-
- const start = arguments[0];
- const end = arguments[1];
- let relativeStart, relativeEnd;
- if (start === undefined) {
- relativeStart = 0;
- } else if (start < 0) {
- relativeStart = Math.max(size + start, 0);
- } else {
- relativeStart = Math.min(start, size);
- }
- if (end === undefined) {
- relativeEnd = size;
- } else if (end < 0) {
- relativeEnd = Math.max(size + end, 0);
- } else {
- relativeEnd = Math.min(end, size);
- }
- const span = Math.max(relativeEnd - relativeStart, 0);
+const POSIX_REGEX_SOURCE = {
+ alnum: 'a-zA-Z0-9',
+ alpha: 'a-zA-Z',
+ ascii: '\\x00-\\x7F',
+ blank: ' \\t',
+ cntrl: '\\x00-\\x1F\\x7F',
+ digit: '0-9',
+ graph: '\\x21-\\x7E',
+ lower: 'a-z',
+ print: '\\x20-\\x7E ',
+ punct: '\\-!"#$%&\'()\\*+,./:;<=>?@[\\]^_`{|}~',
+ space: ' \\t\\r\\n\\v\\f',
+ upper: 'A-Z',
+ word: 'A-Za-z0-9_',
+ xdigit: 'A-Fa-f0-9'
+};
- const buffer = this[BUFFER];
- const slicedBuffer = buffer.slice(relativeStart, relativeStart + span);
- const blob = new Blob([], { type: arguments[2] });
- blob[BUFFER] = slicedBuffer;
- return blob;
- }
-}
+module.exports = {
+ MAX_LENGTH: 1024 * 64,
+ POSIX_REGEX_SOURCE,
-Object.defineProperties(Blob.prototype, {
- size: { enumerable: true },
- type: { enumerable: true },
- slice: { enumerable: true }
-});
+ // regular expressions
+ REGEX_BACKSLASH: /\\(?![*+?^${}(|)[\]])/g,
+ REGEX_NON_SPECIAL_CHARS: /^[^@![\].,$*+?^{}()|\\/]+/,
+ REGEX_SPECIAL_CHARS: /[-*+?.^${}(|)[\]]/,
+ REGEX_SPECIAL_CHARS_BACKREF: /(\\?)((\W)(\3*))/g,
+ REGEX_SPECIAL_CHARS_GLOBAL: /([-*+?.^${}(|)[\]])/g,
+ REGEX_REMOVE_BACKSLASH: /(?:\[.*?[^\\]\]|\\(?=.))/g,
-Object.defineProperty(Blob.prototype, Symbol.toStringTag, {
- value: 'Blob',
- writable: false,
- enumerable: false,
- configurable: true
-});
+ // Replace globs with equivalent patterns to reduce parsing time.
+ REPLACEMENTS: {
+ '***': '*',
+ '**/**': '**',
+ '**/**/**': '**'
+ },
-/**
- * fetch-error.js
- *
- * FetchError interface for operational errors
- */
+ // Digits
+ CHAR_0: 48, /* 0 */
+ CHAR_9: 57, /* 9 */
-/**
- * Create FetchError instance
- *
- * @param String message Error message for human
- * @param String type Error type for machine
- * @param String systemError For Node.js system error
- * @return FetchError
- */
-function FetchError(message, type, systemError) {
- Error.call(this, message);
+ // Alphabet chars.
+ CHAR_UPPERCASE_A: 65, /* A */
+ CHAR_LOWERCASE_A: 97, /* a */
+ CHAR_UPPERCASE_Z: 90, /* Z */
+ CHAR_LOWERCASE_Z: 122, /* z */
- this.message = message;
- this.type = type;
+ CHAR_LEFT_PARENTHESES: 40, /* ( */
+ CHAR_RIGHT_PARENTHESES: 41, /* ) */
- // when err.type is `system`, err.code contains system error code
- if (systemError) {
- this.code = this.errno = systemError.code;
- }
+ CHAR_ASTERISK: 42, /* * */
- // hide custom error implementation details from end-users
- Error.captureStackTrace(this, this.constructor);
-}
+ // Non-alphabetic chars.
+ CHAR_AMPERSAND: 38, /* & */
+ CHAR_AT: 64, /* @ */
+ CHAR_BACKWARD_SLASH: 92, /* \ */
+ CHAR_CARRIAGE_RETURN: 13, /* \r */
+ CHAR_CIRCUMFLEX_ACCENT: 94, /* ^ */
+ CHAR_COLON: 58, /* : */
+ CHAR_COMMA: 44, /* , */
+ CHAR_DOT: 46, /* . */
+ CHAR_DOUBLE_QUOTE: 34, /* " */
+ CHAR_EQUAL: 61, /* = */
+ CHAR_EXCLAMATION_MARK: 33, /* ! */
+ CHAR_FORM_FEED: 12, /* \f */
+ CHAR_FORWARD_SLASH: 47, /* / */
+ CHAR_GRAVE_ACCENT: 96, /* ` */
+ CHAR_HASH: 35, /* # */
+ CHAR_HYPHEN_MINUS: 45, /* - */
+ CHAR_LEFT_ANGLE_BRACKET: 60, /* < */
+ CHAR_LEFT_CURLY_BRACE: 123, /* { */
+ CHAR_LEFT_SQUARE_BRACKET: 91, /* [ */
+ CHAR_LINE_FEED: 10, /* \n */
+ CHAR_NO_BREAK_SPACE: 160, /* \u00A0 */
+ CHAR_PERCENT: 37, /* % */
+ CHAR_PLUS: 43, /* + */
+ CHAR_QUESTION_MARK: 63, /* ? */
+ CHAR_RIGHT_ANGLE_BRACKET: 62, /* > */
+ CHAR_RIGHT_CURLY_BRACE: 125, /* } */
+ CHAR_RIGHT_SQUARE_BRACKET: 93, /* ] */
+ CHAR_SEMICOLON: 59, /* ; */
+ CHAR_SINGLE_QUOTE: 39, /* ' */
+ CHAR_SPACE: 32, /* */
+ CHAR_TAB: 9, /* \t */
+ CHAR_UNDERSCORE: 95, /* _ */
+ CHAR_VERTICAL_LINE: 124, /* | */
+ CHAR_ZERO_WIDTH_NOBREAK_SPACE: 65279, /* \uFEFF */
-FetchError.prototype = Object.create(Error.prototype);
-FetchError.prototype.constructor = FetchError;
-FetchError.prototype.name = 'FetchError';
+ SEP: path.sep,
-let convert;
-try {
- convert = (__nccwpck_require__(2877).convert);
-} catch (e) {}
+ /**
+ * Create EXTGLOB_CHARS
+ */
-const INTERNALS = Symbol('Body internals');
+ extglobChars(chars) {
+ return {
+ '!': { type: 'negate', open: '(?:(?!(?:', close: `))${chars.STAR})` },
+ '?': { type: 'qmark', open: '(?:', close: ')?' },
+ '+': { type: 'plus', open: '(?:', close: ')+' },
+ '*': { type: 'star', open: '(?:', close: ')*' },
+ '@': { type: 'at', open: '(?:', close: ')' }
+ };
+ },
-// fix an issue where "PassThrough" isn't a named export for node <10
-const PassThrough = Stream.PassThrough;
+ /**
+ * Create GLOB_CHARS
+ */
-/**
- * Body mixin
- *
- * Ref: https://fetch.spec.whatwg.org/#body
- *
- * @param Stream body Readable stream
- * @param Object opts Response options
- * @return Void
- */
-function Body(body) {
- var _this = this;
-
- var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
- _ref$size = _ref.size;
-
- let size = _ref$size === undefined ? 0 : _ref$size;
- var _ref$timeout = _ref.timeout;
- let timeout = _ref$timeout === undefined ? 0 : _ref$timeout;
-
- if (body == null) {
- // body is undefined or null
- body = null;
- } else if (isURLSearchParams(body)) {
- // body is a URLSearchParams
- body = Buffer.from(body.toString());
- } else if (isBlob(body)) ; else if (Buffer.isBuffer(body)) ; else if (Object.prototype.toString.call(body) === '[object ArrayBuffer]') {
- // body is ArrayBuffer
- body = Buffer.from(body);
- } else if (ArrayBuffer.isView(body)) {
- // body is ArrayBufferView
- body = Buffer.from(body.buffer, body.byteOffset, body.byteLength);
- } else if (body instanceof Stream) ; else {
- // none of the above
- // coerce to string then buffer
- body = Buffer.from(String(body));
- }
- this[INTERNALS] = {
- body,
- disturbed: false,
- error: null
- };
- this.size = size;
- this.timeout = timeout;
+ globChars(win32) {
+ return win32 === true ? WINDOWS_CHARS : POSIX_CHARS;
+ }
+};
- if (body instanceof Stream) {
- body.on('error', function (err) {
- const error = err.name === 'AbortError' ? err : new FetchError(`Invalid response body while trying to fetch ${_this.url}: ${err.message}`, 'system', err);
- _this[INTERNALS].error = error;
- });
- }
-}
-Body.prototype = {
- get body() {
- return this[INTERNALS].body;
- },
+/***/ }),
- get bodyUsed() {
- return this[INTERNALS].disturbed;
- },
+/***/ 5961:
+/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
- /**
- * Decode response as ArrayBuffer
- *
- * @return Promise
- */
- arrayBuffer() {
- return consumeBody.call(this).then(function (buf) {
- return buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength);
- });
- },
+"use strict";
- /**
- * Return raw response as Blob
- *
- * @return Promise
- */
- blob() {
- let ct = this.headers && this.headers.get('content-type') || '';
- return consumeBody.call(this).then(function (buf) {
- return Object.assign(
- // Prevent copying
- new Blob([], {
- type: ct.toLowerCase()
- }), {
- [BUFFER]: buf
- });
- });
- },
- /**
- * Decode response as json
- *
- * @return Promise
- */
- json() {
- var _this2 = this;
+const constants = __nccwpck_require__(6476);
+const utils = __nccwpck_require__(7426);
- return consumeBody.call(this).then(function (buffer) {
- try {
- return JSON.parse(buffer.toString());
- } catch (err) {
- return Body.Promise.reject(new FetchError(`invalid json response body at ${_this2.url} reason: ${err.message}`, 'invalid-json'));
- }
- });
- },
+/**
+ * Constants
+ */
- /**
- * Decode response as text
- *
- * @return Promise
- */
- text() {
- return consumeBody.call(this).then(function (buffer) {
- return buffer.toString();
- });
- },
+const {
+ MAX_LENGTH,
+ POSIX_REGEX_SOURCE,
+ REGEX_NON_SPECIAL_CHARS,
+ REGEX_SPECIAL_CHARS_BACKREF,
+ REPLACEMENTS
+} = constants;
- /**
- * Decode response as buffer (non-spec api)
- *
- * @return Promise
- */
- buffer() {
- return consumeBody.call(this);
- },
+/**
+ * Helpers
+ */
- /**
- * Decode response as text, while automatically detecting the encoding and
- * trying to decode to UTF-8 (non-spec api)
- *
- * @return Promise
- */
- textConverted() {
- var _this3 = this;
-
- return consumeBody.call(this).then(function (buffer) {
- return convertBody(buffer, _this3.headers);
- });
- }
-};
+const expandRange = (args, options) => {
+ if (typeof options.expandRange === 'function') {
+ return options.expandRange(...args, options);
+ }
-// In browsers, all properties are enumerable.
-Object.defineProperties(Body.prototype, {
- body: { enumerable: true },
- bodyUsed: { enumerable: true },
- arrayBuffer: { enumerable: true },
- blob: { enumerable: true },
- json: { enumerable: true },
- text: { enumerable: true }
-});
+ args.sort();
+ const value = `[${args.join('-')}]`;
-Body.mixIn = function (proto) {
- for (const name of Object.getOwnPropertyNames(Body.prototype)) {
- // istanbul ignore else: future proof
- if (!(name in proto)) {
- const desc = Object.getOwnPropertyDescriptor(Body.prototype, name);
- Object.defineProperty(proto, name, desc);
- }
- }
+ try {
+ /* eslint-disable-next-line no-new */
+ new RegExp(value);
+ } catch (ex) {
+ return args.map(v => utils.escapeRegex(v)).join('..');
+ }
+
+ return value;
};
/**
- * Consume and convert an entire Body to a Buffer.
- *
- * Ref: https://fetch.spec.whatwg.org/#concept-body-consume-body
- *
- * @return Promise
+ * Create the message for a syntax error
*/
-function consumeBody() {
- var _this4 = this;
- if (this[INTERNALS].disturbed) {
- return Body.Promise.reject(new TypeError(`body used already for: ${this.url}`));
- }
+const syntaxError = (type, char) => {
+ return `Missing ${type}: "${char}" - use "\\\\${char}" to match literal characters`;
+};
- this[INTERNALS].disturbed = true;
+/**
+ * Parse the given input string.
+ * @param {String} input
+ * @param {Object} options
+ * @return {Object}
+ */
- if (this[INTERNALS].error) {
- return Body.Promise.reject(this[INTERNALS].error);
- }
+const parse = (input, options) => {
+ if (typeof input !== 'string') {
+ throw new TypeError('Expected a string');
+ }
- let body = this.body;
+ input = REPLACEMENTS[input] || input;
- // body is null
- if (body === null) {
- return Body.Promise.resolve(Buffer.alloc(0));
- }
+ const opts = { ...options };
+ const max = typeof opts.maxLength === 'number' ? Math.min(MAX_LENGTH, opts.maxLength) : MAX_LENGTH;
- // body is blob
- if (isBlob(body)) {
- body = body.stream();
- }
+ let len = input.length;
+ if (len > max) {
+ throw new SyntaxError(`Input length: ${len}, exceeds maximum allowed length: ${max}`);
+ }
- // body is buffer
- if (Buffer.isBuffer(body)) {
- return Body.Promise.resolve(body);
- }
+ const bos = { type: 'bos', value: '', output: opts.prepend || '' };
+ const tokens = [bos];
- // istanbul ignore if: should never happen
- if (!(body instanceof Stream)) {
- return Body.Promise.resolve(Buffer.alloc(0));
- }
+ const capture = opts.capture ? '' : '?:';
+ const win32 = utils.isWindows(options);
- // body is stream
- // get ready to actually consume the body
- let accum = [];
- let accumBytes = 0;
- let abort = false;
-
- return new Body.Promise(function (resolve, reject) {
- let resTimeout;
-
- // allow timeout on slow response body
- if (_this4.timeout) {
- resTimeout = setTimeout(function () {
- abort = true;
- reject(new FetchError(`Response timeout while trying to fetch ${_this4.url} (over ${_this4.timeout}ms)`, 'body-timeout'));
- }, _this4.timeout);
- }
+ // create constants based on platform, for windows or posix
+ const PLATFORM_CHARS = constants.globChars(win32);
+ const EXTGLOB_CHARS = constants.extglobChars(PLATFORM_CHARS);
- // handle stream errors
- body.on('error', function (err) {
- if (err.name === 'AbortError') {
- // if the request was aborted, reject with this Error
- abort = true;
- reject(err);
- } else {
- // other errors, such as incorrect content-encoding
- reject(new FetchError(`Invalid response body while trying to fetch ${_this4.url}: ${err.message}`, 'system', err));
- }
- });
+ const {
+ DOT_LITERAL,
+ PLUS_LITERAL,
+ SLASH_LITERAL,
+ ONE_CHAR,
+ DOTS_SLASH,
+ NO_DOT,
+ NO_DOT_SLASH,
+ NO_DOTS_SLASH,
+ QMARK,
+ QMARK_NO_DOT,
+ STAR,
+ START_ANCHOR
+ } = PLATFORM_CHARS;
- body.on('data', function (chunk) {
- if (abort || chunk === null) {
- return;
- }
+ const globstar = opts => {
+ return `(${capture}(?:(?!${START_ANCHOR}${opts.dot ? DOTS_SLASH : DOT_LITERAL}).)*?)`;
+ };
- if (_this4.size && accumBytes + chunk.length > _this4.size) {
- abort = true;
- reject(new FetchError(`content size at ${_this4.url} over limit: ${_this4.size}`, 'max-size'));
- return;
- }
+ const nodot = opts.dot ? '' : NO_DOT;
+ const qmarkNoDot = opts.dot ? QMARK : QMARK_NO_DOT;
+ let star = opts.bash === true ? globstar(opts) : STAR;
- accumBytes += chunk.length;
- accum.push(chunk);
- });
+ if (opts.capture) {
+ star = `(${star})`;
+ }
- body.on('end', function () {
- if (abort) {
- return;
- }
+ // minimatch options support
+ if (typeof opts.noext === 'boolean') {
+ opts.noextglob = opts.noext;
+ }
- clearTimeout(resTimeout);
+ const state = {
+ input,
+ index: -1,
+ start: 0,
+ dot: opts.dot === true,
+ consumed: '',
+ output: '',
+ prefix: '',
+ backtrack: false,
+ negated: false,
+ brackets: 0,
+ braces: 0,
+ parens: 0,
+ quotes: 0,
+ globstar: false,
+ tokens
+ };
- try {
- resolve(Buffer.concat(accum, accumBytes));
- } catch (err) {
- // handle streams that have accumulated too much data (issue #414)
- reject(new FetchError(`Could not create Buffer from response body for ${_this4.url}: ${err.message}`, 'system', err));
- }
- });
- });
-}
+ input = utils.removePrefix(input, state);
+ len = input.length;
-/**
- * Detect buffer encoding and convert to target encoding
- * ref: http://www.w3.org/TR/2011/WD-html5-20110113/parsing.html#determining-the-character-encoding
- *
- * @param Buffer buffer Incoming buffer
- * @param String encoding Target encoding
- * @return String
- */
-function convertBody(buffer, headers) {
- if (typeof convert !== 'function') {
- throw new Error('The package `encoding` must be installed to use the textConverted() function');
- }
+ const extglobs = [];
+ const braces = [];
+ const stack = [];
+ let prev = bos;
+ let value;
- const ct = headers.get('content-type');
- let charset = 'utf-8';
- let res, str;
+ /**
+ * Tokenizing helpers
+ */
- // header
- if (ct) {
- res = /charset=([^;]*)/i.exec(ct);
- }
+ const eos = () => state.index === len - 1;
+ const peek = state.peek = (n = 1) => input[state.index + n];
+ const advance = state.advance = () => input[++state.index] || '';
+ const remaining = () => input.slice(state.index + 1);
+ const consume = (value = '', num = 0) => {
+ state.consumed += value;
+ state.index += num;
+ };
- // no charset in content type, peek at response body for at most 1024 bytes
- str = buffer.slice(0, 1024).toString();
+ const append = token => {
+ state.output += token.output != null ? token.output : token.value;
+ consume(token.value);
+ };
- // html5
- if (!res && str) {
- res = / {
+ let count = 1;
- // html4
- if (!res && str) {
- res = / {
+ state[type]++;
+ stack.push(type);
+ };
- // prevent decode issues when sites use incorrect encoding
- // ref: https://hsivonen.fi/encoding-menu/
- if (charset === 'gb2312' || charset === 'gbk') {
- charset = 'gb18030';
- }
- }
+ const decrement = type => {
+ state[type]--;
+ stack.pop();
+ };
- // turn raw buffers into a single utf-8 buffer
- return convert(buffer, 'UTF-8', charset).toString();
-}
+ /**
+ * Push tokens onto the tokens array. This helper speeds up
+ * tokenizing by 1) helping us avoid backtracking as much as possible,
+ * and 2) helping us avoid creating extra tokens when consecutive
+ * characters are plain text. This improves performance and simplifies
+ * lookbehinds.
+ */
-/**
- * Detect a URLSearchParams object
- * ref: https://github.com/bitinn/node-fetch/issues/296#issuecomment-307598143
- *
- * @param Object obj Object to detect by type or brand
- * @return String
- */
-function isURLSearchParams(obj) {
- // Duck-typing as a necessary condition.
- if (typeof obj !== 'object' || typeof obj.append !== 'function' || typeof obj.delete !== 'function' || typeof obj.get !== 'function' || typeof obj.getAll !== 'function' || typeof obj.has !== 'function' || typeof obj.set !== 'function') {
- return false;
- }
+ const push = tok => {
+ if (prev.type === 'globstar') {
+ const isBrace = state.braces > 0 && (tok.type === 'comma' || tok.type === 'brace');
+ const isExtglob = tok.extglob === true || (extglobs.length && (tok.type === 'pipe' || tok.type === 'paren'));
- // Brand-checking and more duck-typing as optional condition.
- return obj.constructor.name === 'URLSearchParams' || Object.prototype.toString.call(obj) === '[object URLSearchParams]' || typeof obj.sort === 'function';
-}
+ if (tok.type !== 'slash' && tok.type !== 'paren' && !isBrace && !isExtglob) {
+ state.output = state.output.slice(0, -prev.output.length);
+ prev.type = 'star';
+ prev.value = '*';
+ prev.output = star;
+ state.output += prev.output;
+ }
+ }
-/**
- * Check if `obj` is a W3C `Blob` object (which `File` inherits from)
- * @param {*} obj
- * @return {boolean}
- */
-function isBlob(obj) {
- return typeof obj === 'object' && typeof obj.arrayBuffer === 'function' && typeof obj.type === 'string' && typeof obj.stream === 'function' && typeof obj.constructor === 'function' && typeof obj.constructor.name === 'string' && /^(Blob|File)$/.test(obj.constructor.name) && /^(Blob|File)$/.test(obj[Symbol.toStringTag]);
-}
+ if (extglobs.length && tok.type !== 'paren') {
+ extglobs[extglobs.length - 1].inner += tok.value;
+ }
-/**
- * Clone body given Res/Req instance
- *
- * @param Mixed instance Response or Request instance
- * @return Mixed
- */
-function clone(instance) {
- let p1, p2;
- let body = instance.body;
+ if (tok.value || tok.output) append(tok);
+ if (prev && prev.type === 'text' && tok.type === 'text') {
+ prev.value += tok.value;
+ prev.output = (prev.output || '') + tok.value;
+ return;
+ }
- // don't allow cloning a used body
- if (instance.bodyUsed) {
- throw new Error('cannot clone body after it is used');
- }
+ tok.prev = prev;
+ tokens.push(tok);
+ prev = tok;
+ };
- // check that body is a stream and not form-data object
- // note: we can't clone the form-data object without having it as a dependency
- if (body instanceof Stream && typeof body.getBoundary !== 'function') {
- // tee instance body
- p1 = new PassThrough();
- p2 = new PassThrough();
- body.pipe(p1);
- body.pipe(p2);
- // set instance body to teed body and return the other teed body
- instance[INTERNALS].body = p1;
- body = p2;
- }
+ const extglobOpen = (type, value) => {
+ const token = { ...EXTGLOB_CHARS[value], conditions: 1, inner: '' };
- return body;
-}
+ token.prev = prev;
+ token.parens = state.parens;
+ token.output = state.output;
+ const output = (opts.capture ? '(' : '') + token.open;
-/**
- * Performs the operation "extract a `Content-Type` value from |object|" as
- * specified in the specification:
- * https://fetch.spec.whatwg.org/#concept-bodyinit-extract
- *
- * This function assumes that instance.body is present.
- *
- * @param Mixed instance Any options.body input
- */
-function extractContentType(body) {
- if (body === null) {
- // body is null
- return null;
- } else if (typeof body === 'string') {
- // body is string
- return 'text/plain;charset=UTF-8';
- } else if (isURLSearchParams(body)) {
- // body is a URLSearchParams
- return 'application/x-www-form-urlencoded;charset=UTF-8';
- } else if (isBlob(body)) {
- // body is blob
- return body.type || null;
- } else if (Buffer.isBuffer(body)) {
- // body is buffer
- return null;
- } else if (Object.prototype.toString.call(body) === '[object ArrayBuffer]') {
- // body is ArrayBuffer
- return null;
- } else if (ArrayBuffer.isView(body)) {
- // body is ArrayBufferView
- return null;
- } else if (typeof body.getBoundary === 'function') {
- // detect form data input from form-data module
- return `multipart/form-data;boundary=${body.getBoundary()}`;
- } else if (body instanceof Stream) {
- // body is stream
- // can't really do much about this
- return null;
- } else {
- // Body constructor defaults other things to string
- return 'text/plain;charset=UTF-8';
- }
-}
+ increment('parens');
+ push({ type, value, output: state.output ? '' : ONE_CHAR });
+ push({ type: 'paren', extglob: true, value: advance(), output });
+ extglobs.push(token);
+ };
-/**
- * The Fetch Standard treats this as if "total bytes" is a property on the body.
- * For us, we have to explicitly get it with a function.
- *
- * ref: https://fetch.spec.whatwg.org/#concept-body-total-bytes
- *
- * @param Body instance Instance of Body
- * @return Number? Number of bytes, or null if not possible
- */
-function getTotalBytes(instance) {
- const body = instance.body;
-
-
- if (body === null) {
- // body is null
- return 0;
- } else if (isBlob(body)) {
- return body.size;
- } else if (Buffer.isBuffer(body)) {
- // body is buffer
- return body.length;
- } else if (body && typeof body.getLengthSync === 'function') {
- // detect form data input from form-data module
- if (body._lengthRetrievers && body._lengthRetrievers.length == 0 || // 1.x
- body.hasKnownLength && body.hasKnownLength()) {
- // 2.x
- return body.getLengthSync();
- }
- return null;
- } else {
- // body is stream
- return null;
- }
-}
+ const extglobClose = token => {
+ let output = token.close + (opts.capture ? ')' : '');
+ let rest;
-/**
- * Write a Body to a Node.js WritableStream (e.g. http.Request) object.
- *
- * @param Body instance Instance of Body
- * @return Void
- */
-function writeToStream(dest, instance) {
- const body = instance.body;
-
-
- if (body === null) {
- // body is null
- dest.end();
- } else if (isBlob(body)) {
- body.stream().pipe(dest);
- } else if (Buffer.isBuffer(body)) {
- // body is buffer
- dest.write(body);
- dest.end();
- } else {
- // body is stream
- body.pipe(dest);
- }
-}
+ if (token.type === 'negate') {
+ let extglobStar = star;
-// expose Promise
-Body.Promise = global.Promise;
+ if (token.inner && token.inner.length > 1 && token.inner.includes('/')) {
+ extglobStar = globstar(opts);
+ }
-/**
- * headers.js
- *
- * Headers class offers convenient helpers
- */
+ if (extglobStar !== star || eos() || /^\)+$/.test(remaining())) {
+ output = token.close = `)$))${extglobStar}`;
+ }
-const invalidTokenRegex = /[^\^_`a-zA-Z\-0-9!#$%&'*+.|~]/;
-const invalidHeaderCharRegex = /[^\t\x20-\x7e\x80-\xff]/;
+ if (token.inner.includes('*') && (rest = remaining()) && /^\.[^\\/.]+$/.test(rest)) {
+ // Any non-magical string (`.ts`) or even nested expression (`.{ts,tsx}`) can follow after the closing parenthesis.
+ // In this case, we need to parse the string and use it in the output of the original pattern.
+ // Suitable patterns: `/!(*.d).ts`, `/!(*.d).{ts,tsx}`, `**/!(*-dbg).@(js)`.
+ //
+ // Disabling the `fastpaths` option due to a problem with parsing strings as `.ts` in the pattern like `**/!(*.d).ts`.
+ const expression = parse(rest, { ...options, fastpaths: false }).output;
-function validateName(name) {
- name = `${name}`;
- if (invalidTokenRegex.test(name) || name === '') {
- throw new TypeError(`${name} is not a legal HTTP header name`);
- }
-}
+ output = token.close = `)${expression})${extglobStar})`;
+ }
-function validateValue(value) {
- value = `${value}`;
- if (invalidHeaderCharRegex.test(value)) {
- throw new TypeError(`${value} is not a legal HTTP header value`);
- }
-}
+ if (token.prev.type === 'bos') {
+ state.negatedExtglob = true;
+ }
+ }
-/**
- * Find the key in the map object given a header name.
- *
- * Returns undefined if not found.
- *
- * @param String name Header name
- * @return String|Undefined
- */
-function find(map, name) {
- name = name.toLowerCase();
- for (const key in map) {
- if (key.toLowerCase() === name) {
- return key;
- }
- }
- return undefined;
-}
+ push({ type: 'paren', extglob: true, value, output });
+ decrement('parens');
+ };
-const MAP = Symbol('map');
-class Headers {
- /**
- * Headers class
- *
- * @param Object headers Response headers
- * @return Void
- */
- constructor() {
- let init = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : undefined;
+ /**
+ * Fast paths
+ */
- this[MAP] = Object.create(null);
+ if (opts.fastpaths !== false && !/(^[*!]|[/()[\]{}"])/.test(input)) {
+ let backslashes = false;
- if (init instanceof Headers) {
- const rawHeaders = init.raw();
- const headerNames = Object.keys(rawHeaders);
+ let output = input.replace(REGEX_SPECIAL_CHARS_BACKREF, (m, esc, chars, first, rest, index) => {
+ if (first === '\\') {
+ backslashes = true;
+ return m;
+ }
- for (const headerName of headerNames) {
- for (const value of rawHeaders[headerName]) {
- this.append(headerName, value);
- }
- }
+ if (first === '?') {
+ if (esc) {
+ return esc + first + (rest ? QMARK.repeat(rest.length) : '');
+ }
+ if (index === 0) {
+ return qmarkNoDot + (rest ? QMARK.repeat(rest.length) : '');
+ }
+ return QMARK.repeat(chars.length);
+ }
- return;
- }
+ if (first === '.') {
+ return DOT_LITERAL.repeat(chars.length);
+ }
- // We don't worry about converting prop to ByteString here as append()
- // will handle it.
- if (init == null) ; else if (typeof init === 'object') {
- const method = init[Symbol.iterator];
- if (method != null) {
- if (typeof method !== 'function') {
- throw new TypeError('Header pairs must be iterable');
- }
+ if (first === '*') {
+ if (esc) {
+ return esc + first + (rest ? star : '');
+ }
+ return star;
+ }
+ return esc ? m : `\\${m}`;
+ });
- // sequence>
- // Note: per spec we have to first exhaust the lists then process them
- const pairs = [];
- for (const pair of init) {
- if (typeof pair !== 'object' || typeof pair[Symbol.iterator] !== 'function') {
- throw new TypeError('Each header pair must be iterable');
- }
- pairs.push(Array.from(pair));
- }
+ if (backslashes === true) {
+ if (opts.unescape === true) {
+ output = output.replace(/\\/g, '');
+ } else {
+ output = output.replace(/\\+/g, m => {
+ return m.length % 2 === 0 ? '\\\\' : (m ? '\\' : '');
+ });
+ }
+ }
- for (const pair of pairs) {
- if (pair.length !== 2) {
- throw new TypeError('Each header pair must be a name/value tuple');
- }
- this.append(pair[0], pair[1]);
- }
- } else {
- // record
- for (const key of Object.keys(init)) {
- const value = init[key];
- this.append(key, value);
- }
- }
- } else {
- throw new TypeError('Provided initializer must be an object');
- }
- }
+ if (output === input && opts.contains === true) {
+ state.output = input;
+ return state;
+ }
- /**
- * Return combined header value given name
- *
- * @param String name Header name
- * @return Mixed
- */
- get(name) {
- name = `${name}`;
- validateName(name);
- const key = find(this[MAP], name);
- if (key === undefined) {
- return null;
- }
+ state.output = utils.wrapOutput(output, state, options);
+ return state;
+ }
- return this[MAP][key].join(', ');
- }
+ /**
+ * Tokenize input until we reach end-of-string
+ */
- /**
- * Iterate over all headers
- *
- * @param Function callback Executed for each item with parameters (value, name, thisArg)
- * @param Boolean thisArg `this` context for callback function
- * @return Void
- */
- forEach(callback) {
- let thisArg = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : undefined;
-
- let pairs = getHeaders(this);
- let i = 0;
- while (i < pairs.length) {
- var _pairs$i = pairs[i];
- const name = _pairs$i[0],
- value = _pairs$i[1];
-
- callback.call(thisArg, value, name, this);
- pairs = getHeaders(this);
- i++;
- }
- }
+ while (!eos()) {
+ value = advance();
- /**
- * Overwrite header values given name
- *
- * @param String name Header name
- * @param String value Header value
- * @return Void
- */
- set(name, value) {
- name = `${name}`;
- value = `${value}`;
- validateName(name);
- validateValue(value);
- const key = find(this[MAP], name);
- this[MAP][key !== undefined ? key : name] = [value];
- }
+ if (value === '\u0000') {
+ continue;
+ }
- /**
- * Append a value onto existing header
- *
- * @param String name Header name
- * @param String value Header value
- * @return Void
- */
- append(name, value) {
- name = `${name}`;
- value = `${value}`;
- validateName(name);
- validateValue(value);
- const key = find(this[MAP], name);
- if (key !== undefined) {
- this[MAP][key].push(value);
- } else {
- this[MAP][name] = [value];
- }
- }
+ /**
+ * Escaped characters
+ */
- /**
- * Check for header name existence
- *
- * @param String name Header name
- * @return Boolean
- */
- has(name) {
- name = `${name}`;
- validateName(name);
- return find(this[MAP], name) !== undefined;
- }
+ if (value === '\\') {
+ const next = peek();
- /**
- * Delete all header values given name
- *
- * @param String name Header name
- * @return Void
- */
- delete(name) {
- name = `${name}`;
- validateName(name);
- const key = find(this[MAP], name);
- if (key !== undefined) {
- delete this[MAP][key];
- }
- }
+ if (next === '/' && opts.bash !== true) {
+ continue;
+ }
- /**
- * Return raw headers (non-spec api)
- *
- * @return Object
- */
- raw() {
- return this[MAP];
- }
+ if (next === '.' || next === ';') {
+ continue;
+ }
- /**
- * Get an iterator on keys.
- *
- * @return Iterator
- */
- keys() {
- return createHeadersIterator(this, 'key');
- }
+ if (!next) {
+ value += '\\';
+ push({ type: 'text', value });
+ continue;
+ }
- /**
- * Get an iterator on values.
- *
- * @return Iterator
- */
- values() {
- return createHeadersIterator(this, 'value');
- }
+ // collapse slashes to reduce potential for exploits
+ const match = /^\\+/.exec(remaining());
+ let slashes = 0;
- /**
- * Get an iterator on entries.
- *
- * This is the default iterator of the Headers object.
- *
- * @return Iterator
- */
- [Symbol.iterator]() {
- return createHeadersIterator(this, 'key+value');
- }
-}
-Headers.prototype.entries = Headers.prototype[Symbol.iterator];
+ if (match && match[0].length > 2) {
+ slashes = match[0].length;
+ state.index += slashes;
+ if (slashes % 2 !== 0) {
+ value += '\\';
+ }
+ }
-Object.defineProperty(Headers.prototype, Symbol.toStringTag, {
- value: 'Headers',
- writable: false,
- enumerable: false,
- configurable: true
-});
+ if (opts.unescape === true) {
+ value = advance();
+ } else {
+ value += advance();
+ }
-Object.defineProperties(Headers.prototype, {
- get: { enumerable: true },
- forEach: { enumerable: true },
- set: { enumerable: true },
- append: { enumerable: true },
- has: { enumerable: true },
- delete: { enumerable: true },
- keys: { enumerable: true },
- values: { enumerable: true },
- entries: { enumerable: true }
-});
+ if (state.brackets === 0) {
+ push({ type: 'text', value });
+ continue;
+ }
+ }
-function getHeaders(headers) {
- let kind = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'key+value';
+ /**
+ * If we're inside a regex character class, continue
+ * until we reach the closing bracket.
+ */
- const keys = Object.keys(headers[MAP]).sort();
- return keys.map(kind === 'key' ? function (k) {
- return k.toLowerCase();
- } : kind === 'value' ? function (k) {
- return headers[MAP][k].join(', ');
- } : function (k) {
- return [k.toLowerCase(), headers[MAP][k].join(', ')];
- });
-}
+ if (state.brackets > 0 && (value !== ']' || prev.value === '[' || prev.value === '[^')) {
+ if (opts.posix !== false && value === ':') {
+ const inner = prev.value.slice(1);
+ if (inner.includes('[')) {
+ prev.posix = true;
-const INTERNAL = Symbol('internal');
+ if (inner.includes(':')) {
+ const idx = prev.value.lastIndexOf('[');
+ const pre = prev.value.slice(0, idx);
+ const rest = prev.value.slice(idx + 2);
+ const posix = POSIX_REGEX_SOURCE[rest];
+ if (posix) {
+ prev.value = pre + posix;
+ state.backtrack = true;
+ advance();
-function createHeadersIterator(target, kind) {
- const iterator = Object.create(HeadersIteratorPrototype);
- iterator[INTERNAL] = {
- target,
- kind,
- index: 0
- };
- return iterator;
-}
+ if (!bos.output && tokens.indexOf(prev) === 1) {
+ bos.output = ONE_CHAR;
+ }
+ continue;
+ }
+ }
+ }
+ }
-const HeadersIteratorPrototype = Object.setPrototypeOf({
- next() {
- // istanbul ignore if
- if (!this || Object.getPrototypeOf(this) !== HeadersIteratorPrototype) {
- throw new TypeError('Value of `this` is not a HeadersIterator');
- }
+ if ((value === '[' && peek() !== ':') || (value === '-' && peek() === ']')) {
+ value = `\\${value}`;
+ }
- var _INTERNAL = this[INTERNAL];
- const target = _INTERNAL.target,
- kind = _INTERNAL.kind,
- index = _INTERNAL.index;
+ if (value === ']' && (prev.value === '[' || prev.value === '[^')) {
+ value = `\\${value}`;
+ }
- const values = getHeaders(target, kind);
- const len = values.length;
- if (index >= len) {
- return {
- value: undefined,
- done: true
- };
- }
+ if (opts.posix === true && value === '!' && prev.value === '[') {
+ value = '^';
+ }
- this[INTERNAL].index = index + 1;
+ prev.value += value;
+ append({ value });
+ continue;
+ }
- return {
- value: values[index],
- done: false
- };
- }
-}, Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]())));
+ /**
+ * If we're inside a quoted string, continue
+ * until we reach the closing double quote.
+ */
-Object.defineProperty(HeadersIteratorPrototype, Symbol.toStringTag, {
- value: 'HeadersIterator',
- writable: false,
- enumerable: false,
- configurable: true
-});
+ if (state.quotes === 1 && value !== '"') {
+ value = utils.escapeRegex(value);
+ prev.value += value;
+ append({ value });
+ continue;
+ }
-/**
- * Export the Headers object in a form that Node.js can consume.
- *
- * @param Headers headers
- * @return Object
- */
-function exportNodeCompatibleHeaders(headers) {
- const obj = Object.assign({ __proto__: null }, headers[MAP]);
-
- // http.request() only supports string as Host header. This hack makes
- // specifying custom Host header possible.
- const hostHeaderKey = find(headers[MAP], 'Host');
- if (hostHeaderKey !== undefined) {
- obj[hostHeaderKey] = obj[hostHeaderKey][0];
- }
+ /**
+ * Double quotes
+ */
- return obj;
-}
+ if (value === '"') {
+ state.quotes = state.quotes === 1 ? 0 : 1;
+ if (opts.keepQuotes === true) {
+ push({ type: 'text', value });
+ }
+ continue;
+ }
-/**
- * Create a Headers object from an object of headers, ignoring those that do
- * not conform to HTTP grammar productions.
- *
- * @param Object obj Object of headers
- * @return Headers
- */
-function createHeadersLenient(obj) {
- const headers = new Headers();
- for (const name of Object.keys(obj)) {
- if (invalidTokenRegex.test(name)) {
- continue;
- }
- if (Array.isArray(obj[name])) {
- for (const val of obj[name]) {
- if (invalidHeaderCharRegex.test(val)) {
- continue;
- }
- if (headers[MAP][name] === undefined) {
- headers[MAP][name] = [val];
- } else {
- headers[MAP][name].push(val);
- }
- }
- } else if (!invalidHeaderCharRegex.test(obj[name])) {
- headers[MAP][name] = [obj[name]];
- }
- }
- return headers;
-}
+ /**
+ * Parentheses
+ */
-const INTERNALS$1 = Symbol('Response internals');
+ if (value === '(') {
+ increment('parens');
+ push({ type: 'paren', value });
+ continue;
+ }
-// fix an issue where "STATUS_CODES" aren't a named export for node <10
-const STATUS_CODES = http.STATUS_CODES;
+ if (value === ')') {
+ if (state.parens === 0 && opts.strictBrackets === true) {
+ throw new SyntaxError(syntaxError('opening', '('));
+ }
-/**
- * Response class
- *
- * @param Stream body Readable stream
- * @param Object opts Response options
- * @return Void
- */
-class Response {
- constructor() {
- let body = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
- let opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
+ const extglob = extglobs[extglobs.length - 1];
+ if (extglob && state.parens === extglob.parens + 1) {
+ extglobClose(extglobs.pop());
+ continue;
+ }
- Body.call(this, body, opts);
+ push({ type: 'paren', value, output: state.parens ? ')' : '\\)' });
+ decrement('parens');
+ continue;
+ }
- const status = opts.status || 200;
- const headers = new Headers(opts.headers);
+ /**
+ * Square brackets
+ */
- if (body != null && !headers.has('Content-Type')) {
- const contentType = extractContentType(body);
- if (contentType) {
- headers.append('Content-Type', contentType);
- }
- }
+ if (value === '[') {
+ if (opts.nobracket === true || !remaining().includes(']')) {
+ if (opts.nobracket !== true && opts.strictBrackets === true) {
+ throw new SyntaxError(syntaxError('closing', ']'));
+ }
- this[INTERNALS$1] = {
- url: opts.url,
- status,
- statusText: opts.statusText || STATUS_CODES[status],
- headers,
- counter: opts.counter
- };
- }
+ value = `\\${value}`;
+ } else {
+ increment('brackets');
+ }
- get url() {
- return this[INTERNALS$1].url || '';
- }
+ push({ type: 'bracket', value });
+ continue;
+ }
- get status() {
- return this[INTERNALS$1].status;
- }
+ if (value === ']') {
+ if (opts.nobracket === true || (prev && prev.type === 'bracket' && prev.value.length === 1)) {
+ push({ type: 'text', value, output: `\\${value}` });
+ continue;
+ }
- /**
- * Convenience property representing if the request ended normally
- */
- get ok() {
- return this[INTERNALS$1].status >= 200 && this[INTERNALS$1].status < 300;
- }
+ if (state.brackets === 0) {
+ if (opts.strictBrackets === true) {
+ throw new SyntaxError(syntaxError('opening', '['));
+ }
- get redirected() {
- return this[INTERNALS$1].counter > 0;
- }
+ push({ type: 'text', value, output: `\\${value}` });
+ continue;
+ }
- get statusText() {
- return this[INTERNALS$1].statusText;
- }
+ decrement('brackets');
- get headers() {
- return this[INTERNALS$1].headers;
- }
+ const prevValue = prev.value.slice(1);
+ if (prev.posix !== true && prevValue[0] === '^' && !prevValue.includes('/')) {
+ value = `/${value}`;
+ }
- /**
- * Clone this response
- *
- * @return Response
- */
- clone() {
- return new Response(clone(this), {
- url: this.url,
- status: this.status,
- statusText: this.statusText,
- headers: this.headers,
- ok: this.ok,
- redirected: this.redirected
- });
- }
-}
+ prev.value += value;
+ append({ value });
-Body.mixIn(Response.prototype);
+ // when literal brackets are explicitly disabled
+ // assume we should match with a regex character class
+ if (opts.literalBrackets === false || utils.hasRegexChars(prevValue)) {
+ continue;
+ }
-Object.defineProperties(Response.prototype, {
- url: { enumerable: true },
- status: { enumerable: true },
- ok: { enumerable: true },
- redirected: { enumerable: true },
- statusText: { enumerable: true },
- headers: { enumerable: true },
- clone: { enumerable: true }
-});
+ const escaped = utils.escapeRegex(prev.value);
+ state.output = state.output.slice(0, -prev.value.length);
-Object.defineProperty(Response.prototype, Symbol.toStringTag, {
- value: 'Response',
- writable: false,
- enumerable: false,
- configurable: true
-});
+ // when literal brackets are explicitly enabled
+ // assume we should escape the brackets to match literal characters
+ if (opts.literalBrackets === true) {
+ state.output += escaped;
+ prev.value = escaped;
+ continue;
+ }
-const INTERNALS$2 = Symbol('Request internals');
-const URL = Url.URL || whatwgUrl.URL;
+ // when the user specifies nothing, try to match both
+ prev.value = `(${capture}${escaped}|${prev.value})`;
+ state.output += prev.value;
+ continue;
+ }
-// fix an issue where "format", "parse" aren't a named export for node <10
-const parse_url = Url.parse;
-const format_url = Url.format;
+ /**
+ * Braces
+ */
-/**
- * Wrapper around `new URL` to handle arbitrary URLs
- *
- * @param {string} urlStr
- * @return {void}
- */
-function parseURL(urlStr) {
- /*
- Check whether the URL is absolute or not
- Scheme: https://tools.ietf.org/html/rfc3986#section-3.1
- Absolute URL: https://tools.ietf.org/html/rfc3986#section-4.3
- */
- if (/^[a-zA-Z][a-zA-Z\d+\-.]*:/.exec(urlStr)) {
- urlStr = new URL(urlStr).toString();
- }
-
- // Fallback to old implementation for arbitrary URLs
- return parse_url(urlStr);
-}
-
-const streamDestructionSupported = 'destroy' in Stream.Readable.prototype;
-
-/**
- * Check if a value is an instance of Request.
- *
- * @param Mixed input
- * @return Boolean
- */
-function isRequest(input) {
- return typeof input === 'object' && typeof input[INTERNALS$2] === 'object';
-}
-
-function isAbortSignal(signal) {
- const proto = signal && typeof signal === 'object' && Object.getPrototypeOf(signal);
- return !!(proto && proto.constructor.name === 'AbortSignal');
-}
-
-/**
- * Request class
- *
- * @param Mixed input Url or Request instance
- * @param Object init Custom options
- * @return Void
- */
-class Request {
- constructor(input) {
- let init = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
-
- let parsedURL;
-
- // normalize input
- if (!isRequest(input)) {
- if (input && input.href) {
- // in order to support Node.js' Url objects; though WHATWG's URL objects
- // will fall into this branch also (since their `toString()` will return
- // `href` property anyway)
- parsedURL = parseURL(input.href);
- } else {
- // coerce input to a string before attempting to parse
- parsedURL = parseURL(`${input}`);
- }
- input = {};
- } else {
- parsedURL = parseURL(input.url);
- }
+ if (value === '{' && opts.nobrace !== true) {
+ increment('braces');
- let method = init.method || input.method || 'GET';
- method = method.toUpperCase();
+ const open = {
+ type: 'brace',
+ value,
+ output: '(',
+ outputIndex: state.output.length,
+ tokensIndex: state.tokens.length
+ };
- if ((init.body != null || isRequest(input) && input.body !== null) && (method === 'GET' || method === 'HEAD')) {
- throw new TypeError('Request with GET/HEAD method cannot have body');
- }
+ braces.push(open);
+ push(open);
+ continue;
+ }
- let inputBody = init.body != null ? init.body : isRequest(input) && input.body !== null ? clone(input) : null;
+ if (value === '}') {
+ const brace = braces[braces.length - 1];
- Body.call(this, inputBody, {
- timeout: init.timeout || input.timeout || 0,
- size: init.size || input.size || 0
- });
+ if (opts.nobrace === true || !brace) {
+ push({ type: 'text', value, output: value });
+ continue;
+ }
- const headers = new Headers(init.headers || input.headers || {});
+ let output = ')';
- if (inputBody != null && !headers.has('Content-Type')) {
- const contentType = extractContentType(inputBody);
- if (contentType) {
- headers.append('Content-Type', contentType);
- }
- }
+ if (brace.dots === true) {
+ const arr = tokens.slice();
+ const range = [];
- let signal = isRequest(input) ? input.signal : null;
- if ('signal' in init) signal = init.signal;
+ for (let i = arr.length - 1; i >= 0; i--) {
+ tokens.pop();
+ if (arr[i].type === 'brace') {
+ break;
+ }
+ if (arr[i].type !== 'dots') {
+ range.unshift(arr[i].value);
+ }
+ }
- if (signal != null && !isAbortSignal(signal)) {
- throw new TypeError('Expected signal to be an instanceof AbortSignal');
- }
+ output = expandRange(range, opts);
+ state.backtrack = true;
+ }
- this[INTERNALS$2] = {
- method,
- redirect: init.redirect || input.redirect || 'follow',
- headers,
- parsedURL,
- signal
- };
+ if (brace.comma !== true && brace.dots !== true) {
+ const out = state.output.slice(0, brace.outputIndex);
+ const toks = state.tokens.slice(brace.tokensIndex);
+ brace.value = brace.output = '\\{';
+ value = output = '\\}';
+ state.output = out;
+ for (const t of toks) {
+ state.output += (t.output || t.value);
+ }
+ }
- // node-fetch-only options
- this.follow = init.follow !== undefined ? init.follow : input.follow !== undefined ? input.follow : 20;
- this.compress = init.compress !== undefined ? init.compress : input.compress !== undefined ? input.compress : true;
- this.counter = init.counter || input.counter || 0;
- this.agent = init.agent || input.agent;
- }
+ push({ type: 'brace', value, output });
+ decrement('braces');
+ braces.pop();
+ continue;
+ }
- get method() {
- return this[INTERNALS$2].method;
- }
+ /**
+ * Pipes
+ */
- get url() {
- return format_url(this[INTERNALS$2].parsedURL);
- }
+ if (value === '|') {
+ if (extglobs.length > 0) {
+ extglobs[extglobs.length - 1].conditions++;
+ }
+ push({ type: 'text', value });
+ continue;
+ }
- get headers() {
- return this[INTERNALS$2].headers;
- }
+ /**
+ * Commas
+ */
- get redirect() {
- return this[INTERNALS$2].redirect;
- }
+ if (value === ',') {
+ let output = value;
- get signal() {
- return this[INTERNALS$2].signal;
- }
+ const brace = braces[braces.length - 1];
+ if (brace && stack[stack.length - 1] === 'braces') {
+ brace.comma = true;
+ output = '|';
+ }
- /**
- * Clone this request
- *
- * @return Request
- */
- clone() {
- return new Request(this);
- }
-}
+ push({ type: 'comma', value, output });
+ continue;
+ }
-Body.mixIn(Request.prototype);
+ /**
+ * Slashes
+ */
-Object.defineProperty(Request.prototype, Symbol.toStringTag, {
- value: 'Request',
- writable: false,
- enumerable: false,
- configurable: true
-});
+ if (value === '/') {
+ // if the beginning of the glob is "./", advance the start
+ // to the current index, and don't add the "./" characters
+ // to the state. This greatly simplifies lookbehinds when
+ // checking for BOS characters like "!" and "." (not "./")
+ if (prev.type === 'dot' && state.index === state.start + 1) {
+ state.start = state.index + 1;
+ state.consumed = '';
+ state.output = '';
+ tokens.pop();
+ prev = bos; // reset "prev" to the first token
+ continue;
+ }
-Object.defineProperties(Request.prototype, {
- method: { enumerable: true },
- url: { enumerable: true },
- headers: { enumerable: true },
- redirect: { enumerable: true },
- clone: { enumerable: true },
- signal: { enumerable: true }
-});
+ push({ type: 'slash', value, output: SLASH_LITERAL });
+ continue;
+ }
-/**
- * Convert a Request to Node.js http request options.
- *
- * @param Request A Request instance
- * @return Object The options object to be passed to http.request
- */
-function getNodeRequestOptions(request) {
- const parsedURL = request[INTERNALS$2].parsedURL;
- const headers = new Headers(request[INTERNALS$2].headers);
+ /**
+ * Dots
+ */
- // fetch step 1.3
- if (!headers.has('Accept')) {
- headers.set('Accept', '*/*');
- }
+ if (value === '.') {
+ if (state.braces > 0 && prev.type === 'dot') {
+ if (prev.value === '.') prev.output = DOT_LITERAL;
+ const brace = braces[braces.length - 1];
+ prev.type = 'dots';
+ prev.output += value;
+ prev.value += value;
+ brace.dots = true;
+ continue;
+ }
- // Basic fetch
- if (!parsedURL.protocol || !parsedURL.hostname) {
- throw new TypeError('Only absolute URLs are supported');
- }
+ if ((state.braces + state.parens) === 0 && prev.type !== 'bos' && prev.type !== 'slash') {
+ push({ type: 'text', value, output: DOT_LITERAL });
+ continue;
+ }
- if (!/^https?:$/.test(parsedURL.protocol)) {
- throw new TypeError('Only HTTP(S) protocols are supported');
- }
+ push({ type: 'dot', value, output: DOT_LITERAL });
+ continue;
+ }
- if (request.signal && request.body instanceof Stream.Readable && !streamDestructionSupported) {
- throw new Error('Cancellation of streamed requests with AbortSignal is not supported in node < 8');
- }
+ /**
+ * Question marks
+ */
- // HTTP-network-or-cache fetch steps 2.4-2.7
- let contentLengthValue = null;
- if (request.body == null && /^(POST|PUT)$/i.test(request.method)) {
- contentLengthValue = '0';
- }
- if (request.body != null) {
- const totalBytes = getTotalBytes(request);
- if (typeof totalBytes === 'number') {
- contentLengthValue = String(totalBytes);
- }
- }
- if (contentLengthValue) {
- headers.set('Content-Length', contentLengthValue);
- }
+ if (value === '?') {
+ const isGroup = prev && prev.value === '(';
+ if (!isGroup && opts.noextglob !== true && peek() === '(' && peek(2) !== '?') {
+ extglobOpen('qmark', value);
+ continue;
+ }
- // HTTP-network-or-cache fetch step 2.11
- if (!headers.has('User-Agent')) {
- headers.set('User-Agent', 'node-fetch/1.0 (+https://github.com/bitinn/node-fetch)');
- }
+ if (prev && prev.type === 'paren') {
+ const next = peek();
+ let output = value;
- // HTTP-network-or-cache fetch step 2.15
- if (request.compress && !headers.has('Accept-Encoding')) {
- headers.set('Accept-Encoding', 'gzip,deflate');
- }
+ if (next === '<' && !utils.supportsLookbehinds()) {
+ throw new Error('Node.js v10 or higher is required for regex lookbehinds');
+ }
- let agent = request.agent;
- if (typeof agent === 'function') {
- agent = agent(parsedURL);
- }
+ if ((prev.value === '(' && !/[!=<:]/.test(next)) || (next === '<' && !/<([!=]|\w+>)/.test(remaining()))) {
+ output = `\\${value}`;
+ }
- // HTTP-network fetch step 4.2
- // chunked encoding is handled by Node.js
+ push({ type: 'text', value, output });
+ continue;
+ }
- return Object.assign({}, parsedURL, {
- method: request.method,
- headers: exportNodeCompatibleHeaders(headers),
- agent
- });
-}
+ if (opts.dot !== true && (prev.type === 'slash' || prev.type === 'bos')) {
+ push({ type: 'qmark', value, output: QMARK_NO_DOT });
+ continue;
+ }
-/**
- * abort-error.js
- *
- * AbortError interface for cancelled requests
- */
+ push({ type: 'qmark', value, output: QMARK });
+ continue;
+ }
-/**
- * Create AbortError instance
- *
- * @param String message Error message for human
- * @return AbortError
- */
-function AbortError(message) {
- Error.call(this, message);
+ /**
+ * Exclamation
+ */
- this.type = 'aborted';
- this.message = message;
+ if (value === '!') {
+ if (opts.noextglob !== true && peek() === '(') {
+ if (peek(2) !== '?' || !/[!=<:]/.test(peek(3))) {
+ extglobOpen('negate', value);
+ continue;
+ }
+ }
- // hide custom error implementation details from end-users
- Error.captureStackTrace(this, this.constructor);
-}
+ if (opts.nonegate !== true && state.index === 0) {
+ negate();
+ continue;
+ }
+ }
-AbortError.prototype = Object.create(Error.prototype);
-AbortError.prototype.constructor = AbortError;
-AbortError.prototype.name = 'AbortError';
+ /**
+ * Plus
+ */
-const URL$1 = Url.URL || whatwgUrl.URL;
+ if (value === '+') {
+ if (opts.noextglob !== true && peek() === '(' && peek(2) !== '?') {
+ extglobOpen('plus', value);
+ continue;
+ }
-// fix an issue where "PassThrough", "resolve" aren't a named export for node <10
-const PassThrough$1 = Stream.PassThrough;
+ if ((prev && prev.value === '(') || opts.regex === false) {
+ push({ type: 'plus', value, output: PLUS_LITERAL });
+ continue;
+ }
-const isDomainOrSubdomain = function isDomainOrSubdomain(destination, original) {
- const orig = new URL$1(original).hostname;
- const dest = new URL$1(destination).hostname;
+ if ((prev && (prev.type === 'bracket' || prev.type === 'paren' || prev.type === 'brace')) || state.parens > 0) {
+ push({ type: 'plus', value });
+ continue;
+ }
- return orig === dest || orig[orig.length - dest.length - 1] === '.' && orig.endsWith(dest);
-};
+ push({ type: 'plus', value: PLUS_LITERAL });
+ continue;
+ }
-/**
- * isSameProtocol reports whether the two provided URLs use the same protocol.
- *
- * Both domains must already be in canonical form.
- * @param {string|URL} original
- * @param {string|URL} destination
- */
-const isSameProtocol = function isSameProtocol(destination, original) {
- const orig = new URL$1(original).protocol;
- const dest = new URL$1(destination).protocol;
+ /**
+ * Plain text
+ */
- return orig === dest;
-};
+ if (value === '@') {
+ if (opts.noextglob !== true && peek() === '(' && peek(2) !== '?') {
+ push({ type: 'at', extglob: true, value, output: '' });
+ continue;
+ }
-/**
- * Fetch function
- *
- * @param Mixed url Absolute url or Request instance
- * @param Object opts Fetch options
- * @return Promise
- */
-function fetch(url, opts) {
+ push({ type: 'text', value });
+ continue;
+ }
- // allow custom promise
- if (!fetch.Promise) {
- throw new Error('native promise missing, set fetch.Promise to your favorite alternative');
- }
+ /**
+ * Plain text
+ */
- Body.Promise = fetch.Promise;
+ if (value !== '*') {
+ if (value === '$' || value === '^') {
+ value = `\\${value}`;
+ }
- // wrap http.request into fetch
- return new fetch.Promise(function (resolve, reject) {
- // build request object
- const request = new Request(url, opts);
- const options = getNodeRequestOptions(request);
+ const match = REGEX_NON_SPECIAL_CHARS.exec(remaining());
+ if (match) {
+ value += match[0];
+ state.index += match[0].length;
+ }
- const send = (options.protocol === 'https:' ? https : http).request;
- const signal = request.signal;
+ push({ type: 'text', value });
+ continue;
+ }
- let response = null;
+ /**
+ * Stars
+ */
- const abort = function abort() {
- let error = new AbortError('The user aborted a request.');
- reject(error);
- if (request.body && request.body instanceof Stream.Readable) {
- destroyStream(request.body, error);
- }
- if (!response || !response.body) return;
- response.body.emit('error', error);
- };
+ if (prev && (prev.type === 'globstar' || prev.star === true)) {
+ prev.type = 'star';
+ prev.star = true;
+ prev.value += value;
+ prev.output = star;
+ state.backtrack = true;
+ state.globstar = true;
+ consume(value);
+ continue;
+ }
- if (signal && signal.aborted) {
- abort();
- return;
- }
+ let rest = remaining();
+ if (opts.noextglob !== true && /^\([^?]/.test(rest)) {
+ extglobOpen('star', value);
+ continue;
+ }
- const abortAndFinalize = function abortAndFinalize() {
- abort();
- finalize();
- };
+ if (prev.type === 'star') {
+ if (opts.noglobstar === true) {
+ consume(value);
+ continue;
+ }
- // send request
- const req = send(options);
- let reqTimeout;
+ const prior = prev.prev;
+ const before = prior.prev;
+ const isStart = prior.type === 'slash' || prior.type === 'bos';
+ const afterStar = before && (before.type === 'star' || before.type === 'globstar');
- if (signal) {
- signal.addEventListener('abort', abortAndFinalize);
- }
+ if (opts.bash === true && (!isStart || (rest[0] && rest[0] !== '/'))) {
+ push({ type: 'star', value, output: '' });
+ continue;
+ }
- function finalize() {
- req.abort();
- if (signal) signal.removeEventListener('abort', abortAndFinalize);
- clearTimeout(reqTimeout);
- }
+ const isBrace = state.braces > 0 && (prior.type === 'comma' || prior.type === 'brace');
+ const isExtglob = extglobs.length && (prior.type === 'pipe' || prior.type === 'paren');
+ if (!isStart && prior.type !== 'paren' && !isBrace && !isExtglob) {
+ push({ type: 'star', value, output: '' });
+ continue;
+ }
- if (request.timeout) {
- req.once('socket', function (socket) {
- reqTimeout = setTimeout(function () {
- reject(new FetchError(`network timeout at: ${request.url}`, 'request-timeout'));
- finalize();
- }, request.timeout);
- });
- }
+ // strip consecutive `/**/`
+ while (rest.slice(0, 3) === '/**') {
+ const after = input[state.index + 4];
+ if (after && after !== '/') {
+ break;
+ }
+ rest = rest.slice(3);
+ consume('/**', 3);
+ }
- req.on('error', function (err) {
- reject(new FetchError(`request to ${request.url} failed, reason: ${err.message}`, 'system', err));
+ if (prior.type === 'bos' && eos()) {
+ prev.type = 'globstar';
+ prev.value += value;
+ prev.output = globstar(opts);
+ state.output = prev.output;
+ state.globstar = true;
+ consume(value);
+ continue;
+ }
- if (response && response.body) {
- destroyStream(response.body, err);
- }
+ if (prior.type === 'slash' && prior.prev.type !== 'bos' && !afterStar && eos()) {
+ state.output = state.output.slice(0, -(prior.output + prev.output).length);
+ prior.output = `(?:${prior.output}`;
- finalize();
- });
+ prev.type = 'globstar';
+ prev.output = globstar(opts) + (opts.strictSlashes ? ')' : '|$)');
+ prev.value += value;
+ state.globstar = true;
+ state.output += prior.output + prev.output;
+ consume(value);
+ continue;
+ }
- fixResponseChunkedTransferBadEnding(req, function (err) {
- if (signal && signal.aborted) {
- return;
- }
+ if (prior.type === 'slash' && prior.prev.type !== 'bos' && rest[0] === '/') {
+ const end = rest[1] !== void 0 ? '|$' : '';
- if (response && response.body) {
- destroyStream(response.body, err);
- }
- });
+ state.output = state.output.slice(0, -(prior.output + prev.output).length);
+ prior.output = `(?:${prior.output}`;
- /* c8 ignore next 18 */
- if (parseInt(process.version.substring(1)) < 14) {
- // Before Node.js 14, pipeline() does not fully support async iterators and does not always
- // properly handle when the socket close/end events are out of order.
- req.on('socket', function (s) {
- s.addListener('close', function (hadError) {
- // if a data listener is still present we didn't end cleanly
- const hasDataListener = s.listenerCount('data') > 0;
-
- // if end happened before close but the socket didn't emit an error, do it now
- if (response && hasDataListener && !hadError && !(signal && signal.aborted)) {
- const err = new Error('Premature close');
- err.code = 'ERR_STREAM_PREMATURE_CLOSE';
- response.body.emit('error', err);
- }
- });
- });
- }
+ prev.type = 'globstar';
+ prev.output = `${globstar(opts)}${SLASH_LITERAL}|${SLASH_LITERAL}${end})`;
+ prev.value += value;
- req.on('response', function (res) {
- clearTimeout(reqTimeout);
+ state.output += prior.output + prev.output;
+ state.globstar = true;
- const headers = createHeadersLenient(res.headers);
+ consume(value + advance());
- // HTTP fetch step 5
- if (fetch.isRedirect(res.statusCode)) {
- // HTTP fetch step 5.2
- const location = headers.get('Location');
+ push({ type: 'slash', value: '/', output: '' });
+ continue;
+ }
- // HTTP fetch step 5.3
- let locationURL = null;
- try {
- locationURL = location === null ? null : new URL$1(location, request.url).toString();
- } catch (err) {
- // error here can only be invalid URL in Location: header
- // do not throw when options.redirect == manual
- // let the user extract the errorneous redirect URL
- if (request.redirect !== 'manual') {
- reject(new FetchError(`uri requested responds with an invalid redirect URL: ${location}`, 'invalid-redirect'));
- finalize();
- return;
- }
- }
+ if (prior.type === 'bos' && rest[0] === '/') {
+ prev.type = 'globstar';
+ prev.value += value;
+ prev.output = `(?:^|${SLASH_LITERAL}|${globstar(opts)}${SLASH_LITERAL})`;
+ state.output = prev.output;
+ state.globstar = true;
+ consume(value + advance());
+ push({ type: 'slash', value: '/', output: '' });
+ continue;
+ }
- // HTTP fetch step 5.5
- switch (request.redirect) {
- case 'error':
- reject(new FetchError(`uri requested responds with a redirect, redirect mode is set to error: ${request.url}`, 'no-redirect'));
- finalize();
- return;
- case 'manual':
- // node-fetch-specific step: make manual redirect a bit easier to use by setting the Location header value to the resolved URL.
- if (locationURL !== null) {
- // handle corrupted header
- try {
- headers.set('Location', locationURL);
- } catch (err) {
- // istanbul ignore next: nodejs server prevent invalid response headers, we can't test this through normal request
- reject(err);
- }
- }
- break;
- case 'follow':
- // HTTP-redirect fetch step 2
- if (locationURL === null) {
- break;
- }
+ // remove single star from output
+ state.output = state.output.slice(0, -prev.output.length);
- // HTTP-redirect fetch step 5
- if (request.counter >= request.follow) {
- reject(new FetchError(`maximum redirect reached at: ${request.url}`, 'max-redirect'));
- finalize();
- return;
- }
+ // reset previous token to globstar
+ prev.type = 'globstar';
+ prev.output = globstar(opts);
+ prev.value += value;
- // HTTP-redirect fetch step 6 (counter increment)
- // Create a new Request object.
- const requestOpts = {
- headers: new Headers(request.headers),
- follow: request.follow,
- counter: request.counter + 1,
- agent: request.agent,
- compress: request.compress,
- method: request.method,
- body: request.body,
- signal: request.signal,
- timeout: request.timeout,
- size: request.size
- };
-
- if (!isDomainOrSubdomain(request.url, locationURL) || !isSameProtocol(request.url, locationURL)) {
- for (const name of ['authorization', 'www-authenticate', 'cookie', 'cookie2']) {
- requestOpts.headers.delete(name);
- }
- }
+ // reset output with globstar
+ state.output += prev.output;
+ state.globstar = true;
+ consume(value);
+ continue;
+ }
- // HTTP-redirect fetch step 9
- if (res.statusCode !== 303 && request.body && getTotalBytes(request) === null) {
- reject(new FetchError('Cannot follow redirect with body being a readable stream', 'unsupported-redirect'));
- finalize();
- return;
- }
+ const token = { type: 'star', value, output: star };
- // HTTP-redirect fetch step 11
- if (res.statusCode === 303 || (res.statusCode === 301 || res.statusCode === 302) && request.method === 'POST') {
- requestOpts.method = 'GET';
- requestOpts.body = undefined;
- requestOpts.headers.delete('content-length');
- }
+ if (opts.bash === true) {
+ token.output = '.*?';
+ if (prev.type === 'bos' || prev.type === 'slash') {
+ token.output = nodot + token.output;
+ }
+ push(token);
+ continue;
+ }
- // HTTP-redirect fetch step 15
- resolve(fetch(new Request(locationURL, requestOpts)));
- finalize();
- return;
- }
- }
+ if (prev && (prev.type === 'bracket' || prev.type === 'paren') && opts.regex === true) {
+ token.output = value;
+ push(token);
+ continue;
+ }
- // prepare response
- res.once('end', function () {
- if (signal) signal.removeEventListener('abort', abortAndFinalize);
- });
- let body = res.pipe(new PassThrough$1());
-
- const response_options = {
- url: request.url,
- status: res.statusCode,
- statusText: res.statusMessage,
- headers: headers,
- size: request.size,
- timeout: request.timeout,
- counter: request.counter
- };
+ if (state.index === state.start || prev.type === 'slash' || prev.type === 'dot') {
+ if (prev.type === 'dot') {
+ state.output += NO_DOT_SLASH;
+ prev.output += NO_DOT_SLASH;
- // HTTP-network fetch step 12.1.1.3
- const codings = headers.get('Content-Encoding');
+ } else if (opts.dot === true) {
+ state.output += NO_DOTS_SLASH;
+ prev.output += NO_DOTS_SLASH;
- // HTTP-network fetch step 12.1.1.4: handle content codings
+ } else {
+ state.output += nodot;
+ prev.output += nodot;
+ }
- // in following scenarios we ignore compression support
- // 1. compression support is disabled
- // 2. HEAD request
- // 3. no Content-Encoding header
- // 4. no content response (204)
- // 5. content not modified response (304)
- if (!request.compress || request.method === 'HEAD' || codings === null || res.statusCode === 204 || res.statusCode === 304) {
- response = new Response(body, response_options);
- resolve(response);
- return;
- }
+ if (peek() !== '*') {
+ state.output += ONE_CHAR;
+ prev.output += ONE_CHAR;
+ }
+ }
- // For Node v6+
- // Be less strict when decoding compressed responses, since sometimes
- // servers send slightly invalid responses that are still accepted
- // by common browsers.
- // Always using Z_SYNC_FLUSH is what cURL does.
- const zlibOptions = {
- flush: zlib.Z_SYNC_FLUSH,
- finishFlush: zlib.Z_SYNC_FLUSH
- };
+ push(token);
+ }
- // for gzip
- if (codings == 'gzip' || codings == 'x-gzip') {
- body = body.pipe(zlib.createGunzip(zlibOptions));
- response = new Response(body, response_options);
- resolve(response);
- return;
- }
+ while (state.brackets > 0) {
+ if (opts.strictBrackets === true) throw new SyntaxError(syntaxError('closing', ']'));
+ state.output = utils.escapeLast(state.output, '[');
+ decrement('brackets');
+ }
- // for deflate
- if (codings == 'deflate' || codings == 'x-deflate') {
- // handle the infamous raw deflate response from old servers
- // a hack for old IIS and Apache servers
- const raw = res.pipe(new PassThrough$1());
- raw.once('data', function (chunk) {
- // see http://stackoverflow.com/questions/37519828
- if ((chunk[0] & 0x0F) === 0x08) {
- body = body.pipe(zlib.createInflate());
- } else {
- body = body.pipe(zlib.createInflateRaw());
- }
- response = new Response(body, response_options);
- resolve(response);
- });
- raw.on('end', function () {
- // some old IIS servers return zero-length OK deflate responses, so 'data' is never emitted.
- if (!response) {
- response = new Response(body, response_options);
- resolve(response);
- }
- });
- return;
- }
+ while (state.parens > 0) {
+ if (opts.strictBrackets === true) throw new SyntaxError(syntaxError('closing', ')'));
+ state.output = utils.escapeLast(state.output, '(');
+ decrement('parens');
+ }
- // for br
- if (codings == 'br' && typeof zlib.createBrotliDecompress === 'function') {
- body = body.pipe(zlib.createBrotliDecompress());
- response = new Response(body, response_options);
- resolve(response);
- return;
- }
+ while (state.braces > 0) {
+ if (opts.strictBrackets === true) throw new SyntaxError(syntaxError('closing', '}'));
+ state.output = utils.escapeLast(state.output, '{');
+ decrement('braces');
+ }
- // otherwise, use response as-is
- response = new Response(body, response_options);
- resolve(response);
- });
+ if (opts.strictSlashes !== true && (prev.type === 'star' || prev.type === 'bracket')) {
+ push({ type: 'maybe_slash', value: '', output: `${SLASH_LITERAL}?` });
+ }
- writeToStream(req, request);
- });
-}
-function fixResponseChunkedTransferBadEnding(request, errorCallback) {
- let socket;
+ // rebuild the output if we had to backtrack at any point
+ if (state.backtrack === true) {
+ state.output = '';
- request.on('socket', function (s) {
- socket = s;
- });
+ for (const token of state.tokens) {
+ state.output += token.output != null ? token.output : token.value;
- request.on('response', function (response) {
- const headers = response.headers;
-
- if (headers['transfer-encoding'] === 'chunked' && !headers['content-length']) {
- response.once('close', function (hadError) {
- // tests for socket presence, as in some situations the
- // the 'socket' event is not triggered for the request
- // (happens in deno), avoids `TypeError`
- // if a data listener is still present we didn't end cleanly
- const hasDataListener = socket && socket.listenerCount('data') > 0;
-
- if (hasDataListener && !hadError) {
- const err = new Error('Premature close');
- err.code = 'ERR_STREAM_PREMATURE_CLOSE';
- errorCallback(err);
- }
- });
- }
- });
-}
+ if (token.suffix) {
+ state.output += token.suffix;
+ }
+ }
+ }
-function destroyStream(stream, err) {
- if (stream.destroy) {
- stream.destroy(err);
- } else {
- // node < 8
- stream.emit('error', err);
- stream.end();
- }
-}
+ return state;
+};
/**
- * Redirect code matching
- *
- * @param Number code Status code
- * @return Boolean
+ * Fast paths for creating regular expressions for common glob patterns.
+ * This can significantly speed up processing and has very little downside
+ * impact when none of the fast paths match.
*/
-fetch.isRedirect = function (code) {
- return code === 301 || code === 302 || code === 303 || code === 307 || code === 308;
-};
-
-// expose Promise
-fetch.Promise = global.Promise;
-module.exports = exports = fetch;
-Object.defineProperty(exports, "__esModule", ({ value: true }));
-exports["default"] = exports;
-exports.Headers = Headers;
-exports.Request = Request;
-exports.Response = Response;
-exports.FetchError = FetchError;
-exports.AbortError = AbortError;
+parse.fastpaths = (input, options) => {
+ const opts = { ...options };
+ const max = typeof opts.maxLength === 'number' ? Math.min(MAX_LENGTH, opts.maxLength) : MAX_LENGTH;
+ const len = input.length;
+ if (len > max) {
+ throw new SyntaxError(`Input length: ${len}, exceeds maximum allowed length: ${max}`);
+ }
+ input = REPLACEMENTS[input] || input;
+ const win32 = utils.isWindows(options);
-/***/ }),
+ // create constants based on platform, for windows or posix
+ const {
+ DOT_LITERAL,
+ SLASH_LITERAL,
+ ONE_CHAR,
+ DOTS_SLASH,
+ NO_DOT,
+ NO_DOTS,
+ NO_DOTS_SLASH,
+ STAR,
+ START_ANCHOR
+ } = constants.globChars(win32);
-/***/ 7952:
-/***/ ((module) => {
+ const nodot = opts.dot ? NO_DOTS : NO_DOT;
+ const slashDot = opts.dot ? NO_DOTS_SLASH : NO_DOT;
+ const capture = opts.capture ? '' : '?:';
+ const state = { negated: false, prefix: '' };
+ let star = opts.bash === true ? '.*?' : STAR;
-"use strict";
+ if (opts.capture) {
+ star = `(${star})`;
+ }
+ const globstar = opts => {
+ if (opts.noglobstar === true) return star;
+ return `(${capture}(?:(?!${START_ANCHOR}${opts.dot ? DOTS_SLASH : DOT_LITERAL}).)*?)`;
+ };
-// https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URIs
-const DATA_URL_DEFAULT_MIME_TYPE = 'text/plain';
-const DATA_URL_DEFAULT_CHARSET = 'us-ascii';
+ const create = str => {
+ switch (str) {
+ case '*':
+ return `${nodot}${ONE_CHAR}${star}`;
-const testParameter = (name, filters) => {
- return filters.some(filter => filter instanceof RegExp ? filter.test(name) : filter === name);
-};
+ case '.*':
+ return `${DOT_LITERAL}${ONE_CHAR}${star}`;
-const normalizeDataURL = (urlString, {stripHash}) => {
- const match = /^data:(?[^,]*?),(?[^#]*?)(?:#(?.*))?$/.exec(urlString);
+ case '*.*':
+ return `${nodot}${star}${DOT_LITERAL}${ONE_CHAR}${star}`;
- if (!match) {
- throw new Error(`Invalid URL: ${urlString}`);
- }
+ case '*/*':
+ return `${nodot}${star}${SLASH_LITERAL}${ONE_CHAR}${slashDot}${star}`;
- let {type, data, hash} = match.groups;
- const mediaType = type.split(';');
- hash = stripHash ? '' : hash;
+ case '**':
+ return nodot + globstar(opts);
- let isBase64 = false;
- if (mediaType[mediaType.length - 1] === 'base64') {
- mediaType.pop();
- isBase64 = true;
- }
+ case '**/*':
+ return `(?:${nodot}${globstar(opts)}${SLASH_LITERAL})?${slashDot}${ONE_CHAR}${star}`;
- // Lowercase MIME type
- const mimeType = (mediaType.shift() || '').toLowerCase();
- const attributes = mediaType
- .map(attribute => {
- let [key, value = ''] = attribute.split('=').map(string => string.trim());
+ case '**/*.*':
+ return `(?:${nodot}${globstar(opts)}${SLASH_LITERAL})?${slashDot}${star}${DOT_LITERAL}${ONE_CHAR}${star}`;
- // Lowercase `charset`
- if (key === 'charset') {
- value = value.toLowerCase();
+ case '**/.*':
+ return `(?:${nodot}${globstar(opts)}${SLASH_LITERAL})?${DOT_LITERAL}${ONE_CHAR}${star}`;
- if (value === DATA_URL_DEFAULT_CHARSET) {
- return '';
- }
- }
+ default: {
+ const match = /^(.*?)\.(\w+)$/.exec(str);
+ if (!match) return;
- return `${key}${value ? `=${value}` : ''}`;
- })
- .filter(Boolean);
+ const source = create(match[1]);
+ if (!source) return;
- const normalizedMediaType = [
- ...attributes
- ];
+ return source + DOT_LITERAL + match[2];
+ }
+ }
+ };
- if (isBase64) {
- normalizedMediaType.push('base64');
- }
+ const output = utils.removePrefix(input, state);
+ let source = create(output);
- if (normalizedMediaType.length !== 0 || (mimeType && mimeType !== DATA_URL_DEFAULT_MIME_TYPE)) {
- normalizedMediaType.unshift(mimeType);
- }
+ if (source && opts.strictSlashes !== true) {
+ source += `${SLASH_LITERAL}?`;
+ }
- return `data:${normalizedMediaType.join(';')},${isBase64 ? data.trim() : data}${hash ? `#${hash}` : ''}`;
+ return source;
};
-const normalizeUrl = (urlString, options) => {
- options = {
- defaultProtocol: 'http:',
- normalizeProtocol: true,
- forceHttp: false,
- forceHttps: false,
- stripAuthentication: true,
- stripHash: false,
- stripTextFragment: true,
- stripWWW: true,
- removeQueryParameters: [/^utm_\w+/i],
- removeTrailingSlash: true,
- removeSingleSlash: true,
- removeDirectoryIndex: false,
- sortQueryParameters: true,
- ...options
- };
+module.exports = parse;
- urlString = urlString.trim();
- // Data URL
- if (/^data:/i.test(urlString)) {
- return normalizeDataURL(urlString, options);
- }
+/***/ }),
- if (/^view-source:/i.test(urlString)) {
- throw new Error('`view-source:` is not supported as it is a non-standard protocol');
- }
+/***/ 555:
+/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
- const hasRelativeProtocol = urlString.startsWith('//');
- const isRelativeUrl = !hasRelativeProtocol && /^\.*\//.test(urlString);
+"use strict";
- // Prepend protocol
- if (!isRelativeUrl) {
- urlString = urlString.replace(/^(?!(?:\w+:)?\/\/)|^\/\//, options.defaultProtocol);
- }
- const urlObj = new URL(urlString);
+const path = __nccwpck_require__(1017);
+const scan = __nccwpck_require__(7751);
+const parse = __nccwpck_require__(5961);
+const utils = __nccwpck_require__(7426);
+const constants = __nccwpck_require__(6476);
+const isObject = val => val && typeof val === 'object' && !Array.isArray(val);
- if (options.forceHttp && options.forceHttps) {
- throw new Error('The `forceHttp` and `forceHttps` options cannot be used together');
- }
+/**
+ * Creates a matcher function from one or more glob patterns. The
+ * returned function takes a string to match as its first argument,
+ * and returns true if the string is a match. The returned matcher
+ * function also takes a boolean as the second argument that, when true,
+ * returns an object with additional information.
+ *
+ * ```js
+ * const picomatch = require('picomatch');
+ * // picomatch(glob[, options]);
+ *
+ * const isMatch = picomatch('*.!(*a)');
+ * console.log(isMatch('a.a')); //=> false
+ * console.log(isMatch('a.b')); //=> true
+ * ```
+ * @name picomatch
+ * @param {String|Array} `globs` One or more glob patterns.
+ * @param {Object=} `options`
+ * @return {Function=} Returns a matcher function.
+ * @api public
+ */
- if (options.forceHttp && urlObj.protocol === 'https:') {
- urlObj.protocol = 'http:';
- }
+const picomatch = (glob, options, returnState = false) => {
+ if (Array.isArray(glob)) {
+ const fns = glob.map(input => picomatch(input, options, returnState));
+ const arrayMatcher = str => {
+ for (const isMatch of fns) {
+ const state = isMatch(str);
+ if (state) return state;
+ }
+ return false;
+ };
+ return arrayMatcher;
+ }
- if (options.forceHttps && urlObj.protocol === 'http:') {
- urlObj.protocol = 'https:';
- }
+ const isState = isObject(glob) && glob.tokens && glob.input;
- // Remove auth
- if (options.stripAuthentication) {
- urlObj.username = '';
- urlObj.password = '';
- }
+ if (glob === '' || (typeof glob !== 'string' && !isState)) {
+ throw new TypeError('Expected pattern to be a non-empty string');
+ }
- // Remove hash
- if (options.stripHash) {
- urlObj.hash = '';
- } else if (options.stripTextFragment) {
- urlObj.hash = urlObj.hash.replace(/#?:~:text.*?$/i, '');
- }
+ const opts = options || {};
+ const posix = utils.isWindows(options);
+ const regex = isState
+ ? picomatch.compileRe(glob, options)
+ : picomatch.makeRe(glob, options, false, true);
- // Remove duplicate slashes if not preceded by a protocol
- if (urlObj.pathname) {
- urlObj.pathname = urlObj.pathname.replace(/(? false;
+ if (opts.ignore) {
+ const ignoreOpts = { ...options, ignore: null, onMatch: null, onResult: null };
+ isIgnored = picomatch(opts.ignore, ignoreOpts, returnState);
+ }
- // Remove directory index
- if (options.removeDirectoryIndex === true) {
- options.removeDirectoryIndex = [/^index\.[a-z]+$/];
- }
+ const matcher = (input, returnObject = false) => {
+ const { isMatch, match, output } = picomatch.test(input, regex, options, { glob, posix });
+ const result = { glob, state, regex, posix, input, output, match, isMatch };
- if (Array.isArray(options.removeDirectoryIndex) && options.removeDirectoryIndex.length > 0) {
- let pathComponents = urlObj.pathname.split('/');
- const lastComponent = pathComponents[pathComponents.length - 1];
+ if (typeof opts.onResult === 'function') {
+ opts.onResult(result);
+ }
- if (testParameter(lastComponent, options.removeDirectoryIndex)) {
- pathComponents = pathComponents.slice(0, pathComponents.length - 1);
- urlObj.pathname = pathComponents.slice(1).join('/') + '/';
- }
- }
+ if (isMatch === false) {
+ result.isMatch = false;
+ return returnObject ? result : false;
+ }
- if (urlObj.hostname) {
- // Remove trailing dot
- urlObj.hostname = urlObj.hostname.replace(/\.$/, '');
+ if (isIgnored(input)) {
+ if (typeof opts.onIgnore === 'function') {
+ opts.onIgnore(result);
+ }
+ result.isMatch = false;
+ return returnObject ? result : false;
+ }
- // Remove `www.`
- if (options.stripWWW && /^www\.(?!www\.)(?:[a-z\-\d]{1,63})\.(?:[a-z.\-\d]{2,63})$/.test(urlObj.hostname)) {
- // Each label should be max 63 at length (min: 1).
- // Source: https://en.wikipedia.org/wiki/Hostname#Restrictions_on_valid_host_names
- // Each TLD should be up to 63 characters long (min: 2).
- // It is technically possible to have a single character TLD, but none currently exist.
- urlObj.hostname = urlObj.hostname.replace(/^www\./, '');
- }
- }
+ if (typeof opts.onMatch === 'function') {
+ opts.onMatch(result);
+ }
+ return returnObject ? result : true;
+ };
- // Remove query unwanted parameters
- if (Array.isArray(options.removeQueryParameters)) {
- for (const key of [...urlObj.searchParams.keys()]) {
- if (testParameter(key, options.removeQueryParameters)) {
- urlObj.searchParams.delete(key);
- }
- }
- }
+ if (returnState) {
+ matcher.state = state;
+ }
- if (options.removeQueryParameters === true) {
- urlObj.search = '';
- }
+ return matcher;
+};
- // Sort query parameters
- if (options.sortQueryParameters) {
- urlObj.searchParams.sort();
- }
+/**
+ * Test `input` with the given `regex`. This is used by the main
+ * `picomatch()` function to test the input string.
+ *
+ * ```js
+ * const picomatch = require('picomatch');
+ * // picomatch.test(input, regex[, options]);
+ *
+ * console.log(picomatch.test('foo/bar', /^(?:([^/]*?)\/([^/]*?))$/));
+ * // { isMatch: true, match: [ 'foo/', 'foo', 'bar' ], output: 'foo/bar' }
+ * ```
+ * @param {String} `input` String to test.
+ * @param {RegExp} `regex`
+ * @return {Object} Returns an object with matching info.
+ * @api public
+ */
- if (options.removeTrailingSlash) {
- urlObj.pathname = urlObj.pathname.replace(/\/$/, '');
- }
+picomatch.test = (input, regex, options, { glob, posix } = {}) => {
+ if (typeof input !== 'string') {
+ throw new TypeError('Expected input to be a string');
+ }
- const oldUrlString = urlString;
+ if (input === '') {
+ return { isMatch: false, output: '' };
+ }
- // Take advantage of many of the Node `url` normalizations
- urlString = urlObj.toString();
+ const opts = options || {};
+ const format = opts.format || (posix ? utils.toPosixSlashes : null);
+ let match = input === glob;
+ let output = (match && format) ? format(input) : input;
- if (!options.removeSingleSlash && urlObj.pathname === '/' && !oldUrlString.endsWith('/') && urlObj.hash === '') {
- urlString = urlString.replace(/\/$/, '');
- }
+ if (match === false) {
+ output = format ? format(input) : input;
+ match = output === glob;
+ }
- // Remove ending `/` unless removeSingleSlash is false
- if ((options.removeTrailingSlash || urlObj.pathname === '/') && urlObj.hash === '' && options.removeSingleSlash) {
- urlString = urlString.replace(/\/$/, '');
- }
+ if (match === false || opts.capture === true) {
+ if (opts.matchBase === true || opts.basename === true) {
+ match = picomatch.matchBase(input, regex, options, posix);
+ } else {
+ match = regex.exec(output);
+ }
+ }
- // Restore relative protocol, if applicable
- if (hasRelativeProtocol && !options.normalizeProtocol) {
- urlString = urlString.replace(/^http:\/\//, '//');
- }
+ return { isMatch: Boolean(match), match, output };
+};
- // Remove http/https
- if (options.stripProtocol) {
- urlString = urlString.replace(/^(?:https?:)?\/\//, '');
- }
+/**
+ * Match the basename of a filepath.
+ *
+ * ```js
+ * const picomatch = require('picomatch');
+ * // picomatch.matchBase(input, glob[, options]);
+ * console.log(picomatch.matchBase('foo/bar.js', '*.js'); // true
+ * ```
+ * @param {String} `input` String to test.
+ * @param {RegExp|String} `glob` Glob pattern or regex created by [.makeRe](#makeRe).
+ * @return {Boolean}
+ * @api public
+ */
- return urlString;
+picomatch.matchBase = (input, glob, options, posix = utils.isWindows(options)) => {
+ const regex = glob instanceof RegExp ? glob : picomatch.makeRe(glob, options);
+ return regex.test(path.basename(input));
};
-module.exports = normalizeUrl;
-
+/**
+ * Returns true if **any** of the given glob `patterns` match the specified `string`.
+ *
+ * ```js
+ * const picomatch = require('picomatch');
+ * // picomatch.isMatch(string, patterns[, options]);
+ *
+ * console.log(picomatch.isMatch('a.a', ['b.*', '*.a'])); //=> true
+ * console.log(picomatch.isMatch('a.a', 'b.*')); //=> false
+ * ```
+ * @param {String|Array} str The string to test.
+ * @param {String|Array} patterns One or more glob patterns to use for matching.
+ * @param {Object} [options] See available [options](#options).
+ * @return {Boolean} Returns true if any patterns match `str`
+ * @api public
+ */
-/***/ }),
+picomatch.isMatch = (str, patterns, options) => picomatch(patterns, options)(str);
-/***/ 1223:
-/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
+/**
+ * Parse a glob pattern to create the source string for a regular
+ * expression.
+ *
+ * ```js
+ * const picomatch = require('picomatch');
+ * const result = picomatch.parse(pattern[, options]);
+ * ```
+ * @param {String} `pattern`
+ * @param {Object} `options`
+ * @return {Object} Returns an object with useful properties and output to be used as a regex source string.
+ * @api public
+ */
-var wrappy = __nccwpck_require__(2940)
-module.exports = wrappy(once)
-module.exports.strict = wrappy(onceStrict)
+picomatch.parse = (pattern, options) => {
+ if (Array.isArray(pattern)) return pattern.map(p => picomatch.parse(p, options));
+ return parse(pattern, { ...options, fastpaths: false });
+};
-once.proto = once(function () {
- Object.defineProperty(Function.prototype, 'once', {
- value: function () {
- return once(this)
- },
- configurable: true
- })
+/**
+ * Scan a glob pattern to separate the pattern into segments.
+ *
+ * ```js
+ * const picomatch = require('picomatch');
+ * // picomatch.scan(input[, options]);
+ *
+ * const result = picomatch.scan('!./foo/*.js');
+ * console.log(result);
+ * { prefix: '!./',
+ * input: '!./foo/*.js',
+ * start: 3,
+ * base: 'foo',
+ * glob: '*.js',
+ * isBrace: false,
+ * isBracket: false,
+ * isGlob: true,
+ * isExtglob: false,
+ * isGlobstar: false,
+ * negated: true }
+ * ```
+ * @param {String} `input` Glob pattern to scan.
+ * @param {Object} `options`
+ * @return {Object} Returns an object with
+ * @api public
+ */
- Object.defineProperty(Function.prototype, 'onceStrict', {
- value: function () {
- return onceStrict(this)
- },
- configurable: true
- })
-})
+picomatch.scan = (input, options) => scan(input, options);
-function once (fn) {
- var f = function () {
- if (f.called) return f.value
- f.called = true
- return f.value = fn.apply(this, arguments)
- }
- f.called = false
- return f
-}
+/**
+ * Compile a regular expression from the `state` object returned by the
+ * [parse()](#parse) method.
+ *
+ * @param {Object} `state`
+ * @param {Object} `options`
+ * @param {Boolean} `returnOutput` Intended for implementors, this argument allows you to return the raw output from the parser.
+ * @param {Boolean} `returnState` Adds the state to a `state` property on the returned regex. Useful for implementors and debugging.
+ * @return {RegExp}
+ * @api public
+ */
-function onceStrict (fn) {
- var f = function () {
- if (f.called)
- throw new Error(f.onceError)
- f.called = true
- return f.value = fn.apply(this, arguments)
+picomatch.compileRe = (state, options, returnOutput = false, returnState = false) => {
+ if (returnOutput === true) {
+ return state.output;
}
- var name = fn.name || 'Function wrapped with `once`'
- f.onceError = name + " shouldn't be called more than once"
- f.called = false
- return f
-}
-
-/***/ }),
+ const opts = options || {};
+ const prepend = opts.contains ? '' : '^';
+ const append = opts.contains ? '' : '$';
-/***/ 9072:
-/***/ ((module) => {
+ let source = `${prepend}(?:${state.output})${append}`;
+ if (state && state.negated === true) {
+ source = `^(?!${source}).*$`;
+ }
-"use strict";
+ const regex = picomatch.toRegex(source, options);
+ if (returnState === true) {
+ regex.state = state;
+ }
+ return regex;
+};
-class CancelError extends Error {
- constructor(reason) {
- super(reason || 'Promise was canceled');
- this.name = 'CancelError';
- }
-
- get isCanceled() {
- return true;
- }
-}
-
-class PCancelable {
- static fn(userFn) {
- return (...arguments_) => {
- return new PCancelable((resolve, reject, onCancel) => {
- arguments_.push(onCancel);
- // eslint-disable-next-line promise/prefer-await-to-then
- userFn(...arguments_).then(resolve, reject);
- });
- };
- }
-
- constructor(executor) {
- this._cancelHandlers = [];
- this._isPending = true;
- this._isCanceled = false;
- this._rejectOnCancel = true;
-
- this._promise = new Promise((resolve, reject) => {
- this._reject = reject;
-
- const onResolve = value => {
- if (!this._isCanceled || !onCancel.shouldReject) {
- this._isPending = false;
- resolve(value);
- }
- };
-
- const onReject = error => {
- this._isPending = false;
- reject(error);
- };
-
- const onCancel = handler => {
- if (!this._isPending) {
- throw new Error('The `onCancel` handler was attached after the promise settled.');
- }
-
- this._cancelHandlers.push(handler);
- };
-
- Object.defineProperties(onCancel, {
- shouldReject: {
- get: () => this._rejectOnCancel,
- set: boolean => {
- this._rejectOnCancel = boolean;
- }
- }
- });
+/**
+ * Create a regular expression from a parsed glob pattern.
+ *
+ * ```js
+ * const picomatch = require('picomatch');
+ * const state = picomatch.parse('*.js');
+ * // picomatch.compileRe(state[, options]);
+ *
+ * console.log(picomatch.compileRe(state));
+ * //=> /^(?:(?!\.)(?=.)[^/]*?\.js)$/
+ * ```
+ * @param {String} `state` The object returned from the `.parse` method.
+ * @param {Object} `options`
+ * @param {Boolean} `returnOutput` Implementors may use this argument to return the compiled output, instead of a regular expression. This is not exposed on the options to prevent end-users from mutating the result.
+ * @param {Boolean} `returnState` Implementors may use this argument to return the state from the parsed glob with the returned regular expression.
+ * @return {RegExp} Returns a regex created from the given pattern.
+ * @api public
+ */
- return executor(onResolve, onReject, onCancel);
- });
- }
+picomatch.makeRe = (input, options = {}, returnOutput = false, returnState = false) => {
+ if (!input || typeof input !== 'string') {
+ throw new TypeError('Expected a non-empty string');
+ }
- then(onFulfilled, onRejected) {
- // eslint-disable-next-line promise/prefer-await-to-then
- return this._promise.then(onFulfilled, onRejected);
- }
+ let parsed = { negated: false, fastpaths: true };
- catch(onRejected) {
- return this._promise.catch(onRejected);
- }
+ if (options.fastpaths !== false && (input[0] === '.' || input[0] === '*')) {
+ parsed.output = parse.fastpaths(input, options);
+ }
- finally(onFinally) {
- return this._promise.finally(onFinally);
- }
+ if (!parsed.output) {
+ parsed = parse(input, options);
+ }
- cancel(reason) {
- if (!this._isPending || this._isCanceled) {
- return;
- }
+ return picomatch.compileRe(parsed, options, returnOutput, returnState);
+};
- this._isCanceled = true;
+/**
+ * Create a regular expression from the given regex source string.
+ *
+ * ```js
+ * const picomatch = require('picomatch');
+ * // picomatch.toRegex(source[, options]);
+ *
+ * const { output } = picomatch.parse('*.js');
+ * console.log(picomatch.toRegex(output));
+ * //=> /^(?:(?!\.)(?=.)[^/]*?\.js)$/
+ * ```
+ * @param {String} `source` Regular expression source string.
+ * @param {Object} `options`
+ * @return {RegExp}
+ * @api public
+ */
- if (this._cancelHandlers.length > 0) {
- try {
- for (const handler of this._cancelHandlers) {
- handler();
- }
- } catch (error) {
- this._reject(error);
- return;
- }
- }
+picomatch.toRegex = (source, options) => {
+ try {
+ const opts = options || {};
+ return new RegExp(source, opts.flags || (opts.nocase ? 'i' : ''));
+ } catch (err) {
+ if (options && options.debug === true) throw err;
+ return /$^/;
+ }
+};
- if (this._rejectOnCancel) {
- this._reject(new CancelError(reason));
- }
- }
+/**
+ * Picomatch constants.
+ * @return {Object}
+ */
- get isCanceled() {
- return this._isCanceled;
- }
-}
+picomatch.constants = constants;
-Object.setPrototypeOf(PCancelable.prototype, Promise.prototype);
+/**
+ * Expose "picomatch"
+ */
-module.exports = PCancelable;
-module.exports.CancelError = CancelError;
+module.exports = picomatch;
/***/ }),
-/***/ 8569:
+/***/ 7751:
/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
"use strict";
-module.exports = __nccwpck_require__(3322);
+const utils = __nccwpck_require__(7426);
+const {
+ CHAR_ASTERISK, /* * */
+ CHAR_AT, /* @ */
+ CHAR_BACKWARD_SLASH, /* \ */
+ CHAR_COMMA, /* , */
+ CHAR_DOT, /* . */
+ CHAR_EXCLAMATION_MARK, /* ! */
+ CHAR_FORWARD_SLASH, /* / */
+ CHAR_LEFT_CURLY_BRACE, /* { */
+ CHAR_LEFT_PARENTHESES, /* ( */
+ CHAR_LEFT_SQUARE_BRACKET, /* [ */
+ CHAR_PLUS, /* + */
+ CHAR_QUESTION_MARK, /* ? */
+ CHAR_RIGHT_CURLY_BRACE, /* } */
+ CHAR_RIGHT_PARENTHESES, /* ) */
+ CHAR_RIGHT_SQUARE_BRACKET /* ] */
+} = __nccwpck_require__(6476);
+const isPathSeparator = code => {
+ return code === CHAR_FORWARD_SLASH || code === CHAR_BACKWARD_SLASH;
+};
-/***/ }),
+const depth = token => {
+ if (token.isPrefix !== true) {
+ token.depth = token.isGlobstar ? Infinity : 1;
+ }
+};
-/***/ 6099:
-/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
+/**
+ * Quickly scans a glob pattern and returns an object with a handful of
+ * useful properties, like `isGlob`, `path` (the leading non-glob, if it exists),
+ * `glob` (the actual pattern), `negated` (true if the path starts with `!` but not
+ * with `!(`) and `negatedExtglob` (true if the path starts with `!(`).
+ *
+ * ```js
+ * const pm = require('picomatch');
+ * console.log(pm.scan('foo/bar/*.js'));
+ * { isGlob: true, input: 'foo/bar/*.js', base: 'foo/bar', glob: '*.js' }
+ * ```
+ * @param {String} `str`
+ * @param {Object} `options`
+ * @return {Object} Returns an object with tokens and regex source string.
+ * @api public
+ */
-"use strict";
+const scan = (input, options) => {
+ const opts = options || {};
+ const length = input.length - 1;
+ const scanToEnd = opts.parts === true || opts.scanToEnd === true;
+ const slashes = [];
+ const tokens = [];
+ const parts = [];
-const path = __nccwpck_require__(1017);
-const WIN_SLASH = '\\\\/';
-const WIN_NO_SLASH = `[^${WIN_SLASH}]`;
+ let str = input;
+ let index = -1;
+ let start = 0;
+ let lastIndex = 0;
+ let isBrace = false;
+ let isBracket = false;
+ let isGlob = false;
+ let isExtglob = false;
+ let isGlobstar = false;
+ let braceEscaped = false;
+ let backslashes = false;
+ let negated = false;
+ let negatedExtglob = false;
+ let finished = false;
+ let braces = 0;
+ let prev;
+ let code;
+ let token = { value: '', depth: 0, isGlob: false };
-/**
- * Posix glob regex
- */
+ const eos = () => index >= length;
+ const peek = () => str.charCodeAt(index + 1);
+ const advance = () => {
+ prev = code;
+ return str.charCodeAt(++index);
+ };
-const DOT_LITERAL = '\\.';
-const PLUS_LITERAL = '\\+';
-const QMARK_LITERAL = '\\?';
-const SLASH_LITERAL = '\\/';
-const ONE_CHAR = '(?=.)';
-const QMARK = '[^/]';
-const END_ANCHOR = `(?:${SLASH_LITERAL}|$)`;
-const START_ANCHOR = `(?:^|${SLASH_LITERAL})`;
-const DOTS_SLASH = `${DOT_LITERAL}{1,2}${END_ANCHOR}`;
-const NO_DOT = `(?!${DOT_LITERAL})`;
-const NO_DOTS = `(?!${START_ANCHOR}${DOTS_SLASH})`;
-const NO_DOT_SLASH = `(?!${DOT_LITERAL}{0,1}${END_ANCHOR})`;
-const NO_DOTS_SLASH = `(?!${DOTS_SLASH})`;
-const QMARK_NO_DOT = `[^.${SLASH_LITERAL}]`;
-const STAR = `${QMARK}*?`;
+ while (index < length) {
+ code = advance();
+ let next;
-const POSIX_CHARS = {
- DOT_LITERAL,
- PLUS_LITERAL,
- QMARK_LITERAL,
- SLASH_LITERAL,
- ONE_CHAR,
- QMARK,
- END_ANCHOR,
- DOTS_SLASH,
- NO_DOT,
- NO_DOTS,
- NO_DOT_SLASH,
- NO_DOTS_SLASH,
- QMARK_NO_DOT,
- STAR,
- START_ANCHOR
-};
+ if (code === CHAR_BACKWARD_SLASH) {
+ backslashes = token.backslashes = true;
+ code = advance();
-/**
- * Windows glob regex
- */
+ if (code === CHAR_LEFT_CURLY_BRACE) {
+ braceEscaped = true;
+ }
+ continue;
+ }
-const WINDOWS_CHARS = {
- ...POSIX_CHARS,
+ if (braceEscaped === true || code === CHAR_LEFT_CURLY_BRACE) {
+ braces++;
- SLASH_LITERAL: `[${WIN_SLASH}]`,
- QMARK: WIN_NO_SLASH,
- STAR: `${WIN_NO_SLASH}*?`,
- DOTS_SLASH: `${DOT_LITERAL}{1,2}(?:[${WIN_SLASH}]|$)`,
- NO_DOT: `(?!${DOT_LITERAL})`,
- NO_DOTS: `(?!(?:^|[${WIN_SLASH}])${DOT_LITERAL}{1,2}(?:[${WIN_SLASH}]|$))`,
- NO_DOT_SLASH: `(?!${DOT_LITERAL}{0,1}(?:[${WIN_SLASH}]|$))`,
- NO_DOTS_SLASH: `(?!${DOT_LITERAL}{1,2}(?:[${WIN_SLASH}]|$))`,
- QMARK_NO_DOT: `[^.${WIN_SLASH}]`,
- START_ANCHOR: `(?:^|[${WIN_SLASH}])`,
- END_ANCHOR: `(?:[${WIN_SLASH}]|$)`
-};
+ while (eos() !== true && (code = advance())) {
+ if (code === CHAR_BACKWARD_SLASH) {
+ backslashes = token.backslashes = true;
+ advance();
+ continue;
+ }
-/**
- * POSIX Bracket Regex
- */
+ if (code === CHAR_LEFT_CURLY_BRACE) {
+ braces++;
+ continue;
+ }
-const POSIX_REGEX_SOURCE = {
- alnum: 'a-zA-Z0-9',
- alpha: 'a-zA-Z',
- ascii: '\\x00-\\x7F',
- blank: ' \\t',
- cntrl: '\\x00-\\x1F\\x7F',
- digit: '0-9',
- graph: '\\x21-\\x7E',
- lower: 'a-z',
- print: '\\x20-\\x7E ',
- punct: '\\-!"#$%&\'()\\*+,./:;<=>?@[\\]^_`{|}~',
- space: ' \\t\\r\\n\\v\\f',
- upper: 'A-Z',
- word: 'A-Za-z0-9_',
- xdigit: 'A-Fa-f0-9'
-};
+ if (braceEscaped !== true && code === CHAR_DOT && (code = advance()) === CHAR_DOT) {
+ isBrace = token.isBrace = true;
+ isGlob = token.isGlob = true;
+ finished = true;
-module.exports = {
- MAX_LENGTH: 1024 * 64,
- POSIX_REGEX_SOURCE,
+ if (scanToEnd === true) {
+ continue;
+ }
- // regular expressions
- REGEX_BACKSLASH: /\\(?![*+?^${}(|)[\]])/g,
- REGEX_NON_SPECIAL_CHARS: /^[^@![\].,$*+?^{}()|\\/]+/,
- REGEX_SPECIAL_CHARS: /[-*+?.^${}(|)[\]]/,
- REGEX_SPECIAL_CHARS_BACKREF: /(\\?)((\W)(\3*))/g,
- REGEX_SPECIAL_CHARS_GLOBAL: /([-*+?.^${}(|)[\]])/g,
- REGEX_REMOVE_BACKSLASH: /(?:\[.*?[^\\]\]|\\(?=.))/g,
+ break;
+ }
- // Replace globs with equivalent patterns to reduce parsing time.
- REPLACEMENTS: {
- '***': '*',
- '**/**': '**',
- '**/**/**': '**'
- },
+ if (braceEscaped !== true && code === CHAR_COMMA) {
+ isBrace = token.isBrace = true;
+ isGlob = token.isGlob = true;
+ finished = true;
- // Digits
- CHAR_0: 48, /* 0 */
- CHAR_9: 57, /* 9 */
+ if (scanToEnd === true) {
+ continue;
+ }
- // Alphabet chars.
- CHAR_UPPERCASE_A: 65, /* A */
- CHAR_LOWERCASE_A: 97, /* a */
- CHAR_UPPERCASE_Z: 90, /* Z */
- CHAR_LOWERCASE_Z: 122, /* z */
+ break;
+ }
- CHAR_LEFT_PARENTHESES: 40, /* ( */
- CHAR_RIGHT_PARENTHESES: 41, /* ) */
+ if (code === CHAR_RIGHT_CURLY_BRACE) {
+ braces--;
- CHAR_ASTERISK: 42, /* * */
+ if (braces === 0) {
+ braceEscaped = false;
+ isBrace = token.isBrace = true;
+ finished = true;
+ break;
+ }
+ }
+ }
- // Non-alphabetic chars.
- CHAR_AMPERSAND: 38, /* & */
- CHAR_AT: 64, /* @ */
- CHAR_BACKWARD_SLASH: 92, /* \ */
- CHAR_CARRIAGE_RETURN: 13, /* \r */
- CHAR_CIRCUMFLEX_ACCENT: 94, /* ^ */
- CHAR_COLON: 58, /* : */
- CHAR_COMMA: 44, /* , */
- CHAR_DOT: 46, /* . */
- CHAR_DOUBLE_QUOTE: 34, /* " */
- CHAR_EQUAL: 61, /* = */
- CHAR_EXCLAMATION_MARK: 33, /* ! */
- CHAR_FORM_FEED: 12, /* \f */
- CHAR_FORWARD_SLASH: 47, /* / */
- CHAR_GRAVE_ACCENT: 96, /* ` */
- CHAR_HASH: 35, /* # */
- CHAR_HYPHEN_MINUS: 45, /* - */
- CHAR_LEFT_ANGLE_BRACKET: 60, /* < */
- CHAR_LEFT_CURLY_BRACE: 123, /* { */
- CHAR_LEFT_SQUARE_BRACKET: 91, /* [ */
- CHAR_LINE_FEED: 10, /* \n */
- CHAR_NO_BREAK_SPACE: 160, /* \u00A0 */
- CHAR_PERCENT: 37, /* % */
- CHAR_PLUS: 43, /* + */
- CHAR_QUESTION_MARK: 63, /* ? */
- CHAR_RIGHT_ANGLE_BRACKET: 62, /* > */
- CHAR_RIGHT_CURLY_BRACE: 125, /* } */
- CHAR_RIGHT_SQUARE_BRACKET: 93, /* ] */
- CHAR_SEMICOLON: 59, /* ; */
- CHAR_SINGLE_QUOTE: 39, /* ' */
- CHAR_SPACE: 32, /* */
- CHAR_TAB: 9, /* \t */
- CHAR_UNDERSCORE: 95, /* _ */
- CHAR_VERTICAL_LINE: 124, /* | */
- CHAR_ZERO_WIDTH_NOBREAK_SPACE: 65279, /* \uFEFF */
+ if (scanToEnd === true) {
+ continue;
+ }
- SEP: path.sep,
+ break;
+ }
- /**
- * Create EXTGLOB_CHARS
- */
+ if (code === CHAR_FORWARD_SLASH) {
+ slashes.push(index);
+ tokens.push(token);
+ token = { value: '', depth: 0, isGlob: false };
- extglobChars(chars) {
- return {
- '!': { type: 'negate', open: '(?:(?!(?:', close: `))${chars.STAR})` },
- '?': { type: 'qmark', open: '(?:', close: ')?' },
- '+': { type: 'plus', open: '(?:', close: ')+' },
- '*': { type: 'star', open: '(?:', close: ')*' },
- '@': { type: 'at', open: '(?:', close: ')' }
- };
- },
+ if (finished === true) continue;
+ if (prev === CHAR_DOT && index === (start + 1)) {
+ start += 2;
+ continue;
+ }
- /**
- * Create GLOB_CHARS
- */
+ lastIndex = index + 1;
+ continue;
+ }
- globChars(win32) {
- return win32 === true ? WINDOWS_CHARS : POSIX_CHARS;
- }
-};
+ if (opts.noext !== true) {
+ const isExtglobChar = code === CHAR_PLUS
+ || code === CHAR_AT
+ || code === CHAR_ASTERISK
+ || code === CHAR_QUESTION_MARK
+ || code === CHAR_EXCLAMATION_MARK;
+ if (isExtglobChar === true && peek() === CHAR_LEFT_PARENTHESES) {
+ isGlob = token.isGlob = true;
+ isExtglob = token.isExtglob = true;
+ finished = true;
+ if (code === CHAR_EXCLAMATION_MARK && index === start) {
+ negatedExtglob = true;
+ }
-/***/ }),
+ if (scanToEnd === true) {
+ while (eos() !== true && (code = advance())) {
+ if (code === CHAR_BACKWARD_SLASH) {
+ backslashes = token.backslashes = true;
+ code = advance();
+ continue;
+ }
-/***/ 2139:
-/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
+ if (code === CHAR_RIGHT_PARENTHESES) {
+ isGlob = token.isGlob = true;
+ finished = true;
+ break;
+ }
+ }
+ continue;
+ }
+ break;
+ }
+ }
-"use strict";
+ if (code === CHAR_ASTERISK) {
+ if (prev === CHAR_ASTERISK) isGlobstar = token.isGlobstar = true;
+ isGlob = token.isGlob = true;
+ finished = true;
+ if (scanToEnd === true) {
+ continue;
+ }
+ break;
+ }
-const constants = __nccwpck_require__(6099);
-const utils = __nccwpck_require__(479);
+ if (code === CHAR_QUESTION_MARK) {
+ isGlob = token.isGlob = true;
+ finished = true;
-/**
- * Constants
- */
-
-const {
- MAX_LENGTH,
- POSIX_REGEX_SOURCE,
- REGEX_NON_SPECIAL_CHARS,
- REGEX_SPECIAL_CHARS_BACKREF,
- REPLACEMENTS
-} = constants;
-
-/**
- * Helpers
- */
+ if (scanToEnd === true) {
+ continue;
+ }
+ break;
+ }
-const expandRange = (args, options) => {
- if (typeof options.expandRange === 'function') {
- return options.expandRange(...args, options);
- }
+ if (code === CHAR_LEFT_SQUARE_BRACKET) {
+ while (eos() !== true && (next = advance())) {
+ if (next === CHAR_BACKWARD_SLASH) {
+ backslashes = token.backslashes = true;
+ advance();
+ continue;
+ }
- args.sort();
- const value = `[${args.join('-')}]`;
+ if (next === CHAR_RIGHT_SQUARE_BRACKET) {
+ isBracket = token.isBracket = true;
+ isGlob = token.isGlob = true;
+ finished = true;
+ break;
+ }
+ }
- try {
- /* eslint-disable-next-line no-new */
- new RegExp(value);
- } catch (ex) {
- return args.map(v => utils.escapeRegex(v)).join('..');
- }
+ if (scanToEnd === true) {
+ continue;
+ }
- return value;
-};
+ break;
+ }
-/**
- * Create the message for a syntax error
- */
+ if (opts.nonegate !== true && code === CHAR_EXCLAMATION_MARK && index === start) {
+ negated = token.negated = true;
+ start++;
+ continue;
+ }
-const syntaxError = (type, char) => {
- return `Missing ${type}: "${char}" - use "\\\\${char}" to match literal characters`;
-};
+ if (opts.noparen !== true && code === CHAR_LEFT_PARENTHESES) {
+ isGlob = token.isGlob = true;
-/**
- * Parse the given input string.
- * @param {String} input
- * @param {Object} options
- * @return {Object}
- */
+ if (scanToEnd === true) {
+ while (eos() !== true && (code = advance())) {
+ if (code === CHAR_LEFT_PARENTHESES) {
+ backslashes = token.backslashes = true;
+ code = advance();
+ continue;
+ }
-const parse = (input, options) => {
- if (typeof input !== 'string') {
- throw new TypeError('Expected a string');
- }
+ if (code === CHAR_RIGHT_PARENTHESES) {
+ finished = true;
+ break;
+ }
+ }
+ continue;
+ }
+ break;
+ }
- input = REPLACEMENTS[input] || input;
+ if (isGlob === true) {
+ finished = true;
- const opts = { ...options };
- const max = typeof opts.maxLength === 'number' ? Math.min(MAX_LENGTH, opts.maxLength) : MAX_LENGTH;
+ if (scanToEnd === true) {
+ continue;
+ }
- let len = input.length;
- if (len > max) {
- throw new SyntaxError(`Input length: ${len}, exceeds maximum allowed length: ${max}`);
+ break;
+ }
}
- const bos = { type: 'bos', value: '', output: opts.prepend || '' };
- const tokens = [bos];
-
- const capture = opts.capture ? '' : '?:';
- const win32 = utils.isWindows(options);
-
- // create constants based on platform, for windows or posix
- const PLATFORM_CHARS = constants.globChars(win32);
- const EXTGLOB_CHARS = constants.extglobChars(PLATFORM_CHARS);
+ if (opts.noext === true) {
+ isExtglob = false;
+ isGlob = false;
+ }
- const {
- DOT_LITERAL,
- PLUS_LITERAL,
- SLASH_LITERAL,
- ONE_CHAR,
- DOTS_SLASH,
- NO_DOT,
- NO_DOT_SLASH,
- NO_DOTS_SLASH,
- QMARK,
- QMARK_NO_DOT,
- STAR,
- START_ANCHOR
- } = PLATFORM_CHARS;
+ let base = str;
+ let prefix = '';
+ let glob = '';
- const globstar = opts => {
- return `(${capture}(?:(?!${START_ANCHOR}${opts.dot ? DOTS_SLASH : DOT_LITERAL}).)*?)`;
- };
+ if (start > 0) {
+ prefix = str.slice(0, start);
+ str = str.slice(start);
+ lastIndex -= start;
+ }
- const nodot = opts.dot ? '' : NO_DOT;
- const qmarkNoDot = opts.dot ? QMARK : QMARK_NO_DOT;
- let star = opts.bash === true ? globstar(opts) : STAR;
+ if (base && isGlob === true && lastIndex > 0) {
+ base = str.slice(0, lastIndex);
+ glob = str.slice(lastIndex);
+ } else if (isGlob === true) {
+ base = '';
+ glob = str;
+ } else {
+ base = str;
+ }
- if (opts.capture) {
- star = `(${star})`;
+ if (base && base !== '' && base !== '/' && base !== str) {
+ if (isPathSeparator(base.charCodeAt(base.length - 1))) {
+ base = base.slice(0, -1);
+ }
}
- // minimatch options support
- if (typeof opts.noext === 'boolean') {
- opts.noextglob = opts.noext;
+ if (opts.unescape === true) {
+ if (glob) glob = utils.removeBackslashes(glob);
+
+ if (base && backslashes === true) {
+ base = utils.removeBackslashes(base);
+ }
}
const state = {
+ prefix,
input,
- index: -1,
- start: 0,
- dot: opts.dot === true,
- consumed: '',
- output: '',
- prefix: '',
- backtrack: false,
- negated: false,
- brackets: 0,
- braces: 0,
- parens: 0,
- quotes: 0,
- globstar: false,
- tokens
+ start,
+ base,
+ glob,
+ isBrace,
+ isBracket,
+ isGlob,
+ isExtglob,
+ isGlobstar,
+ negated,
+ negatedExtglob
};
- input = utils.removePrefix(input, state);
- len = input.length;
-
- const extglobs = [];
- const braces = [];
- const stack = [];
- let prev = bos;
- let value;
-
- /**
- * Tokenizing helpers
- */
+ if (opts.tokens === true) {
+ state.maxDepth = 0;
+ if (!isPathSeparator(code)) {
+ tokens.push(token);
+ }
+ state.tokens = tokens;
+ }
- const eos = () => state.index === len - 1;
- const peek = state.peek = (n = 1) => input[state.index + n];
- const advance = state.advance = () => input[++state.index] || '';
- const remaining = () => input.slice(state.index + 1);
- const consume = (value = '', num = 0) => {
- state.consumed += value;
- state.index += num;
- };
+ if (opts.parts === true || opts.tokens === true) {
+ let prevIndex;
- const append = token => {
- state.output += token.output != null ? token.output : token.value;
- consume(token.value);
- };
+ for (let idx = 0; idx < slashes.length; idx++) {
+ const n = prevIndex ? prevIndex + 1 : start;
+ const i = slashes[idx];
+ const value = input.slice(n, i);
+ if (opts.tokens) {
+ if (idx === 0 && start !== 0) {
+ tokens[idx].isPrefix = true;
+ tokens[idx].value = prefix;
+ } else {
+ tokens[idx].value = value;
+ }
+ depth(tokens[idx]);
+ state.maxDepth += tokens[idx].depth;
+ }
+ if (idx !== 0 || value !== '') {
+ parts.push(value);
+ }
+ prevIndex = i;
+ }
- const negate = () => {
- let count = 1;
+ if (prevIndex && prevIndex + 1 < input.length) {
+ const value = input.slice(prevIndex + 1);
+ parts.push(value);
- while (peek() === '!' && (peek(2) !== '(' || peek(3) === '?')) {
- advance();
- state.start++;
- count++;
+ if (opts.tokens) {
+ tokens[tokens.length - 1].value = value;
+ depth(tokens[tokens.length - 1]);
+ state.maxDepth += tokens[tokens.length - 1].depth;
+ }
}
- if (count % 2 === 0) {
- return false;
- }
+ state.slashes = slashes;
+ state.parts = parts;
+ }
- state.negated = true;
- state.start++;
- return true;
- };
+ return state;
+};
- const increment = type => {
- state[type]++;
- stack.push(type);
- };
+module.exports = scan;
- const decrement = type => {
- state[type]--;
- stack.pop();
- };
- /**
- * Push tokens onto the tokens array. This helper speeds up
- * tokenizing by 1) helping us avoid backtracking as much as possible,
- * and 2) helping us avoid creating extra tokens when consecutive
- * characters are plain text. This improves performance and simplifies
- * lookbehinds.
- */
+/***/ }),
- const push = tok => {
- if (prev.type === 'globstar') {
- const isBrace = state.braces > 0 && (tok.type === 'comma' || tok.type === 'brace');
- const isExtglob = tok.extglob === true || (extglobs.length && (tok.type === 'pipe' || tok.type === 'paren'));
+/***/ 7426:
+/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => {
- if (tok.type !== 'slash' && tok.type !== 'paren' && !isBrace && !isExtglob) {
- state.output = state.output.slice(0, -prev.output.length);
- prev.type = 'star';
- prev.value = '*';
- prev.output = star;
- state.output += prev.output;
- }
- }
+"use strict";
- if (extglobs.length && tok.type !== 'paren') {
- extglobs[extglobs.length - 1].inner += tok.value;
- }
- if (tok.value || tok.output) append(tok);
- if (prev && prev.type === 'text' && tok.type === 'text') {
- prev.value += tok.value;
- prev.output = (prev.output || '') + tok.value;
- return;
- }
+const path = __nccwpck_require__(1017);
+const win32 = process.platform === 'win32';
+const {
+ REGEX_BACKSLASH,
+ REGEX_REMOVE_BACKSLASH,
+ REGEX_SPECIAL_CHARS,
+ REGEX_SPECIAL_CHARS_GLOBAL
+} = __nccwpck_require__(6476);
- tok.prev = prev;
- tokens.push(tok);
- prev = tok;
- };
+exports.isObject = val => val !== null && typeof val === 'object' && !Array.isArray(val);
+exports.hasRegexChars = str => REGEX_SPECIAL_CHARS.test(str);
+exports.isRegexChar = str => str.length === 1 && exports.hasRegexChars(str);
+exports.escapeRegex = str => str.replace(REGEX_SPECIAL_CHARS_GLOBAL, '\\$1');
+exports.toPosixSlashes = str => str.replace(REGEX_BACKSLASH, '/');
- const extglobOpen = (type, value) => {
- const token = { ...EXTGLOB_CHARS[value], conditions: 1, inner: '' };
+exports.removeBackslashes = str => {
+ return str.replace(REGEX_REMOVE_BACKSLASH, match => {
+ return match === '\\' ? '' : match;
+ });
+};
- token.prev = prev;
- token.parens = state.parens;
- token.output = state.output;
- const output = (opts.capture ? '(' : '') + token.open;
+exports.supportsLookbehinds = () => {
+ const segs = process.version.slice(1).split('.').map(Number);
+ if (segs.length === 3 && segs[0] >= 9 || (segs[0] === 8 && segs[1] >= 10)) {
+ return true;
+ }
+ return false;
+};
- increment('parens');
- push({ type, value, output: state.output ? '' : ONE_CHAR });
- push({ type: 'paren', extglob: true, value: advance(), output });
- extglobs.push(token);
- };
+exports.isWindows = options => {
+ if (options && typeof options.windows === 'boolean') {
+ return options.windows;
+ }
+ return win32 === true || path.sep === '\\';
+};
- const extglobClose = token => {
- let output = token.close + (opts.capture ? ')' : '');
- let rest;
+exports.escapeLast = (input, char, lastIdx) => {
+ const idx = input.lastIndexOf(char, lastIdx);
+ if (idx === -1) return input;
+ if (input[idx - 1] === '\\') return exports.escapeLast(input, char, idx - 1);
+ return `${input.slice(0, idx)}\\${input.slice(idx)}`;
+};
- if (token.type === 'negate') {
- let extglobStar = star;
+exports.removePrefix = (input, state = {}) => {
+ let output = input;
+ if (output.startsWith('./')) {
+ output = output.slice(2);
+ state.prefix = './';
+ }
+ return output;
+};
- if (token.inner && token.inner.length > 1 && token.inner.includes('/')) {
- extglobStar = globstar(opts);
- }
+exports.wrapOutput = (input, state = {}, options = {}) => {
+ const prepend = options.contains ? '' : '^';
+ const append = options.contains ? '' : '$';
- if (extglobStar !== star || eos() || /^\)+$/.test(remaining())) {
- output = token.close = `)$))${extglobStar}`;
- }
+ let output = `${prepend}(?:${input})${append}`;
+ if (state.negated === true) {
+ output = `(?:^(?!${output}).*$)`;
+ }
+ return output;
+};
- if (token.inner.includes('*') && (rest = remaining()) && /^\.[^\\/.]+$/.test(rest)) {
- // Any non-magical string (`.ts`) or even nested expression (`.{ts,tsx}`) can follow after the closing parenthesis.
- // In this case, we need to parse the string and use it in the output of the original pattern.
- // Suitable patterns: `/!(*.d).ts`, `/!(*.d).{ts,tsx}`, `**/!(*-dbg).@(js)`.
- //
- // Disabling the `fastpaths` option due to a problem with parsing strings as `.ts` in the pattern like `**/!(*.d).ts`.
- const expression = parse(rest, { ...options, fastpaths: false }).output;
- output = token.close = `)${expression})${extglobStar})`;
- }
+/***/ }),
- if (token.prev.type === 'bos') {
- state.negatedExtglob = true;
- }
- }
+/***/ 2610:
+/***/ ((module) => {
- push({ type: 'paren', extglob: true, value, output });
- decrement('parens');
- };
+"use strict";
- /**
- * Fast paths
- */
- if (opts.fastpaths !== false && !/(^[*!]|[/()[\]{}"])/.test(input)) {
- let backslashes = false;
+// We define these manually to ensure they're always copied
+// even if they would move up the prototype chain
+// https://nodejs.org/api/http.html#http_class_http_incomingmessage
+const knownProps = [
+ 'destroy',
+ 'setTimeout',
+ 'socket',
+ 'headers',
+ 'trailers',
+ 'rawHeaders',
+ 'statusCode',
+ 'httpVersion',
+ 'httpVersionMinor',
+ 'httpVersionMajor',
+ 'rawTrailers',
+ 'statusMessage'
+];
- let output = input.replace(REGEX_SPECIAL_CHARS_BACKREF, (m, esc, chars, first, rest, index) => {
- if (first === '\\') {
- backslashes = true;
- return m;
- }
+module.exports = (fromStream, toStream) => {
+ const fromProps = new Set(Object.keys(fromStream).concat(knownProps));
- if (first === '?') {
- if (esc) {
- return esc + first + (rest ? QMARK.repeat(rest.length) : '');
- }
- if (index === 0) {
- return qmarkNoDot + (rest ? QMARK.repeat(rest.length) : '');
- }
- return QMARK.repeat(chars.length);
- }
+ for (const prop of fromProps) {
+ // Don't overwrite existing properties
+ if (prop in toStream) {
+ continue;
+ }
- if (first === '.') {
- return DOT_LITERAL.repeat(chars.length);
- }
+ toStream[prop] = typeof fromStream[prop] === 'function' ? fromStream[prop].bind(fromStream) : fromStream[prop];
+ }
+};
- if (first === '*') {
- if (esc) {
- return esc + first + (rest ? star : '');
- }
- return star;
- }
- return esc ? m : `\\${m}`;
- });
- if (backslashes === true) {
- if (opts.unescape === true) {
- output = output.replace(/\\/g, '');
- } else {
- output = output.replace(/\\+/g, m => {
- return m.length % 2 === 0 ? '\\\\' : (m ? '\\' : '');
- });
- }
- }
+/***/ }),
- if (output === input && opts.contains === true) {
- state.output = input;
- return state;
- }
+/***/ 7952:
+/***/ ((module) => {
- state.output = utils.wrapOutput(output, state, options);
- return state;
- }
+"use strict";
- /**
- * Tokenize input until we reach end-of-string
- */
- while (!eos()) {
- value = advance();
+// https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URIs
+const DATA_URL_DEFAULT_MIME_TYPE = 'text/plain';
+const DATA_URL_DEFAULT_CHARSET = 'us-ascii';
- if (value === '\u0000') {
- continue;
- }
+const testParameter = (name, filters) => {
+ return filters.some(filter => filter instanceof RegExp ? filter.test(name) : filter === name);
+};
- /**
- * Escaped characters
- */
+const normalizeDataURL = (urlString, {stripHash}) => {
+ const match = /^data:(?[^,]*?),(?[^#]*?)(?:#(?.*))?$/.exec(urlString);
- if (value === '\\') {
- const next = peek();
+ if (!match) {
+ throw new Error(`Invalid URL: ${urlString}`);
+ }
- if (next === '/' && opts.bash !== true) {
- continue;
- }
+ let {type, data, hash} = match.groups;
+ const mediaType = type.split(';');
+ hash = stripHash ? '' : hash;
- if (next === '.' || next === ';') {
- continue;
- }
+ let isBase64 = false;
+ if (mediaType[mediaType.length - 1] === 'base64') {
+ mediaType.pop();
+ isBase64 = true;
+ }
- if (!next) {
- value += '\\';
- push({ type: 'text', value });
- continue;
- }
+ // Lowercase MIME type
+ const mimeType = (mediaType.shift() || '').toLowerCase();
+ const attributes = mediaType
+ .map(attribute => {
+ let [key, value = ''] = attribute.split('=').map(string => string.trim());
- // collapse slashes to reduce potential for exploits
- const match = /^\\+/.exec(remaining());
- let slashes = 0;
+ // Lowercase `charset`
+ if (key === 'charset') {
+ value = value.toLowerCase();
- if (match && match[0].length > 2) {
- slashes = match[0].length;
- state.index += slashes;
- if (slashes % 2 !== 0) {
- value += '\\';
- }
- }
+ if (value === DATA_URL_DEFAULT_CHARSET) {
+ return '';
+ }
+ }
- if (opts.unescape === true) {
- value = advance();
- } else {
- value += advance();
- }
+ return `${key}${value ? `=${value}` : ''}`;
+ })
+ .filter(Boolean);
- if (state.brackets === 0) {
- push({ type: 'text', value });
- continue;
- }
- }
+ const normalizedMediaType = [
+ ...attributes
+ ];
- /**
- * If we're inside a regex character class, continue
- * until we reach the closing bracket.
- */
+ if (isBase64) {
+ normalizedMediaType.push('base64');
+ }
- if (state.brackets > 0 && (value !== ']' || prev.value === '[' || prev.value === '[^')) {
- if (opts.posix !== false && value === ':') {
- const inner = prev.value.slice(1);
- if (inner.includes('[')) {
- prev.posix = true;
+ if (normalizedMediaType.length !== 0 || (mimeType && mimeType !== DATA_URL_DEFAULT_MIME_TYPE)) {
+ normalizedMediaType.unshift(mimeType);
+ }
- if (inner.includes(':')) {
- const idx = prev.value.lastIndexOf('[');
- const pre = prev.value.slice(0, idx);
- const rest = prev.value.slice(idx + 2);
- const posix = POSIX_REGEX_SOURCE[rest];
- if (posix) {
- prev.value = pre + posix;
- state.backtrack = true;
- advance();
+ return `data:${normalizedMediaType.join(';')},${isBase64 ? data.trim() : data}${hash ? `#${hash}` : ''}`;
+};
- if (!bos.output && tokens.indexOf(prev) === 1) {
- bos.output = ONE_CHAR;
- }
- continue;
- }
- }
- }
- }
+const normalizeUrl = (urlString, options) => {
+ options = {
+ defaultProtocol: 'http:',
+ normalizeProtocol: true,
+ forceHttp: false,
+ forceHttps: false,
+ stripAuthentication: true,
+ stripHash: false,
+ stripTextFragment: true,
+ stripWWW: true,
+ removeQueryParameters: [/^utm_\w+/i],
+ removeTrailingSlash: true,
+ removeSingleSlash: true,
+ removeDirectoryIndex: false,
+ sortQueryParameters: true,
+ ...options
+ };
- if ((value === '[' && peek() !== ':') || (value === '-' && peek() === ']')) {
- value = `\\${value}`;
- }
+ urlString = urlString.trim();
- if (value === ']' && (prev.value === '[' || prev.value === '[^')) {
- value = `\\${value}`;
- }
+ // Data URL
+ if (/^data:/i.test(urlString)) {
+ return normalizeDataURL(urlString, options);
+ }
- if (opts.posix === true && value === '!' && prev.value === '[') {
- value = '^';
- }
+ if (/^view-source:/i.test(urlString)) {
+ throw new Error('`view-source:` is not supported as it is a non-standard protocol');
+ }
- prev.value += value;
- append({ value });
- continue;
- }
+ const hasRelativeProtocol = urlString.startsWith('//');
+ const isRelativeUrl = !hasRelativeProtocol && /^\.*\//.test(urlString);
- /**
- * If we're inside a quoted string, continue
- * until we reach the closing double quote.
- */
+ // Prepend protocol
+ if (!isRelativeUrl) {
+ urlString = urlString.replace(/^(?!(?:\w+:)?\/\/)|^\/\//, options.defaultProtocol);
+ }
- if (state.quotes === 1 && value !== '"') {
- value = utils.escapeRegex(value);
- prev.value += value;
- append({ value });
- continue;
- }
+ const urlObj = new URL(urlString);
- /**
- * Double quotes
- */
+ if (options.forceHttp && options.forceHttps) {
+ throw new Error('The `forceHttp` and `forceHttps` options cannot be used together');
+ }
- if (value === '"') {
- state.quotes = state.quotes === 1 ? 0 : 1;
- if (opts.keepQuotes === true) {
- push({ type: 'text', value });
- }
- continue;
- }
+ if (options.forceHttp && urlObj.protocol === 'https:') {
+ urlObj.protocol = 'http:';
+ }
- /**
- * Parentheses
- */
+ if (options.forceHttps && urlObj.protocol === 'http:') {
+ urlObj.protocol = 'https:';
+ }
- if (value === '(') {
- increment('parens');
- push({ type: 'paren', value });
- continue;
- }
+ // Remove auth
+ if (options.stripAuthentication) {
+ urlObj.username = '';
+ urlObj.password = '';
+ }
- if (value === ')') {
- if (state.parens === 0 && opts.strictBrackets === true) {
- throw new SyntaxError(syntaxError('opening', '('));
- }
+ // Remove hash
+ if (options.stripHash) {
+ urlObj.hash = '';
+ } else if (options.stripTextFragment) {
+ urlObj.hash = urlObj.hash.replace(/#?:~:text.*?$/i, '');
+ }
- const extglob = extglobs[extglobs.length - 1];
- if (extglob && state.parens === extglob.parens + 1) {
- extglobClose(extglobs.pop());
- continue;
- }
+ // Remove duplicate slashes if not preceded by a protocol
+ if (urlObj.pathname) {
+ urlObj.pathname = urlObj.pathname.replace(/(? 0) {
+ let pathComponents = urlObj.pathname.split('/');
+ const lastComponent = pathComponents[pathComponents.length - 1];
- value = `\\${value}`;
- } else {
- increment('brackets');
- }
+ if (testParameter(lastComponent, options.removeDirectoryIndex)) {
+ pathComponents = pathComponents.slice(0, pathComponents.length - 1);
+ urlObj.pathname = pathComponents.slice(1).join('/') + '/';
+ }
+ }
- push({ type: 'bracket', value });
- continue;
- }
+ if (urlObj.hostname) {
+ // Remove trailing dot
+ urlObj.hostname = urlObj.hostname.replace(/\.$/, '');
- if (value === ']') {
- if (opts.nobracket === true || (prev && prev.type === 'bracket' && prev.value.length === 1)) {
- push({ type: 'text', value, output: `\\${value}` });
- continue;
- }
+ // Remove `www.`
+ if (options.stripWWW && /^www\.(?!www\.)(?:[a-z\-\d]{1,63})\.(?:[a-z.\-\d]{2,63})$/.test(urlObj.hostname)) {
+ // Each label should be max 63 at length (min: 1).
+ // Source: https://en.wikipedia.org/wiki/Hostname#Restrictions_on_valid_host_names
+ // Each TLD should be up to 63 characters long (min: 2).
+ // It is technically possible to have a single character TLD, but none currently exist.
+ urlObj.hostname = urlObj.hostname.replace(/^www\./, '');
+ }
+ }
- if (state.brackets === 0) {
- if (opts.strictBrackets === true) {
- throw new SyntaxError(syntaxError('opening', '['));
- }
+ // Remove query unwanted parameters
+ if (Array.isArray(options.removeQueryParameters)) {
+ for (const key of [...urlObj.searchParams.keys()]) {
+ if (testParameter(key, options.removeQueryParameters)) {
+ urlObj.searchParams.delete(key);
+ }
+ }
+ }
- push({ type: 'text', value, output: `\\${value}` });
- continue;
- }
+ if (options.removeQueryParameters === true) {
+ urlObj.search = '';
+ }
- decrement('brackets');
+ // Sort query parameters
+ if (options.sortQueryParameters) {
+ urlObj.searchParams.sort();
+ }
- const prevValue = prev.value.slice(1);
- if (prev.posix !== true && prevValue[0] === '^' && !prevValue.includes('/')) {
- value = `/${value}`;
- }
+ if (options.removeTrailingSlash) {
+ urlObj.pathname = urlObj.pathname.replace(/\/$/, '');
+ }
- prev.value += value;
- append({ value });
+ const oldUrlString = urlString;
- // when literal brackets are explicitly disabled
- // assume we should match with a regex character class
- if (opts.literalBrackets === false || utils.hasRegexChars(prevValue)) {
- continue;
- }
+ // Take advantage of many of the Node `url` normalizations
+ urlString = urlObj.toString();
- const escaped = utils.escapeRegex(prev.value);
- state.output = state.output.slice(0, -prev.value.length);
+ if (!options.removeSingleSlash && urlObj.pathname === '/' && !oldUrlString.endsWith('/') && urlObj.hash === '') {
+ urlString = urlString.replace(/\/$/, '');
+ }
- // when literal brackets are explicitly enabled
- // assume we should escape the brackets to match literal characters
- if (opts.literalBrackets === true) {
- state.output += escaped;
- prev.value = escaped;
- continue;
- }
+ // Remove ending `/` unless removeSingleSlash is false
+ if ((options.removeTrailingSlash || urlObj.pathname === '/') && urlObj.hash === '' && options.removeSingleSlash) {
+ urlString = urlString.replace(/\/$/, '');
+ }
- // when the user specifies nothing, try to match both
- prev.value = `(${capture}${escaped}|${prev.value})`;
- state.output += prev.value;
- continue;
- }
+ // Restore relative protocol, if applicable
+ if (hasRelativeProtocol && !options.normalizeProtocol) {
+ urlString = urlString.replace(/^http:\/\//, '//');
+ }
- /**
- * Braces
- */
+ // Remove http/https
+ if (options.stripProtocol) {
+ urlString = urlString.replace(/^(?:https?:)?\/\//, '');
+ }
- if (value === '{' && opts.nobrace !== true) {
- increment('braces');
+ return urlString;
+};
- const open = {
- type: 'brace',
- value,
- output: '(',
- outputIndex: state.output.length,
- tokensIndex: state.tokens.length
- };
+module.exports = normalizeUrl;
- braces.push(open);
- push(open);
- continue;
- }
- if (value === '}') {
- const brace = braces[braces.length - 1];
+/***/ }),
- if (opts.nobrace === true || !brace) {
- push({ type: 'text', value, output: value });
- continue;
- }
+/***/ 1223:
+/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
- let output = ')';
+var wrappy = __nccwpck_require__(2940)
+module.exports = wrappy(once)
+module.exports.strict = wrappy(onceStrict)
- if (brace.dots === true) {
- const arr = tokens.slice();
- const range = [];
+once.proto = once(function () {
+ Object.defineProperty(Function.prototype, 'once', {
+ value: function () {
+ return once(this)
+ },
+ configurable: true
+ })
- for (let i = arr.length - 1; i >= 0; i--) {
- tokens.pop();
- if (arr[i].type === 'brace') {
- break;
- }
- if (arr[i].type !== 'dots') {
- range.unshift(arr[i].value);
- }
- }
+ Object.defineProperty(Function.prototype, 'onceStrict', {
+ value: function () {
+ return onceStrict(this)
+ },
+ configurable: true
+ })
+})
- output = expandRange(range, opts);
- state.backtrack = true;
- }
+function once (fn) {
+ var f = function () {
+ if (f.called) return f.value
+ f.called = true
+ return f.value = fn.apply(this, arguments)
+ }
+ f.called = false
+ return f
+}
- if (brace.comma !== true && brace.dots !== true) {
- const out = state.output.slice(0, brace.outputIndex);
- const toks = state.tokens.slice(brace.tokensIndex);
- brace.value = brace.output = '\\{';
- value = output = '\\}';
- state.output = out;
- for (const t of toks) {
- state.output += (t.output || t.value);
- }
- }
+function onceStrict (fn) {
+ var f = function () {
+ if (f.called)
+ throw new Error(f.onceError)
+ f.called = true
+ return f.value = fn.apply(this, arguments)
+ }
+ var name = fn.name || 'Function wrapped with `once`'
+ f.onceError = name + " shouldn't be called more than once"
+ f.called = false
+ return f
+}
- push({ type: 'brace', value, output });
- decrement('braces');
- braces.pop();
- continue;
- }
- /**
- * Pipes
- */
+/***/ }),
- if (value === '|') {
- if (extglobs.length > 0) {
- extglobs[extglobs.length - 1].conditions++;
- }
- push({ type: 'text', value });
- continue;
- }
+/***/ 9072:
+/***/ ((module) => {
- /**
- * Commas
- */
+"use strict";
- if (value === ',') {
- let output = value;
- const brace = braces[braces.length - 1];
- if (brace && stack[stack.length - 1] === 'braces') {
- brace.comma = true;
- output = '|';
- }
+class CancelError extends Error {
+ constructor(reason) {
+ super(reason || 'Promise was canceled');
+ this.name = 'CancelError';
+ }
- push({ type: 'comma', value, output });
- continue;
- }
+ get isCanceled() {
+ return true;
+ }
+}
- /**
- * Slashes
- */
+class PCancelable {
+ static fn(userFn) {
+ return (...arguments_) => {
+ return new PCancelable((resolve, reject, onCancel) => {
+ arguments_.push(onCancel);
+ // eslint-disable-next-line promise/prefer-await-to-then
+ userFn(...arguments_).then(resolve, reject);
+ });
+ };
+ }
- if (value === '/') {
- // if the beginning of the glob is "./", advance the start
- // to the current index, and don't add the "./" characters
- // to the state. This greatly simplifies lookbehinds when
- // checking for BOS characters like "!" and "." (not "./")
- if (prev.type === 'dot' && state.index === state.start + 1) {
- state.start = state.index + 1;
- state.consumed = '';
- state.output = '';
- tokens.pop();
- prev = bos; // reset "prev" to the first token
- continue;
- }
+ constructor(executor) {
+ this._cancelHandlers = [];
+ this._isPending = true;
+ this._isCanceled = false;
+ this._rejectOnCancel = true;
- push({ type: 'slash', value, output: SLASH_LITERAL });
- continue;
- }
+ this._promise = new Promise((resolve, reject) => {
+ this._reject = reject;
- /**
- * Dots
- */
+ const onResolve = value => {
+ if (!this._isCanceled || !onCancel.shouldReject) {
+ this._isPending = false;
+ resolve(value);
+ }
+ };
- if (value === '.') {
- if (state.braces > 0 && prev.type === 'dot') {
- if (prev.value === '.') prev.output = DOT_LITERAL;
- const brace = braces[braces.length - 1];
- prev.type = 'dots';
- prev.output += value;
- prev.value += value;
- brace.dots = true;
- continue;
- }
+ const onReject = error => {
+ this._isPending = false;
+ reject(error);
+ };
- if ((state.braces + state.parens) === 0 && prev.type !== 'bos' && prev.type !== 'slash') {
- push({ type: 'text', value, output: DOT_LITERAL });
- continue;
- }
+ const onCancel = handler => {
+ if (!this._isPending) {
+ throw new Error('The `onCancel` handler was attached after the promise settled.');
+ }
- push({ type: 'dot', value, output: DOT_LITERAL });
- continue;
- }
+ this._cancelHandlers.push(handler);
+ };
- /**
- * Question marks
- */
+ Object.defineProperties(onCancel, {
+ shouldReject: {
+ get: () => this._rejectOnCancel,
+ set: boolean => {
+ this._rejectOnCancel = boolean;
+ }
+ }
+ });
- if (value === '?') {
- const isGroup = prev && prev.value === '(';
- if (!isGroup && opts.noextglob !== true && peek() === '(' && peek(2) !== '?') {
- extglobOpen('qmark', value);
- continue;
- }
+ return executor(onResolve, onReject, onCancel);
+ });
+ }
- if (prev && prev.type === 'paren') {
- const next = peek();
- let output = value;
+ then(onFulfilled, onRejected) {
+ // eslint-disable-next-line promise/prefer-await-to-then
+ return this._promise.then(onFulfilled, onRejected);
+ }
- if (next === '<' && !utils.supportsLookbehinds()) {
- throw new Error('Node.js v10 or higher is required for regex lookbehinds');
- }
+ catch(onRejected) {
+ return this._promise.catch(onRejected);
+ }
- if ((prev.value === '(' && !/[!=<:]/.test(next)) || (next === '<' && !/<([!=]|\w+>)/.test(remaining()))) {
- output = `\\${value}`;
- }
+ finally(onFinally) {
+ return this._promise.finally(onFinally);
+ }
- push({ type: 'text', value, output });
- continue;
- }
+ cancel(reason) {
+ if (!this._isPending || this._isCanceled) {
+ return;
+ }
- if (opts.dot !== true && (prev.type === 'slash' || prev.type === 'bos')) {
- push({ type: 'qmark', value, output: QMARK_NO_DOT });
- continue;
- }
+ this._isCanceled = true;
- push({ type: 'qmark', value, output: QMARK });
- continue;
- }
+ if (this._cancelHandlers.length > 0) {
+ try {
+ for (const handler of this._cancelHandlers) {
+ handler();
+ }
+ } catch (error) {
+ this._reject(error);
+ return;
+ }
+ }
- /**
- * Exclamation
- */
+ if (this._rejectOnCancel) {
+ this._reject(new CancelError(reason));
+ }
+ }
- if (value === '!') {
- if (opts.noextglob !== true && peek() === '(') {
- if (peek(2) !== '?' || !/[!=<:]/.test(peek(3))) {
- extglobOpen('negate', value);
- continue;
- }
- }
+ get isCanceled() {
+ return this._isCanceled;
+ }
+}
- if (opts.nonegate !== true && state.index === 0) {
- negate();
- continue;
- }
- }
+Object.setPrototypeOf(PCancelable.prototype, Promise.prototype);
- /**
- * Plus
- */
+module.exports = PCancelable;
+module.exports.CancelError = CancelError;
- if (value === '+') {
- if (opts.noextglob !== true && peek() === '(' && peek(2) !== '?') {
- extglobOpen('plus', value);
- continue;
- }
- if ((prev && prev.value === '(') || opts.regex === false) {
- push({ type: 'plus', value, output: PLUS_LITERAL });
- continue;
- }
+/***/ }),
- if ((prev && (prev.type === 'bracket' || prev.type === 'paren' || prev.type === 'brace')) || state.parens > 0) {
- push({ type: 'plus', value });
- continue;
- }
+/***/ 8569:
+/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
- push({ type: 'plus', value: PLUS_LITERAL });
- continue;
- }
+"use strict";
- /**
- * Plain text
- */
- if (value === '@') {
- if (opts.noextglob !== true && peek() === '(' && peek(2) !== '?') {
- push({ type: 'at', extglob: true, value, output: '' });
- continue;
- }
+const os = __nccwpck_require__(2037);
+const pico = __nccwpck_require__(3322);
- push({ type: 'text', value });
- continue;
- }
+const isWindows = os.platform() === 'win32';
- /**
- * Plain text
- */
+function picomatch(glob, options, returnState = false) {
+ // default to os.platform()
+ if (options && (options.windows === null || options.windows === undefined)) {
+ // don't mutate the original options object
+ options = { ...options, windows: isWindows };
+ }
+ return pico(glob, options, returnState);
+}
- if (value !== '*') {
- if (value === '$' || value === '^') {
- value = `\\${value}`;
- }
+module.exports = picomatch;
+// public api
+module.exports.test = pico.test;
+module.exports.matchBase = pico.matchBase;
+module.exports.isMatch = pico.isMatch;
+module.exports.parse = pico.parse;
+module.exports.scan = pico.scan;
+module.exports.compileRe = pico.compileRe;
+module.exports.toRegex = pico.toRegex;
+// for tests
+module.exports.makeRe = pico.makeRe;
- const match = REGEX_NON_SPECIAL_CHARS.exec(remaining());
- if (match) {
- value += match[0];
- state.index += match[0].length;
- }
- push({ type: 'text', value });
- continue;
- }
+/***/ }),
- /**
- * Stars
- */
+/***/ 6099:
+/***/ ((module) => {
- if (prev && (prev.type === 'globstar' || prev.star === true)) {
- prev.type = 'star';
- prev.star = true;
- prev.value += value;
- prev.output = star;
- state.backtrack = true;
- state.globstar = true;
- consume(value);
- continue;
- }
+"use strict";
- let rest = remaining();
- if (opts.noextglob !== true && /^\([^?]/.test(rest)) {
- extglobOpen('star', value);
- continue;
- }
- if (prev.type === 'star') {
- if (opts.noglobstar === true) {
- consume(value);
- continue;
- }
+const WIN_SLASH = '\\\\/';
+const WIN_NO_SLASH = `[^${WIN_SLASH}]`;
- const prior = prev.prev;
- const before = prior.prev;
- const isStart = prior.type === 'slash' || prior.type === 'bos';
- const afterStar = before && (before.type === 'star' || before.type === 'globstar');
+/**
+ * Posix glob regex
+ */
- if (opts.bash === true && (!isStart || (rest[0] && rest[0] !== '/'))) {
- push({ type: 'star', value, output: '' });
- continue;
- }
+const DOT_LITERAL = '\\.';
+const PLUS_LITERAL = '\\+';
+const QMARK_LITERAL = '\\?';
+const SLASH_LITERAL = '\\/';
+const ONE_CHAR = '(?=.)';
+const QMARK = '[^/]';
+const END_ANCHOR = `(?:${SLASH_LITERAL}|$)`;
+const START_ANCHOR = `(?:^|${SLASH_LITERAL})`;
+const DOTS_SLASH = `${DOT_LITERAL}{1,2}${END_ANCHOR}`;
+const NO_DOT = `(?!${DOT_LITERAL})`;
+const NO_DOTS = `(?!${START_ANCHOR}${DOTS_SLASH})`;
+const NO_DOT_SLASH = `(?!${DOT_LITERAL}{0,1}${END_ANCHOR})`;
+const NO_DOTS_SLASH = `(?!${DOTS_SLASH})`;
+const QMARK_NO_DOT = `[^.${SLASH_LITERAL}]`;
+const STAR = `${QMARK}*?`;
+const SEP = '/';
- const isBrace = state.braces > 0 && (prior.type === 'comma' || prior.type === 'brace');
- const isExtglob = extglobs.length && (prior.type === 'pipe' || prior.type === 'paren');
- if (!isStart && prior.type !== 'paren' && !isBrace && !isExtglob) {
- push({ type: 'star', value, output: '' });
- continue;
- }
+const POSIX_CHARS = {
+ DOT_LITERAL,
+ PLUS_LITERAL,
+ QMARK_LITERAL,
+ SLASH_LITERAL,
+ ONE_CHAR,
+ QMARK,
+ END_ANCHOR,
+ DOTS_SLASH,
+ NO_DOT,
+ NO_DOTS,
+ NO_DOT_SLASH,
+ NO_DOTS_SLASH,
+ QMARK_NO_DOT,
+ STAR,
+ START_ANCHOR,
+ SEP
+};
- // strip consecutive `/**/`
- while (rest.slice(0, 3) === '/**') {
- const after = input[state.index + 4];
- if (after && after !== '/') {
- break;
- }
- rest = rest.slice(3);
- consume('/**', 3);
- }
+/**
+ * Windows glob regex
+ */
- if (prior.type === 'bos' && eos()) {
- prev.type = 'globstar';
- prev.value += value;
- prev.output = globstar(opts);
- state.output = prev.output;
- state.globstar = true;
- consume(value);
- continue;
- }
+const WINDOWS_CHARS = {
+ ...POSIX_CHARS,
- if (prior.type === 'slash' && prior.prev.type !== 'bos' && !afterStar && eos()) {
- state.output = state.output.slice(0, -(prior.output + prev.output).length);
- prior.output = `(?:${prior.output}`;
+ SLASH_LITERAL: `[${WIN_SLASH}]`,
+ QMARK: WIN_NO_SLASH,
+ STAR: `${WIN_NO_SLASH}*?`,
+ DOTS_SLASH: `${DOT_LITERAL}{1,2}(?:[${WIN_SLASH}]|$)`,
+ NO_DOT: `(?!${DOT_LITERAL})`,
+ NO_DOTS: `(?!(?:^|[${WIN_SLASH}])${DOT_LITERAL}{1,2}(?:[${WIN_SLASH}]|$))`,
+ NO_DOT_SLASH: `(?!${DOT_LITERAL}{0,1}(?:[${WIN_SLASH}]|$))`,
+ NO_DOTS_SLASH: `(?!${DOT_LITERAL}{1,2}(?:[${WIN_SLASH}]|$))`,
+ QMARK_NO_DOT: `[^.${WIN_SLASH}]`,
+ START_ANCHOR: `(?:^|[${WIN_SLASH}])`,
+ END_ANCHOR: `(?:[${WIN_SLASH}]|$)`,
+ SEP: '\\'
+};
- prev.type = 'globstar';
- prev.output = globstar(opts) + (opts.strictSlashes ? ')' : '|$)');
- prev.value += value;
- state.globstar = true;
- state.output += prior.output + prev.output;
- consume(value);
- continue;
- }
+/**
+ * POSIX Bracket Regex
+ */
- if (prior.type === 'slash' && prior.prev.type !== 'bos' && rest[0] === '/') {
- const end = rest[1] !== void 0 ? '|$' : '';
+const POSIX_REGEX_SOURCE = {
+ alnum: 'a-zA-Z0-9',
+ alpha: 'a-zA-Z',
+ ascii: '\\x00-\\x7F',
+ blank: ' \\t',
+ cntrl: '\\x00-\\x1F\\x7F',
+ digit: '0-9',
+ graph: '\\x21-\\x7E',
+ lower: 'a-z',
+ print: '\\x20-\\x7E ',
+ punct: '\\-!"#$%&\'()\\*+,./:;<=>?@[\\]^_`{|}~',
+ space: ' \\t\\r\\n\\v\\f',
+ upper: 'A-Z',
+ word: 'A-Za-z0-9_',
+ xdigit: 'A-Fa-f0-9'
+};
- state.output = state.output.slice(0, -(prior.output + prev.output).length);
- prior.output = `(?:${prior.output}`;
+module.exports = {
+ MAX_LENGTH: 1024 * 64,
+ POSIX_REGEX_SOURCE,
- prev.type = 'globstar';
- prev.output = `${globstar(opts)}${SLASH_LITERAL}|${SLASH_LITERAL}${end})`;
- prev.value += value;
+ // regular expressions
+ REGEX_BACKSLASH: /\\(?![*+?^${}(|)[\]])/g,
+ REGEX_NON_SPECIAL_CHARS: /^[^@![\].,$*+?^{}()|\\/]+/,
+ REGEX_SPECIAL_CHARS: /[-*+?.^${}(|)[\]]/,
+ REGEX_SPECIAL_CHARS_BACKREF: /(\\?)((\W)(\3*))/g,
+ REGEX_SPECIAL_CHARS_GLOBAL: /([-*+?.^${}(|)[\]])/g,
+ REGEX_REMOVE_BACKSLASH: /(?:\[.*?[^\\]\]|\\(?=.))/g,
- state.output += prior.output + prev.output;
- state.globstar = true;
+ // Replace globs with equivalent patterns to reduce parsing time.
+ REPLACEMENTS: {
+ '***': '*',
+ '**/**': '**',
+ '**/**/**': '**'
+ },
- consume(value + advance());
+ // Digits
+ CHAR_0: 48, /* 0 */
+ CHAR_9: 57, /* 9 */
- push({ type: 'slash', value: '/', output: '' });
- continue;
- }
+ // Alphabet chars.
+ CHAR_UPPERCASE_A: 65, /* A */
+ CHAR_LOWERCASE_A: 97, /* a */
+ CHAR_UPPERCASE_Z: 90, /* Z */
+ CHAR_LOWERCASE_Z: 122, /* z */
- if (prior.type === 'bos' && rest[0] === '/') {
- prev.type = 'globstar';
- prev.value += value;
- prev.output = `(?:^|${SLASH_LITERAL}|${globstar(opts)}${SLASH_LITERAL})`;
- state.output = prev.output;
- state.globstar = true;
- consume(value + advance());
- push({ type: 'slash', value: '/', output: '' });
- continue;
- }
+ CHAR_LEFT_PARENTHESES: 40, /* ( */
+ CHAR_RIGHT_PARENTHESES: 41, /* ) */
- // remove single star from output
- state.output = state.output.slice(0, -prev.output.length);
+ CHAR_ASTERISK: 42, /* * */
- // reset previous token to globstar
- prev.type = 'globstar';
- prev.output = globstar(opts);
- prev.value += value;
+ // Non-alphabetic chars.
+ CHAR_AMPERSAND: 38, /* & */
+ CHAR_AT: 64, /* @ */
+ CHAR_BACKWARD_SLASH: 92, /* \ */
+ CHAR_CARRIAGE_RETURN: 13, /* \r */
+ CHAR_CIRCUMFLEX_ACCENT: 94, /* ^ */
+ CHAR_COLON: 58, /* : */
+ CHAR_COMMA: 44, /* , */
+ CHAR_DOT: 46, /* . */
+ CHAR_DOUBLE_QUOTE: 34, /* " */
+ CHAR_EQUAL: 61, /* = */
+ CHAR_EXCLAMATION_MARK: 33, /* ! */
+ CHAR_FORM_FEED: 12, /* \f */
+ CHAR_FORWARD_SLASH: 47, /* / */
+ CHAR_GRAVE_ACCENT: 96, /* ` */
+ CHAR_HASH: 35, /* # */
+ CHAR_HYPHEN_MINUS: 45, /* - */
+ CHAR_LEFT_ANGLE_BRACKET: 60, /* < */
+ CHAR_LEFT_CURLY_BRACE: 123, /* { */
+ CHAR_LEFT_SQUARE_BRACKET: 91, /* [ */
+ CHAR_LINE_FEED: 10, /* \n */
+ CHAR_NO_BREAK_SPACE: 160, /* \u00A0 */
+ CHAR_PERCENT: 37, /* % */
+ CHAR_PLUS: 43, /* + */
+ CHAR_QUESTION_MARK: 63, /* ? */
+ CHAR_RIGHT_ANGLE_BRACKET: 62, /* > */
+ CHAR_RIGHT_CURLY_BRACE: 125, /* } */
+ CHAR_RIGHT_SQUARE_BRACKET: 93, /* ] */
+ CHAR_SEMICOLON: 59, /* ; */
+ CHAR_SINGLE_QUOTE: 39, /* ' */
+ CHAR_SPACE: 32, /* */
+ CHAR_TAB: 9, /* \t */
+ CHAR_UNDERSCORE: 95, /* _ */
+ CHAR_VERTICAL_LINE: 124, /* | */
+ CHAR_ZERO_WIDTH_NOBREAK_SPACE: 65279, /* \uFEFF */
- // reset output with globstar
- state.output += prev.output;
- state.globstar = true;
- consume(value);
- continue;
- }
+ /**
+ * Create EXTGLOB_CHARS
+ */
- const token = { type: 'star', value, output: star };
+ extglobChars(chars) {
+ return {
+ '!': { type: 'negate', open: '(?:(?!(?:', close: `))${chars.STAR})` },
+ '?': { type: 'qmark', open: '(?:', close: ')?' },
+ '+': { type: 'plus', open: '(?:', close: ')+' },
+ '*': { type: 'star', open: '(?:', close: ')*' },
+ '@': { type: 'at', open: '(?:', close: ')' }
+ };
+ },
- if (opts.bash === true) {
- token.output = '.*?';
- if (prev.type === 'bos' || prev.type === 'slash') {
- token.output = nodot + token.output;
- }
- push(token);
- continue;
- }
+ /**
+ * Create GLOB_CHARS
+ */
- if (prev && (prev.type === 'bracket' || prev.type === 'paren') && opts.regex === true) {
- token.output = value;
- push(token);
- continue;
- }
+ globChars(win32) {
+ return win32 === true ? WINDOWS_CHARS : POSIX_CHARS;
+ }
+};
- if (state.index === state.start || prev.type === 'slash' || prev.type === 'dot') {
- if (prev.type === 'dot') {
- state.output += NO_DOT_SLASH;
- prev.output += NO_DOT_SLASH;
- } else if (opts.dot === true) {
- state.output += NO_DOTS_SLASH;
- prev.output += NO_DOTS_SLASH;
+/***/ }),
- } else {
- state.output += nodot;
- prev.output += nodot;
- }
+/***/ 2139:
+/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
- if (peek() !== '*') {
- state.output += ONE_CHAR;
- prev.output += ONE_CHAR;
- }
- }
+"use strict";
- push(token);
- }
- while (state.brackets > 0) {
- if (opts.strictBrackets === true) throw new SyntaxError(syntaxError('closing', ']'));
- state.output = utils.escapeLast(state.output, '[');
- decrement('brackets');
- }
+const constants = __nccwpck_require__(6099);
+const utils = __nccwpck_require__(479);
- while (state.parens > 0) {
- if (opts.strictBrackets === true) throw new SyntaxError(syntaxError('closing', ')'));
- state.output = utils.escapeLast(state.output, '(');
- decrement('parens');
- }
+/**
+ * Constants
+ */
- while (state.braces > 0) {
- if (opts.strictBrackets === true) throw new SyntaxError(syntaxError('closing', '}'));
- state.output = utils.escapeLast(state.output, '{');
- decrement('braces');
- }
+const {
+ MAX_LENGTH,
+ POSIX_REGEX_SOURCE,
+ REGEX_NON_SPECIAL_CHARS,
+ REGEX_SPECIAL_CHARS_BACKREF,
+ REPLACEMENTS
+} = constants;
- if (opts.strictSlashes !== true && (prev.type === 'star' || prev.type === 'bracket')) {
- push({ type: 'maybe_slash', value: '', output: `${SLASH_LITERAL}?` });
- }
+/**
+ * Helpers
+ */
- // rebuild the output if we had to backtrack at any point
- if (state.backtrack === true) {
- state.output = '';
+const expandRange = (args, options) => {
+ if (typeof options.expandRange === 'function') {
+ return options.expandRange(...args, options);
+ }
- for (const token of state.tokens) {
- state.output += token.output != null ? token.output : token.value;
+ args.sort();
+ const value = `[${args.join('-')}]`;
- if (token.suffix) {
- state.output += token.suffix;
- }
- }
+ try {
+ /* eslint-disable-next-line no-new */
+ new RegExp(value);
+ } catch (ex) {
+ return args.map(v => utils.escapeRegex(v)).join('..');
}
- return state;
+ return value;
};
/**
- * Fast paths for creating regular expressions for common glob patterns.
- * This can significantly speed up processing and has very little downside
- * impact when none of the fast paths match.
+ * Create the message for a syntax error
*/
-parse.fastpaths = (input, options) => {
- const opts = { ...options };
- const max = typeof opts.maxLength === 'number' ? Math.min(MAX_LENGTH, opts.maxLength) : MAX_LENGTH;
- const len = input.length;
+const syntaxError = (type, char) => {
+ return `Missing ${type}: "${char}" - use "\\\\${char}" to match literal characters`;
+};
+
+/**
+ * Parse the given input string.
+ * @param {String} input
+ * @param {Object} options
+ * @return {Object}
+ */
+
+const parse = (input, options) => {
+ if (typeof input !== 'string') {
+ throw new TypeError('Expected a string');
+ }
+
+ input = REPLACEMENTS[input] || input;
+
+ const opts = { ...options };
+ const max = typeof opts.maxLength === 'number' ? Math.min(MAX_LENGTH, opts.maxLength) : MAX_LENGTH;
+
+ let len = input.length;
if (len > max) {
throw new SyntaxError(`Input length: ${len}, exceeds maximum allowed length: ${max}`);
}
- input = REPLACEMENTS[input] || input;
- const win32 = utils.isWindows(options);
+ const bos = { type: 'bos', value: '', output: opts.prepend || '' };
+ const tokens = [bos];
+
+ const capture = opts.capture ? '' : '?:';
// create constants based on platform, for windows or posix
+ const PLATFORM_CHARS = constants.globChars(opts.windows);
+ const EXTGLOB_CHARS = constants.extglobChars(PLATFORM_CHARS);
+
const {
DOT_LITERAL,
+ PLUS_LITERAL,
SLASH_LITERAL,
ONE_CHAR,
DOTS_SLASH,
NO_DOT,
- NO_DOTS,
+ NO_DOT_SLASH,
NO_DOTS_SLASH,
+ QMARK,
+ QMARK_NO_DOT,
STAR,
START_ANCHOR
- } = constants.globChars(win32);
+ } = PLATFORM_CHARS;
- const nodot = opts.dot ? NO_DOTS : NO_DOT;
- const slashDot = opts.dot ? NO_DOTS_SLASH : NO_DOT;
- const capture = opts.capture ? '' : '?:';
- const state = { negated: false, prefix: '' };
- let star = opts.bash === true ? '.*?' : STAR;
+ const globstar = opts => {
+ return `(${capture}(?:(?!${START_ANCHOR}${opts.dot ? DOTS_SLASH : DOT_LITERAL}).)*?)`;
+ };
+
+ const nodot = opts.dot ? '' : NO_DOT;
+ const qmarkNoDot = opts.dot ? QMARK : QMARK_NO_DOT;
+ let star = opts.bash === true ? globstar(opts) : STAR;
if (opts.capture) {
star = `(${star})`;
}
- const globstar = opts => {
- if (opts.noglobstar === true) return star;
- return `(${capture}(?:(?!${START_ANCHOR}${opts.dot ? DOTS_SLASH : DOT_LITERAL}).)*?)`;
+ // minimatch options support
+ if (typeof opts.noext === 'boolean') {
+ opts.noextglob = opts.noext;
+ }
+
+ const state = {
+ input,
+ index: -1,
+ start: 0,
+ dot: opts.dot === true,
+ consumed: '',
+ output: '',
+ prefix: '',
+ backtrack: false,
+ negated: false,
+ brackets: 0,
+ braces: 0,
+ parens: 0,
+ quotes: 0,
+ globstar: false,
+ tokens
};
- const create = str => {
- switch (str) {
- case '*':
- return `${nodot}${ONE_CHAR}${star}`;
+ input = utils.removePrefix(input, state);
+ len = input.length;
- case '.*':
- return `${DOT_LITERAL}${ONE_CHAR}${star}`;
+ const extglobs = [];
+ const braces = [];
+ const stack = [];
+ let prev = bos;
+ let value;
- case '*.*':
- return `${nodot}${star}${DOT_LITERAL}${ONE_CHAR}${star}`;
+ /**
+ * Tokenizing helpers
+ */
- case '*/*':
- return `${nodot}${star}${SLASH_LITERAL}${ONE_CHAR}${slashDot}${star}`;
+ const eos = () => state.index === len - 1;
+ const peek = state.peek = (n = 1) => input[state.index + n];
+ const advance = state.advance = () => input[++state.index] || '';
+ const remaining = () => input.slice(state.index + 1);
+ const consume = (value = '', num = 0) => {
+ state.consumed += value;
+ state.index += num;
+ };
- case '**':
- return nodot + globstar(opts);
+ const append = token => {
+ state.output += token.output != null ? token.output : token.value;
+ consume(token.value);
+ };
- case '**/*':
- return `(?:${nodot}${globstar(opts)}${SLASH_LITERAL})?${slashDot}${ONE_CHAR}${star}`;
+ const negate = () => {
+ let count = 1;
- case '**/*.*':
- return `(?:${nodot}${globstar(opts)}${SLASH_LITERAL})?${slashDot}${star}${DOT_LITERAL}${ONE_CHAR}${star}`;
+ while (peek() === '!' && (peek(2) !== '(' || peek(3) === '?')) {
+ advance();
+ state.start++;
+ count++;
+ }
- case '**/.*':
- return `(?:${nodot}${globstar(opts)}${SLASH_LITERAL})?${DOT_LITERAL}${ONE_CHAR}${star}`;
+ if (count % 2 === 0) {
+ return false;
+ }
- default: {
- const match = /^(.*?)\.(\w+)$/.exec(str);
- if (!match) return;
+ state.negated = true;
+ state.start++;
+ return true;
+ };
- const source = create(match[1]);
- if (!source) return;
+ const increment = type => {
+ state[type]++;
+ stack.push(type);
+ };
- return source + DOT_LITERAL + match[2];
+ const decrement = type => {
+ state[type]--;
+ stack.pop();
+ };
+
+ /**
+ * Push tokens onto the tokens array. This helper speeds up
+ * tokenizing by 1) helping us avoid backtracking as much as possible,
+ * and 2) helping us avoid creating extra tokens when consecutive
+ * characters are plain text. This improves performance and simplifies
+ * lookbehinds.
+ */
+
+ const push = tok => {
+ if (prev.type === 'globstar') {
+ const isBrace = state.braces > 0 && (tok.type === 'comma' || tok.type === 'brace');
+ const isExtglob = tok.extglob === true || (extglobs.length && (tok.type === 'pipe' || tok.type === 'paren'));
+
+ if (tok.type !== 'slash' && tok.type !== 'paren' && !isBrace && !isExtglob) {
+ state.output = state.output.slice(0, -prev.output.length);
+ prev.type = 'star';
+ prev.value = '*';
+ prev.output = star;
+ state.output += prev.output;
}
}
- };
- const output = utils.removePrefix(input, state);
- let source = create(output);
+ if (extglobs.length && tok.type !== 'paren') {
+ extglobs[extglobs.length - 1].inner += tok.value;
+ }
- if (source && opts.strictSlashes !== true) {
- source += `${SLASH_LITERAL}?`;
- }
+ if (tok.value || tok.output) append(tok);
+ if (prev && prev.type === 'text' && tok.type === 'text') {
+ prev.value += tok.value;
+ prev.output = (prev.output || '') + tok.value;
+ return;
+ }
- return source;
-};
+ tok.prev = prev;
+ tokens.push(tok);
+ prev = tok;
+ };
-module.exports = parse;
+ const extglobOpen = (type, value) => {
+ const token = { ...EXTGLOB_CHARS[value], conditions: 1, inner: '' };
+ token.prev = prev;
+ token.parens = state.parens;
+ token.output = state.output;
+ const output = (opts.capture ? '(' : '') + token.open;
-/***/ }),
+ increment('parens');
+ push({ type, value, output: state.output ? '' : ONE_CHAR });
+ push({ type: 'paren', extglob: true, value: advance(), output });
+ extglobs.push(token);
+ };
-/***/ 3322:
-/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
+ const extglobClose = token => {
+ let output = token.close + (opts.capture ? ')' : '');
+ let rest;
-"use strict";
+ if (token.type === 'negate') {
+ let extglobStar = star;
+ if (token.inner && token.inner.length > 1 && token.inner.includes('/')) {
+ extglobStar = globstar(opts);
+ }
-const path = __nccwpck_require__(1017);
-const scan = __nccwpck_require__(2429);
-const parse = __nccwpck_require__(2139);
-const utils = __nccwpck_require__(479);
-const constants = __nccwpck_require__(6099);
-const isObject = val => val && typeof val === 'object' && !Array.isArray(val);
+ if (extglobStar !== star || eos() || /^\)+$/.test(remaining())) {
+ output = token.close = `)$))${extglobStar}`;
+ }
-/**
- * Creates a matcher function from one or more glob patterns. The
- * returned function takes a string to match as its first argument,
- * and returns true if the string is a match. The returned matcher
- * function also takes a boolean as the second argument that, when true,
- * returns an object with additional information.
- *
- * ```js
- * const picomatch = require('picomatch');
- * // picomatch(glob[, options]);
- *
- * const isMatch = picomatch('*.!(*a)');
- * console.log(isMatch('a.a')); //=> false
- * console.log(isMatch('a.b')); //=> true
- * ```
- * @name picomatch
- * @param {String|Array} `globs` One or more glob patterns.
- * @param {Object=} `options`
- * @return {Function=} Returns a matcher function.
- * @api public
- */
+ if (token.inner.includes('*') && (rest = remaining()) && /^\.[^\\/.]+$/.test(rest)) {
+ // Any non-magical string (`.ts`) or even nested expression (`.{ts,tsx}`) can follow after the closing parenthesis.
+ // In this case, we need to parse the string and use it in the output of the original pattern.
+ // Suitable patterns: `/!(*.d).ts`, `/!(*.d).{ts,tsx}`, `**/!(*-dbg).@(js)`.
+ //
+ // Disabling the `fastpaths` option due to a problem with parsing strings as `.ts` in the pattern like `**/!(*.d).ts`.
+ const expression = parse(rest, { ...options, fastpaths: false }).output;
-const picomatch = (glob, options, returnState = false) => {
- if (Array.isArray(glob)) {
- const fns = glob.map(input => picomatch(input, options, returnState));
- const arrayMatcher = str => {
- for (const isMatch of fns) {
- const state = isMatch(str);
- if (state) return state;
+ output = token.close = `)${expression})${extglobStar})`;
}
- return false;
- };
- return arrayMatcher;
- }
- const isState = isObject(glob) && glob.tokens && glob.input;
+ if (token.prev.type === 'bos') {
+ state.negatedExtglob = true;
+ }
+ }
- if (glob === '' || (typeof glob !== 'string' && !isState)) {
- throw new TypeError('Expected pattern to be a non-empty string');
- }
+ push({ type: 'paren', extglob: true, value, output });
+ decrement('parens');
+ };
- const opts = options || {};
- const posix = utils.isWindows(options);
- const regex = isState
- ? picomatch.compileRe(glob, options)
- : picomatch.makeRe(glob, options, false, true);
+ /**
+ * Fast paths
+ */
- const state = regex.state;
- delete regex.state;
+ if (opts.fastpaths !== false && !/(^[*!]|[/()[\]{}"])/.test(input)) {
+ let backslashes = false;
- let isIgnored = () => false;
- if (opts.ignore) {
- const ignoreOpts = { ...options, ignore: null, onMatch: null, onResult: null };
- isIgnored = picomatch(opts.ignore, ignoreOpts, returnState);
- }
+ let output = input.replace(REGEX_SPECIAL_CHARS_BACKREF, (m, esc, chars, first, rest, index) => {
+ if (first === '\\') {
+ backslashes = true;
+ return m;
+ }
- const matcher = (input, returnObject = false) => {
- const { isMatch, match, output } = picomatch.test(input, regex, options, { glob, posix });
- const result = { glob, state, regex, posix, input, output, match, isMatch };
+ if (first === '?') {
+ if (esc) {
+ return esc + first + (rest ? QMARK.repeat(rest.length) : '');
+ }
+ if (index === 0) {
+ return qmarkNoDot + (rest ? QMARK.repeat(rest.length) : '');
+ }
+ return QMARK.repeat(chars.length);
+ }
- if (typeof opts.onResult === 'function') {
- opts.onResult(result);
- }
+ if (first === '.') {
+ return DOT_LITERAL.repeat(chars.length);
+ }
- if (isMatch === false) {
- result.isMatch = false;
- return returnObject ? result : false;
- }
+ if (first === '*') {
+ if (esc) {
+ return esc + first + (rest ? star : '');
+ }
+ return star;
+ }
+ return esc ? m : `\\${m}`;
+ });
- if (isIgnored(input)) {
- if (typeof opts.onIgnore === 'function') {
- opts.onIgnore(result);
+ if (backslashes === true) {
+ if (opts.unescape === true) {
+ output = output.replace(/\\/g, '');
+ } else {
+ output = output.replace(/\\+/g, m => {
+ return m.length % 2 === 0 ? '\\\\' : (m ? '\\' : '');
+ });
}
- result.isMatch = false;
- return returnObject ? result : false;
}
- if (typeof opts.onMatch === 'function') {
- opts.onMatch(result);
+ if (output === input && opts.contains === true) {
+ state.output = input;
+ return state;
}
- return returnObject ? result : true;
- };
- if (returnState) {
- matcher.state = state;
+ state.output = utils.wrapOutput(output, state, options);
+ return state;
}
- return matcher;
-};
+ /**
+ * Tokenize input until we reach end-of-string
+ */
-/**
- * Test `input` with the given `regex`. This is used by the main
- * `picomatch()` function to test the input string.
- *
- * ```js
- * const picomatch = require('picomatch');
- * // picomatch.test(input, regex[, options]);
- *
- * console.log(picomatch.test('foo/bar', /^(?:([^/]*?)\/([^/]*?))$/));
- * // { isMatch: true, match: [ 'foo/', 'foo', 'bar' ], output: 'foo/bar' }
- * ```
- * @param {String} `input` String to test.
- * @param {RegExp} `regex`
- * @return {Object} Returns an object with matching info.
- * @api public
- */
+ while (!eos()) {
+ value = advance();
-picomatch.test = (input, regex, options, { glob, posix } = {}) => {
- if (typeof input !== 'string') {
- throw new TypeError('Expected input to be a string');
- }
+ if (value === '\u0000') {
+ continue;
+ }
- if (input === '') {
- return { isMatch: false, output: '' };
- }
+ /**
+ * Escaped characters
+ */
- const opts = options || {};
- const format = opts.format || (posix ? utils.toPosixSlashes : null);
- let match = input === glob;
- let output = (match && format) ? format(input) : input;
+ if (value === '\\') {
+ const next = peek();
- if (match === false) {
- output = format ? format(input) : input;
- match = output === glob;
- }
+ if (next === '/' && opts.bash !== true) {
+ continue;
+ }
- if (match === false || opts.capture === true) {
- if (opts.matchBase === true || opts.basename === true) {
- match = picomatch.matchBase(input, regex, options, posix);
- } else {
- match = regex.exec(output);
- }
- }
+ if (next === '.' || next === ';') {
+ continue;
+ }
- return { isMatch: Boolean(match), match, output };
-};
+ if (!next) {
+ value += '\\';
+ push({ type: 'text', value });
+ continue;
+ }
-/**
- * Match the basename of a filepath.
- *
- * ```js
- * const picomatch = require('picomatch');
- * // picomatch.matchBase(input, glob[, options]);
- * console.log(picomatch.matchBase('foo/bar.js', '*.js'); // true
- * ```
- * @param {String} `input` String to test.
- * @param {RegExp|String} `glob` Glob pattern or regex created by [.makeRe](#makeRe).
- * @return {Boolean}
- * @api public
- */
+ // collapse slashes to reduce potential for exploits
+ const match = /^\\+/.exec(remaining());
+ let slashes = 0;
-picomatch.matchBase = (input, glob, options, posix = utils.isWindows(options)) => {
- const regex = glob instanceof RegExp ? glob : picomatch.makeRe(glob, options);
- return regex.test(path.basename(input));
-};
+ if (match && match[0].length > 2) {
+ slashes = match[0].length;
+ state.index += slashes;
+ if (slashes % 2 !== 0) {
+ value += '\\';
+ }
+ }
-/**
- * Returns true if **any** of the given glob `patterns` match the specified `string`.
- *
- * ```js
- * const picomatch = require('picomatch');
- * // picomatch.isMatch(string, patterns[, options]);
- *
- * console.log(picomatch.isMatch('a.a', ['b.*', '*.a'])); //=> true
- * console.log(picomatch.isMatch('a.a', 'b.*')); //=> false
- * ```
- * @param {String|Array} str The string to test.
- * @param {String|Array} patterns One or more glob patterns to use for matching.
- * @param {Object} [options] See available [options](#options).
- * @return {Boolean} Returns true if any patterns match `str`
- * @api public
- */
+ if (opts.unescape === true) {
+ value = advance();
+ } else {
+ value += advance();
+ }
-picomatch.isMatch = (str, patterns, options) => picomatch(patterns, options)(str);
+ if (state.brackets === 0) {
+ push({ type: 'text', value });
+ continue;
+ }
+ }
-/**
- * Parse a glob pattern to create the source string for a regular
- * expression.
- *
- * ```js
- * const picomatch = require('picomatch');
- * const result = picomatch.parse(pattern[, options]);
- * ```
- * @param {String} `pattern`
- * @param {Object} `options`
- * @return {Object} Returns an object with useful properties and output to be used as a regex source string.
- * @api public
- */
+ /**
+ * If we're inside a regex character class, continue
+ * until we reach the closing bracket.
+ */
-picomatch.parse = (pattern, options) => {
- if (Array.isArray(pattern)) return pattern.map(p => picomatch.parse(p, options));
- return parse(pattern, { ...options, fastpaths: false });
-};
+ if (state.brackets > 0 && (value !== ']' || prev.value === '[' || prev.value === '[^')) {
+ if (opts.posix !== false && value === ':') {
+ const inner = prev.value.slice(1);
+ if (inner.includes('[')) {
+ prev.posix = true;
-/**
- * Scan a glob pattern to separate the pattern into segments.
- *
- * ```js
- * const picomatch = require('picomatch');
- * // picomatch.scan(input[, options]);
- *
- * const result = picomatch.scan('!./foo/*.js');
- * console.log(result);
- * { prefix: '!./',
- * input: '!./foo/*.js',
- * start: 3,
- * base: 'foo',
- * glob: '*.js',
- * isBrace: false,
- * isBracket: false,
- * isGlob: true,
- * isExtglob: false,
- * isGlobstar: false,
- * negated: true }
- * ```
- * @param {String} `input` Glob pattern to scan.
- * @param {Object} `options`
- * @return {Object} Returns an object with
- * @api public
- */
-
-picomatch.scan = (input, options) => scan(input, options);
-
-/**
- * Compile a regular expression from the `state` object returned by the
- * [parse()](#parse) method.
- *
- * @param {Object} `state`
- * @param {Object} `options`
- * @param {Boolean} `returnOutput` Intended for implementors, this argument allows you to return the raw output from the parser.
- * @param {Boolean} `returnState` Adds the state to a `state` property on the returned regex. Useful for implementors and debugging.
- * @return {RegExp}
- * @api public
- */
-
-picomatch.compileRe = (state, options, returnOutput = false, returnState = false) => {
- if (returnOutput === true) {
- return state.output;
- }
+ if (inner.includes(':')) {
+ const idx = prev.value.lastIndexOf('[');
+ const pre = prev.value.slice(0, idx);
+ const rest = prev.value.slice(idx + 2);
+ const posix = POSIX_REGEX_SOURCE[rest];
+ if (posix) {
+ prev.value = pre + posix;
+ state.backtrack = true;
+ advance();
- const opts = options || {};
- const prepend = opts.contains ? '' : '^';
- const append = opts.contains ? '' : '$';
+ if (!bos.output && tokens.indexOf(prev) === 1) {
+ bos.output = ONE_CHAR;
+ }
+ continue;
+ }
+ }
+ }
+ }
- let source = `${prepend}(?:${state.output})${append}`;
- if (state && state.negated === true) {
- source = `^(?!${source}).*$`;
- }
+ if ((value === '[' && peek() !== ':') || (value === '-' && peek() === ']')) {
+ value = `\\${value}`;
+ }
- const regex = picomatch.toRegex(source, options);
- if (returnState === true) {
- regex.state = state;
- }
+ if (value === ']' && (prev.value === '[' || prev.value === '[^')) {
+ value = `\\${value}`;
+ }
- return regex;
-};
+ if (opts.posix === true && value === '!' && prev.value === '[') {
+ value = '^';
+ }
-/**
- * Create a regular expression from a parsed glob pattern.
- *
- * ```js
- * const picomatch = require('picomatch');
- * const state = picomatch.parse('*.js');
- * // picomatch.compileRe(state[, options]);
- *
- * console.log(picomatch.compileRe(state));
- * //=> /^(?:(?!\.)(?=.)[^/]*?\.js)$/
- * ```
- * @param {String} `state` The object returned from the `.parse` method.
- * @param {Object} `options`
- * @param {Boolean} `returnOutput` Implementors may use this argument to return the compiled output, instead of a regular expression. This is not exposed on the options to prevent end-users from mutating the result.
- * @param {Boolean} `returnState` Implementors may use this argument to return the state from the parsed glob with the returned regular expression.
- * @return {RegExp} Returns a regex created from the given pattern.
- * @api public
- */
+ prev.value += value;
+ append({ value });
+ continue;
+ }
-picomatch.makeRe = (input, options = {}, returnOutput = false, returnState = false) => {
- if (!input || typeof input !== 'string') {
- throw new TypeError('Expected a non-empty string');
- }
+ /**
+ * If we're inside a quoted string, continue
+ * until we reach the closing double quote.
+ */
- let parsed = { negated: false, fastpaths: true };
+ if (state.quotes === 1 && value !== '"') {
+ value = utils.escapeRegex(value);
+ prev.value += value;
+ append({ value });
+ continue;
+ }
- if (options.fastpaths !== false && (input[0] === '.' || input[0] === '*')) {
- parsed.output = parse.fastpaths(input, options);
- }
+ /**
+ * Double quotes
+ */
- if (!parsed.output) {
- parsed = parse(input, options);
- }
+ if (value === '"') {
+ state.quotes = state.quotes === 1 ? 0 : 1;
+ if (opts.keepQuotes === true) {
+ push({ type: 'text', value });
+ }
+ continue;
+ }
- return picomatch.compileRe(parsed, options, returnOutput, returnState);
-};
+ /**
+ * Parentheses
+ */
-/**
- * Create a regular expression from the given regex source string.
- *
- * ```js
- * const picomatch = require('picomatch');
- * // picomatch.toRegex(source[, options]);
- *
- * const { output } = picomatch.parse('*.js');
- * console.log(picomatch.toRegex(output));
- * //=> /^(?:(?!\.)(?=.)[^/]*?\.js)$/
- * ```
- * @param {String} `source` Regular expression source string.
- * @param {Object} `options`
- * @return {RegExp}
- * @api public
- */
+ if (value === '(') {
+ increment('parens');
+ push({ type: 'paren', value });
+ continue;
+ }
-picomatch.toRegex = (source, options) => {
- try {
- const opts = options || {};
- return new RegExp(source, opts.flags || (opts.nocase ? 'i' : ''));
- } catch (err) {
- if (options && options.debug === true) throw err;
- return /$^/;
- }
-};
+ if (value === ')') {
+ if (state.parens === 0 && opts.strictBrackets === true) {
+ throw new SyntaxError(syntaxError('opening', '('));
+ }
-/**
- * Picomatch constants.
- * @return {Object}
- */
+ const extglob = extglobs[extglobs.length - 1];
+ if (extglob && state.parens === extglob.parens + 1) {
+ extglobClose(extglobs.pop());
+ continue;
+ }
-picomatch.constants = constants;
+ push({ type: 'paren', value, output: state.parens ? ')' : '\\)' });
+ decrement('parens');
+ continue;
+ }
-/**
- * Expose "picomatch"
- */
+ /**
+ * Square brackets
+ */
-module.exports = picomatch;
+ if (value === '[') {
+ if (opts.nobracket === true || !remaining().includes(']')) {
+ if (opts.nobracket !== true && opts.strictBrackets === true) {
+ throw new SyntaxError(syntaxError('closing', ']'));
+ }
+ value = `\\${value}`;
+ } else {
+ increment('brackets');
+ }
-/***/ }),
+ push({ type: 'bracket', value });
+ continue;
+ }
-/***/ 2429:
-/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
+ if (value === ']') {
+ if (opts.nobracket === true || (prev && prev.type === 'bracket' && prev.value.length === 1)) {
+ push({ type: 'text', value, output: `\\${value}` });
+ continue;
+ }
-"use strict";
+ if (state.brackets === 0) {
+ if (opts.strictBrackets === true) {
+ throw new SyntaxError(syntaxError('opening', '['));
+ }
+ push({ type: 'text', value, output: `\\${value}` });
+ continue;
+ }
-const utils = __nccwpck_require__(479);
-const {
- CHAR_ASTERISK, /* * */
- CHAR_AT, /* @ */
- CHAR_BACKWARD_SLASH, /* \ */
- CHAR_COMMA, /* , */
- CHAR_DOT, /* . */
- CHAR_EXCLAMATION_MARK, /* ! */
- CHAR_FORWARD_SLASH, /* / */
- CHAR_LEFT_CURLY_BRACE, /* { */
- CHAR_LEFT_PARENTHESES, /* ( */
- CHAR_LEFT_SQUARE_BRACKET, /* [ */
- CHAR_PLUS, /* + */
- CHAR_QUESTION_MARK, /* ? */
- CHAR_RIGHT_CURLY_BRACE, /* } */
- CHAR_RIGHT_PARENTHESES, /* ) */
- CHAR_RIGHT_SQUARE_BRACKET /* ] */
-} = __nccwpck_require__(6099);
+ decrement('brackets');
-const isPathSeparator = code => {
- return code === CHAR_FORWARD_SLASH || code === CHAR_BACKWARD_SLASH;
-};
+ const prevValue = prev.value.slice(1);
+ if (prev.posix !== true && prevValue[0] === '^' && !prevValue.includes('/')) {
+ value = `/${value}`;
+ }
-const depth = token => {
- if (token.isPrefix !== true) {
- token.depth = token.isGlobstar ? Infinity : 1;
- }
-};
+ prev.value += value;
+ append({ value });
-/**
- * Quickly scans a glob pattern and returns an object with a handful of
- * useful properties, like `isGlob`, `path` (the leading non-glob, if it exists),
- * `glob` (the actual pattern), `negated` (true if the path starts with `!` but not
- * with `!(`) and `negatedExtglob` (true if the path starts with `!(`).
- *
- * ```js
- * const pm = require('picomatch');
- * console.log(pm.scan('foo/bar/*.js'));
- * { isGlob: true, input: 'foo/bar/*.js', base: 'foo/bar', glob: '*.js' }
- * ```
- * @param {String} `str`
- * @param {Object} `options`
- * @return {Object} Returns an object with tokens and regex source string.
- * @api public
- */
+ // when literal brackets are explicitly disabled
+ // assume we should match with a regex character class
+ if (opts.literalBrackets === false || utils.hasRegexChars(prevValue)) {
+ continue;
+ }
-const scan = (input, options) => {
- const opts = options || {};
+ const escaped = utils.escapeRegex(prev.value);
+ state.output = state.output.slice(0, -prev.value.length);
- const length = input.length - 1;
- const scanToEnd = opts.parts === true || opts.scanToEnd === true;
- const slashes = [];
- const tokens = [];
- const parts = [];
+ // when literal brackets are explicitly enabled
+ // assume we should escape the brackets to match literal characters
+ if (opts.literalBrackets === true) {
+ state.output += escaped;
+ prev.value = escaped;
+ continue;
+ }
- let str = input;
- let index = -1;
- let start = 0;
- let lastIndex = 0;
- let isBrace = false;
- let isBracket = false;
- let isGlob = false;
- let isExtglob = false;
- let isGlobstar = false;
- let braceEscaped = false;
- let backslashes = false;
- let negated = false;
- let negatedExtglob = false;
- let finished = false;
- let braces = 0;
- let prev;
- let code;
- let token = { value: '', depth: 0, isGlob: false };
+ // when the user specifies nothing, try to match both
+ prev.value = `(${capture}${escaped}|${prev.value})`;
+ state.output += prev.value;
+ continue;
+ }
- const eos = () => index >= length;
- const peek = () => str.charCodeAt(index + 1);
- const advance = () => {
- prev = code;
- return str.charCodeAt(++index);
- };
+ /**
+ * Braces
+ */
- while (index < length) {
- code = advance();
- let next;
+ if (value === '{' && opts.nobrace !== true) {
+ increment('braces');
- if (code === CHAR_BACKWARD_SLASH) {
- backslashes = token.backslashes = true;
- code = advance();
+ const open = {
+ type: 'brace',
+ value,
+ output: '(',
+ outputIndex: state.output.length,
+ tokensIndex: state.tokens.length
+ };
- if (code === CHAR_LEFT_CURLY_BRACE) {
- braceEscaped = true;
- }
+ braces.push(open);
+ push(open);
continue;
}
- if (braceEscaped === true || code === CHAR_LEFT_CURLY_BRACE) {
- braces++;
+ if (value === '}') {
+ const brace = braces[braces.length - 1];
- while (eos() !== true && (code = advance())) {
- if (code === CHAR_BACKWARD_SLASH) {
- backslashes = token.backslashes = true;
- advance();
- continue;
- }
+ if (opts.nobrace === true || !brace) {
+ push({ type: 'text', value, output: value });
+ continue;
+ }
- if (code === CHAR_LEFT_CURLY_BRACE) {
- braces++;
- continue;
- }
+ let output = ')';
- if (braceEscaped !== true && code === CHAR_DOT && (code = advance()) === CHAR_DOT) {
- isBrace = token.isBrace = true;
- isGlob = token.isGlob = true;
- finished = true;
+ if (brace.dots === true) {
+ const arr = tokens.slice();
+ const range = [];
- if (scanToEnd === true) {
- continue;
+ for (let i = arr.length - 1; i >= 0; i--) {
+ tokens.pop();
+ if (arr[i].type === 'brace') {
+ break;
+ }
+ if (arr[i].type !== 'dots') {
+ range.unshift(arr[i].value);
}
-
- break;
}
- if (braceEscaped !== true && code === CHAR_COMMA) {
- isBrace = token.isBrace = true;
- isGlob = token.isGlob = true;
- finished = true;
-
- if (scanToEnd === true) {
- continue;
- }
+ output = expandRange(range, opts);
+ state.backtrack = true;
+ }
- break;
+ if (brace.comma !== true && brace.dots !== true) {
+ const out = state.output.slice(0, brace.outputIndex);
+ const toks = state.tokens.slice(brace.tokensIndex);
+ brace.value = brace.output = '\\{';
+ value = output = '\\}';
+ state.output = out;
+ for (const t of toks) {
+ state.output += (t.output || t.value);
}
+ }
- if (code === CHAR_RIGHT_CURLY_BRACE) {
- braces--;
+ push({ type: 'brace', value, output });
+ decrement('braces');
+ braces.pop();
+ continue;
+ }
- if (braces === 0) {
- braceEscaped = false;
- isBrace = token.isBrace = true;
- finished = true;
- break;
- }
- }
+ /**
+ * Pipes
+ */
+
+ if (value === '|') {
+ if (extglobs.length > 0) {
+ extglobs[extglobs.length - 1].conditions++;
}
+ push({ type: 'text', value });
+ continue;
+ }
- if (scanToEnd === true) {
- continue;
+ /**
+ * Commas
+ */
+
+ if (value === ',') {
+ let output = value;
+
+ const brace = braces[braces.length - 1];
+ if (brace && stack[stack.length - 1] === 'braces') {
+ brace.comma = true;
+ output = '|';
}
- break;
+ push({ type: 'comma', value, output });
+ continue;
}
- if (code === CHAR_FORWARD_SLASH) {
- slashes.push(index);
- tokens.push(token);
- token = { value: '', depth: 0, isGlob: false };
+ /**
+ * Slashes
+ */
- if (finished === true) continue;
- if (prev === CHAR_DOT && index === (start + 1)) {
- start += 2;
+ if (value === '/') {
+ // if the beginning of the glob is "./", advance the start
+ // to the current index, and don't add the "./" characters
+ // to the state. This greatly simplifies lookbehinds when
+ // checking for BOS characters like "!" and "." (not "./")
+ if (prev.type === 'dot' && state.index === state.start + 1) {
+ state.start = state.index + 1;
+ state.consumed = '';
+ state.output = '';
+ tokens.pop();
+ prev = bos; // reset "prev" to the first token
continue;
}
- lastIndex = index + 1;
+ push({ type: 'slash', value, output: SLASH_LITERAL });
continue;
}
- if (opts.noext !== true) {
- const isExtglobChar = code === CHAR_PLUS
- || code === CHAR_AT
- || code === CHAR_ASTERISK
- || code === CHAR_QUESTION_MARK
- || code === CHAR_EXCLAMATION_MARK;
-
- if (isExtglobChar === true && peek() === CHAR_LEFT_PARENTHESES) {
- isGlob = token.isGlob = true;
- isExtglob = token.isExtglob = true;
- finished = true;
- if (code === CHAR_EXCLAMATION_MARK && index === start) {
- negatedExtglob = true;
- }
-
- if (scanToEnd === true) {
- while (eos() !== true && (code = advance())) {
- if (code === CHAR_BACKWARD_SLASH) {
- backslashes = token.backslashes = true;
- code = advance();
- continue;
- }
+ /**
+ * Dots
+ */
- if (code === CHAR_RIGHT_PARENTHESES) {
- isGlob = token.isGlob = true;
- finished = true;
- break;
- }
- }
- continue;
- }
- break;
+ if (value === '.') {
+ if (state.braces > 0 && prev.type === 'dot') {
+ if (prev.value === '.') prev.output = DOT_LITERAL;
+ const brace = braces[braces.length - 1];
+ prev.type = 'dots';
+ prev.output += value;
+ prev.value += value;
+ brace.dots = true;
+ continue;
}
- }
-
- if (code === CHAR_ASTERISK) {
- if (prev === CHAR_ASTERISK) isGlobstar = token.isGlobstar = true;
- isGlob = token.isGlob = true;
- finished = true;
- if (scanToEnd === true) {
+ if ((state.braces + state.parens) === 0 && prev.type !== 'bos' && prev.type !== 'slash') {
+ push({ type: 'text', value, output: DOT_LITERAL });
continue;
}
- break;
+
+ push({ type: 'dot', value, output: DOT_LITERAL });
+ continue;
}
- if (code === CHAR_QUESTION_MARK) {
- isGlob = token.isGlob = true;
- finished = true;
+ /**
+ * Question marks
+ */
- if (scanToEnd === true) {
+ if (value === '?') {
+ const isGroup = prev && prev.value === '(';
+ if (!isGroup && opts.noextglob !== true && peek() === '(' && peek(2) !== '?') {
+ extglobOpen('qmark', value);
continue;
}
- break;
- }
- if (code === CHAR_LEFT_SQUARE_BRACKET) {
- while (eos() !== true && (next = advance())) {
- if (next === CHAR_BACKWARD_SLASH) {
- backslashes = token.backslashes = true;
- advance();
- continue;
+ if (prev && prev.type === 'paren') {
+ const next = peek();
+ let output = value;
+
+ if (next === '<' && !utils.supportsLookbehinds()) {
+ throw new Error('Node.js v10 or higher is required for regex lookbehinds');
}
- if (next === CHAR_RIGHT_SQUARE_BRACKET) {
- isBracket = token.isBracket = true;
- isGlob = token.isGlob = true;
- finished = true;
- break;
+ if ((prev.value === '(' && !/[!=<:]/.test(next)) || (next === '<' && !/<([!=]|\w+>)/.test(remaining()))) {
+ output = `\\${value}`;
}
- }
- if (scanToEnd === true) {
+ push({ type: 'text', value, output });
continue;
}
- break;
- }
+ if (opts.dot !== true && (prev.type === 'slash' || prev.type === 'bos')) {
+ push({ type: 'qmark', value, output: QMARK_NO_DOT });
+ continue;
+ }
- if (opts.nonegate !== true && code === CHAR_EXCLAMATION_MARK && index === start) {
- negated = token.negated = true;
- start++;
+ push({ type: 'qmark', value, output: QMARK });
continue;
}
- if (opts.noparen !== true && code === CHAR_LEFT_PARENTHESES) {
- isGlob = token.isGlob = true;
-
- if (scanToEnd === true) {
- while (eos() !== true && (code = advance())) {
- if (code === CHAR_LEFT_PARENTHESES) {
- backslashes = token.backslashes = true;
- code = advance();
- continue;
- }
+ /**
+ * Exclamation
+ */
- if (code === CHAR_RIGHT_PARENTHESES) {
- finished = true;
- break;
- }
+ if (value === '!') {
+ if (opts.noextglob !== true && peek() === '(') {
+ if (peek(2) !== '?' || !/[!=<:]/.test(peek(3))) {
+ extglobOpen('negate', value);
+ continue;
}
+ }
+
+ if (opts.nonegate !== true && state.index === 0) {
+ negate();
continue;
}
- break;
}
- if (isGlob === true) {
- finished = true;
+ /**
+ * Plus
+ */
- if (scanToEnd === true) {
+ if (value === '+') {
+ if (opts.noextglob !== true && peek() === '(' && peek(2) !== '?') {
+ extglobOpen('plus', value);
continue;
}
- break;
- }
- }
+ if ((prev && prev.value === '(') || opts.regex === false) {
+ push({ type: 'plus', value, output: PLUS_LITERAL });
+ continue;
+ }
- if (opts.noext === true) {
- isExtglob = false;
- isGlob = false;
- }
+ if ((prev && (prev.type === 'bracket' || prev.type === 'paren' || prev.type === 'brace')) || state.parens > 0) {
+ push({ type: 'plus', value });
+ continue;
+ }
- let base = str;
- let prefix = '';
- let glob = '';
+ push({ type: 'plus', value: PLUS_LITERAL });
+ continue;
+ }
- if (start > 0) {
- prefix = str.slice(0, start);
- str = str.slice(start);
- lastIndex -= start;
- }
+ /**
+ * Plain text
+ */
- if (base && isGlob === true && lastIndex > 0) {
- base = str.slice(0, lastIndex);
- glob = str.slice(lastIndex);
- } else if (isGlob === true) {
- base = '';
- glob = str;
- } else {
- base = str;
- }
+ if (value === '@') {
+ if (opts.noextglob !== true && peek() === '(' && peek(2) !== '?') {
+ push({ type: 'at', extglob: true, value, output: '' });
+ continue;
+ }
- if (base && base !== '' && base !== '/' && base !== str) {
- if (isPathSeparator(base.charCodeAt(base.length - 1))) {
- base = base.slice(0, -1);
+ push({ type: 'text', value });
+ continue;
}
- }
- if (opts.unescape === true) {
- if (glob) glob = utils.removeBackslashes(glob);
+ /**
+ * Plain text
+ */
- if (base && backslashes === true) {
- base = utils.removeBackslashes(base);
- }
- }
+ if (value !== '*') {
+ if (value === '$' || value === '^') {
+ value = `\\${value}`;
+ }
- const state = {
- prefix,
- input,
- start,
- base,
- glob,
- isBrace,
- isBracket,
- isGlob,
- isExtglob,
- isGlobstar,
- negated,
- negatedExtglob
- };
+ const match = REGEX_NON_SPECIAL_CHARS.exec(remaining());
+ if (match) {
+ value += match[0];
+ state.index += match[0].length;
+ }
- if (opts.tokens === true) {
- state.maxDepth = 0;
- if (!isPathSeparator(code)) {
- tokens.push(token);
+ push({ type: 'text', value });
+ continue;
}
- state.tokens = tokens;
- }
- if (opts.parts === true || opts.tokens === true) {
- let prevIndex;
+ /**
+ * Stars
+ */
- for (let idx = 0; idx < slashes.length; idx++) {
- const n = prevIndex ? prevIndex + 1 : start;
- const i = slashes[idx];
- const value = input.slice(n, i);
- if (opts.tokens) {
- if (idx === 0 && start !== 0) {
- tokens[idx].isPrefix = true;
- tokens[idx].value = prefix;
- } else {
- tokens[idx].value = value;
- }
- depth(tokens[idx]);
- state.maxDepth += tokens[idx].depth;
- }
- if (idx !== 0 || value !== '') {
- parts.push(value);
- }
- prevIndex = i;
+ if (prev && (prev.type === 'globstar' || prev.star === true)) {
+ prev.type = 'star';
+ prev.star = true;
+ prev.value += value;
+ prev.output = star;
+ state.backtrack = true;
+ state.globstar = true;
+ consume(value);
+ continue;
}
- if (prevIndex && prevIndex + 1 < input.length) {
- const value = input.slice(prevIndex + 1);
- parts.push(value);
+ let rest = remaining();
+ if (opts.noextglob !== true && /^\([^?]/.test(rest)) {
+ extglobOpen('star', value);
+ continue;
+ }
- if (opts.tokens) {
- tokens[tokens.length - 1].value = value;
- depth(tokens[tokens.length - 1]);
- state.maxDepth += tokens[tokens.length - 1].depth;
+ if (prev.type === 'star') {
+ if (opts.noglobstar === true) {
+ consume(value);
+ continue;
}
- }
- state.slashes = slashes;
- state.parts = parts;
- }
+ const prior = prev.prev;
+ const before = prior.prev;
+ const isStart = prior.type === 'slash' || prior.type === 'bos';
+ const afterStar = before && (before.type === 'star' || before.type === 'globstar');
- return state;
-};
+ if (opts.bash === true && (!isStart || (rest[0] && rest[0] !== '/'))) {
+ push({ type: 'star', value, output: '' });
+ continue;
+ }
-module.exports = scan;
+ const isBrace = state.braces > 0 && (prior.type === 'comma' || prior.type === 'brace');
+ const isExtglob = extglobs.length && (prior.type === 'pipe' || prior.type === 'paren');
+ if (!isStart && prior.type !== 'paren' && !isBrace && !isExtglob) {
+ push({ type: 'star', value, output: '' });
+ continue;
+ }
+ // strip consecutive `/**/`
+ while (rest.slice(0, 3) === '/**') {
+ const after = input[state.index + 4];
+ if (after && after !== '/') {
+ break;
+ }
+ rest = rest.slice(3);
+ consume('/**', 3);
+ }
-/***/ }),
+ if (prior.type === 'bos' && eos()) {
+ prev.type = 'globstar';
+ prev.value += value;
+ prev.output = globstar(opts);
+ state.output = prev.output;
+ state.globstar = true;
+ consume(value);
+ continue;
+ }
-/***/ 479:
-/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => {
+ if (prior.type === 'slash' && prior.prev.type !== 'bos' && !afterStar && eos()) {
+ state.output = state.output.slice(0, -(prior.output + prev.output).length);
+ prior.output = `(?:${prior.output}`;
-"use strict";
+ prev.type = 'globstar';
+ prev.output = globstar(opts) + (opts.strictSlashes ? ')' : '|$)');
+ prev.value += value;
+ state.globstar = true;
+ state.output += prior.output + prev.output;
+ consume(value);
+ continue;
+ }
+ if (prior.type === 'slash' && prior.prev.type !== 'bos' && rest[0] === '/') {
+ const end = rest[1] !== void 0 ? '|$' : '';
-const path = __nccwpck_require__(1017);
-const win32 = process.platform === 'win32';
-const {
- REGEX_BACKSLASH,
- REGEX_REMOVE_BACKSLASH,
- REGEX_SPECIAL_CHARS,
- REGEX_SPECIAL_CHARS_GLOBAL
-} = __nccwpck_require__(6099);
+ state.output = state.output.slice(0, -(prior.output + prev.output).length);
+ prior.output = `(?:${prior.output}`;
-exports.isObject = val => val !== null && typeof val === 'object' && !Array.isArray(val);
-exports.hasRegexChars = str => REGEX_SPECIAL_CHARS.test(str);
-exports.isRegexChar = str => str.length === 1 && exports.hasRegexChars(str);
-exports.escapeRegex = str => str.replace(REGEX_SPECIAL_CHARS_GLOBAL, '\\$1');
-exports.toPosixSlashes = str => str.replace(REGEX_BACKSLASH, '/');
+ prev.type = 'globstar';
+ prev.output = `${globstar(opts)}${SLASH_LITERAL}|${SLASH_LITERAL}${end})`;
+ prev.value += value;
-exports.removeBackslashes = str => {
- return str.replace(REGEX_REMOVE_BACKSLASH, match => {
- return match === '\\' ? '' : match;
- });
-};
+ state.output += prior.output + prev.output;
+ state.globstar = true;
-exports.supportsLookbehinds = () => {
- const segs = process.version.slice(1).split('.').map(Number);
- if (segs.length === 3 && segs[0] >= 9 || (segs[0] === 8 && segs[1] >= 10)) {
- return true;
- }
- return false;
-};
+ consume(value + advance());
-exports.isWindows = options => {
- if (options && typeof options.windows === 'boolean') {
- return options.windows;
- }
- return win32 === true || path.sep === '\\';
-};
+ push({ type: 'slash', value: '/', output: '' });
+ continue;
+ }
-exports.escapeLast = (input, char, lastIdx) => {
- const idx = input.lastIndexOf(char, lastIdx);
- if (idx === -1) return input;
- if (input[idx - 1] === '\\') return exports.escapeLast(input, char, idx - 1);
- return `${input.slice(0, idx)}\\${input.slice(idx)}`;
-};
+ if (prior.type === 'bos' && rest[0] === '/') {
+ prev.type = 'globstar';
+ prev.value += value;
+ prev.output = `(?:^|${SLASH_LITERAL}|${globstar(opts)}${SLASH_LITERAL})`;
+ state.output = prev.output;
+ state.globstar = true;
+ consume(value + advance());
+ push({ type: 'slash', value: '/', output: '' });
+ continue;
+ }
-exports.removePrefix = (input, state = {}) => {
- let output = input;
- if (output.startsWith('./')) {
- output = output.slice(2);
- state.prefix = './';
- }
- return output;
-};
+ // remove single star from output
+ state.output = state.output.slice(0, -prev.output.length);
-exports.wrapOutput = (input, state = {}, options = {}) => {
- const prepend = options.contains ? '' : '^';
- const append = options.contains ? '' : '$';
+ // reset previous token to globstar
+ prev.type = 'globstar';
+ prev.output = globstar(opts);
+ prev.value += value;
- let output = `${prepend}(?:${input})${append}`;
- if (state.negated === true) {
- output = `(?:^(?!${output}).*$)`;
- }
- return output;
-};
+ // reset output with globstar
+ state.output += prev.output;
+ state.globstar = true;
+ consume(value);
+ continue;
+ }
+ const token = { type: 'star', value, output: star };
-/***/ }),
+ if (opts.bash === true) {
+ token.output = '.*?';
+ if (prev.type === 'bos' || prev.type === 'slash') {
+ token.output = nodot + token.output;
+ }
+ push(token);
+ continue;
+ }
-/***/ 8341:
-/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
+ if (prev && (prev.type === 'bracket' || prev.type === 'paren') && opts.regex === true) {
+ token.output = value;
+ push(token);
+ continue;
+ }
-var once = __nccwpck_require__(1223)
-var eos = __nccwpck_require__(1205)
-var fs = __nccwpck_require__(7147) // we only need fs to get the ReadStream and WriteStream prototypes
+ if (state.index === state.start || prev.type === 'slash' || prev.type === 'dot') {
+ if (prev.type === 'dot') {
+ state.output += NO_DOT_SLASH;
+ prev.output += NO_DOT_SLASH;
-var noop = function () {}
-var ancient = /^v?\.0/.test(process.version)
+ } else if (opts.dot === true) {
+ state.output += NO_DOTS_SLASH;
+ prev.output += NO_DOTS_SLASH;
-var isFn = function (fn) {
- return typeof fn === 'function'
-}
+ } else {
+ state.output += nodot;
+ prev.output += nodot;
+ }
-var isFS = function (stream) {
- if (!ancient) return false // newer node version do not need to care about fs is a special way
- if (!fs) return false // browser
- return (stream instanceof (fs.ReadStream || noop) || stream instanceof (fs.WriteStream || noop)) && isFn(stream.close)
-}
+ if (peek() !== '*') {
+ state.output += ONE_CHAR;
+ prev.output += ONE_CHAR;
+ }
+ }
-var isRequest = function (stream) {
- return stream.setHeader && isFn(stream.abort)
-}
+ push(token);
+ }
-var destroyer = function (stream, reading, writing, callback) {
- callback = once(callback)
+ while (state.brackets > 0) {
+ if (opts.strictBrackets === true) throw new SyntaxError(syntaxError('closing', ']'));
+ state.output = utils.escapeLast(state.output, '[');
+ decrement('brackets');
+ }
- var closed = false
- stream.on('close', function () {
- closed = true
- })
+ while (state.parens > 0) {
+ if (opts.strictBrackets === true) throw new SyntaxError(syntaxError('closing', ')'));
+ state.output = utils.escapeLast(state.output, '(');
+ decrement('parens');
+ }
- eos(stream, {readable: reading, writable: writing}, function (err) {
- if (err) return callback(err)
- closed = true
- callback()
- })
+ while (state.braces > 0) {
+ if (opts.strictBrackets === true) throw new SyntaxError(syntaxError('closing', '}'));
+ state.output = utils.escapeLast(state.output, '{');
+ decrement('braces');
+ }
- var destroyed = false
- return function (err) {
- if (closed) return
- if (destroyed) return
- destroyed = true
+ if (opts.strictSlashes !== true && (prev.type === 'star' || prev.type === 'bracket')) {
+ push({ type: 'maybe_slash', value: '', output: `${SLASH_LITERAL}?` });
+ }
- if (isFS(stream)) return stream.close(noop) // use close for fs streams to avoid fd leaks
- if (isRequest(stream)) return stream.abort() // request.destroy just do .end - .abort is what we want
+ // rebuild the output if we had to backtrack at any point
+ if (state.backtrack === true) {
+ state.output = '';
- if (isFn(stream.destroy)) return stream.destroy()
+ for (const token of state.tokens) {
+ state.output += token.output != null ? token.output : token.value;
- callback(err || new Error('stream was destroyed'))
+ if (token.suffix) {
+ state.output += token.suffix;
+ }
+ }
}
-}
-var call = function (fn) {
- fn()
-}
+ return state;
+};
-var pipe = function (from, to) {
- return from.pipe(to)
-}
+/**
+ * Fast paths for creating regular expressions for common glob patterns.
+ * This can significantly speed up processing and has very little downside
+ * impact when none of the fast paths match.
+ */
-var pump = function () {
- var streams = Array.prototype.slice.call(arguments)
- var callback = isFn(streams[streams.length - 1] || noop) && streams.pop() || noop
+parse.fastpaths = (input, options) => {
+ const opts = { ...options };
+ const max = typeof opts.maxLength === 'number' ? Math.min(MAX_LENGTH, opts.maxLength) : MAX_LENGTH;
+ const len = input.length;
+ if (len > max) {
+ throw new SyntaxError(`Input length: ${len}, exceeds maximum allowed length: ${max}`);
+ }
- if (Array.isArray(streams[0])) streams = streams[0]
- if (streams.length < 2) throw new Error('pump requires two streams per minimum')
+ input = REPLACEMENTS[input] || input;
- var error
- var destroys = streams.map(function (stream, i) {
- var reading = i < streams.length - 1
- var writing = i > 0
- return destroyer(stream, reading, writing, function (err) {
- if (!error) error = err
- if (err) destroys.forEach(call)
- if (reading) return
- destroys.forEach(call)
- callback(error)
- })
- })
+ // create constants based on platform, for windows or posix
+ const {
+ DOT_LITERAL,
+ SLASH_LITERAL,
+ ONE_CHAR,
+ DOTS_SLASH,
+ NO_DOT,
+ NO_DOTS,
+ NO_DOTS_SLASH,
+ STAR,
+ START_ANCHOR
+ } = constants.globChars(opts.windows);
- return streams.reduce(pipe)
-}
+ const nodot = opts.dot ? NO_DOTS : NO_DOT;
+ const slashDot = opts.dot ? NO_DOTS_SLASH : NO_DOT;
+ const capture = opts.capture ? '' : '?:';
+ const state = { negated: false, prefix: '' };
+ let star = opts.bash === true ? '.*?' : STAR;
-module.exports = pump
+ if (opts.capture) {
+ star = `(${star})`;
+ }
+ const globstar = opts => {
+ if (opts.noglobstar === true) return star;
+ return `(${capture}(?:(?!${START_ANCHOR}${opts.dot ? DOTS_SLASH : DOT_LITERAL}).)*?)`;
+ };
-/***/ }),
-
-/***/ 9795:
-/***/ ((module) => {
-
-/*! queue-microtask. MIT License. Feross Aboukhadijeh */
-let promise
-
-module.exports = typeof queueMicrotask === 'function'
- ? queueMicrotask.bind(typeof window !== 'undefined' ? window : global)
- // reuse resolved promise, and allocate it lazily
- : cb => (promise || (promise = Promise.resolve()))
- .then(cb)
- .catch(err => setTimeout(() => { throw err }, 0))
-
-
-/***/ }),
-
-/***/ 9273:
-/***/ ((module) => {
-
-"use strict";
-
+ const create = str => {
+ switch (str) {
+ case '*':
+ return `${nodot}${ONE_CHAR}${star}`;
-class QuickLRU {
- constructor(options = {}) {
- if (!(options.maxSize && options.maxSize > 0)) {
- throw new TypeError('`maxSize` must be a number greater than 0');
- }
+ case '.*':
+ return `${DOT_LITERAL}${ONE_CHAR}${star}`;
- this.maxSize = options.maxSize;
- this.onEviction = options.onEviction;
- this.cache = new Map();
- this.oldCache = new Map();
- this._size = 0;
- }
+ case '*.*':
+ return `${nodot}${star}${DOT_LITERAL}${ONE_CHAR}${star}`;
- _set(key, value) {
- this.cache.set(key, value);
- this._size++;
+ case '*/*':
+ return `${nodot}${star}${SLASH_LITERAL}${ONE_CHAR}${slashDot}${star}`;
- if (this._size >= this.maxSize) {
- this._size = 0;
+ case '**':
+ return nodot + globstar(opts);
- if (typeof this.onEviction === 'function') {
- for (const [key, value] of this.oldCache.entries()) {
- this.onEviction(key, value);
- }
- }
+ case '**/*':
+ return `(?:${nodot}${globstar(opts)}${SLASH_LITERAL})?${slashDot}${ONE_CHAR}${star}`;
- this.oldCache = this.cache;
- this.cache = new Map();
- }
- }
+ case '**/*.*':
+ return `(?:${nodot}${globstar(opts)}${SLASH_LITERAL})?${slashDot}${star}${DOT_LITERAL}${ONE_CHAR}${star}`;
- get(key) {
- if (this.cache.has(key)) {
- return this.cache.get(key);
- }
+ case '**/.*':
+ return `(?:${nodot}${globstar(opts)}${SLASH_LITERAL})?${DOT_LITERAL}${ONE_CHAR}${star}`;
- if (this.oldCache.has(key)) {
- const value = this.oldCache.get(key);
- this.oldCache.delete(key);
- this._set(key, value);
- return value;
- }
- }
+ default: {
+ const match = /^(.*?)\.(\w+)$/.exec(str);
+ if (!match) return;
- set(key, value) {
- if (this.cache.has(key)) {
- this.cache.set(key, value);
- } else {
- this._set(key, value);
- }
+ const source = create(match[1]);
+ if (!source) return;
- return this;
- }
+ return source + DOT_LITERAL + match[2];
+ }
+ }
+ };
- has(key) {
- return this.cache.has(key) || this.oldCache.has(key);
- }
+ const output = utils.removePrefix(input, state);
+ let source = create(output);
- peek(key) {
- if (this.cache.has(key)) {
- return this.cache.get(key);
- }
+ if (source && opts.strictSlashes !== true) {
+ source += `${SLASH_LITERAL}?`;
+ }
- if (this.oldCache.has(key)) {
- return this.oldCache.get(key);
- }
- }
+ return source;
+};
- delete(key) {
- const deleted = this.cache.delete(key);
- if (deleted) {
- this._size--;
- }
+module.exports = parse;
- return this.oldCache.delete(key) || deleted;
- }
- clear() {
- this.cache.clear();
- this.oldCache.clear();
- this._size = 0;
- }
+/***/ }),
- * keys() {
- for (const [key] of this) {
- yield key;
- }
- }
+/***/ 3322:
+/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
- * values() {
- for (const [, value] of this) {
- yield value;
- }
- }
+"use strict";
- * [Symbol.iterator]() {
- for (const item of this.cache) {
- yield item;
- }
- for (const item of this.oldCache) {
- const [key] = item;
- if (!this.cache.has(key)) {
- yield item;
- }
- }
- }
+const scan = __nccwpck_require__(2429);
+const parse = __nccwpck_require__(2139);
+const utils = __nccwpck_require__(479);
+const constants = __nccwpck_require__(6099);
+const isObject = val => val && typeof val === 'object' && !Array.isArray(val);
- get size() {
- let oldCacheSize = 0;
- for (const key of this.oldCache.keys()) {
- if (!this.cache.has(key)) {
- oldCacheSize++;
- }
- }
+/**
+ * Creates a matcher function from one or more glob patterns. The
+ * returned function takes a string to match as its first argument,
+ * and returns true if the string is a match. The returned matcher
+ * function also takes a boolean as the second argument that, when true,
+ * returns an object with additional information.
+ *
+ * ```js
+ * const picomatch = require('picomatch');
+ * // picomatch(glob[, options]);
+ *
+ * const isMatch = picomatch('*.!(*a)');
+ * console.log(isMatch('a.a')); //=> false
+ * console.log(isMatch('a.b')); //=> true
+ * ```
+ * @name picomatch
+ * @param {String|Array} `globs` One or more glob patterns.
+ * @param {Object=} `options`
+ * @return {Function=} Returns a matcher function.
+ * @api public
+ */
- return Math.min(this._size + oldCacheSize, this.maxSize);
- }
-}
+const picomatch = (glob, options, returnState = false) => {
+ if (Array.isArray(glob)) {
+ const fns = glob.map(input => picomatch(input, options, returnState));
+ const arrayMatcher = str => {
+ for (const isMatch of fns) {
+ const state = isMatch(str);
+ if (state) return state;
+ }
+ return false;
+ };
+ return arrayMatcher;
+ }
-module.exports = QuickLRU;
+ const isState = isObject(glob) && glob.tokens && glob.input;
+ if (glob === '' || (typeof glob !== 'string' && !isState)) {
+ throw new TypeError('Expected pattern to be a non-empty string');
+ }
-/***/ }),
+ const opts = options || {};
+ const posix = opts.windows;
+ const regex = isState
+ ? picomatch.compileRe(glob, options)
+ : picomatch.makeRe(glob, options, false, true);
-/***/ 6624:
-/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
+ const state = regex.state;
+ delete regex.state;
-"use strict";
+ let isIgnored = () => false;
+ if (opts.ignore) {
+ const ignoreOpts = { ...options, ignore: null, onMatch: null, onResult: null };
+ isIgnored = picomatch(opts.ignore, ignoreOpts, returnState);
+ }
-const tls = __nccwpck_require__(4404);
+ const matcher = (input, returnObject = false) => {
+ const { isMatch, match, output } = picomatch.test(input, regex, options, { glob, posix });
+ const result = { glob, state, regex, posix, input, output, match, isMatch };
-module.exports = (options = {}, connect = tls.connect) => new Promise((resolve, reject) => {
- let timeout = false;
+ if (typeof opts.onResult === 'function') {
+ opts.onResult(result);
+ }
- let socket;
+ if (isMatch === false) {
+ result.isMatch = false;
+ return returnObject ? result : false;
+ }
- const callback = async () => {
- await socketPromise;
+ if (isIgnored(input)) {
+ if (typeof opts.onIgnore === 'function') {
+ opts.onIgnore(result);
+ }
+ result.isMatch = false;
+ return returnObject ? result : false;
+ }
- socket.off('timeout', onTimeout);
- socket.off('error', reject);
+ if (typeof opts.onMatch === 'function') {
+ opts.onMatch(result);
+ }
+ return returnObject ? result : true;
+ };
- if (options.resolveSocket) {
- resolve({alpnProtocol: socket.alpnProtocol, socket, timeout});
+ if (returnState) {
+ matcher.state = state;
+ }
- if (timeout) {
- await Promise.resolve();
- socket.emit('timeout');
- }
- } else {
- socket.destroy();
- resolve({alpnProtocol: socket.alpnProtocol, timeout});
- }
- };
+ return matcher;
+};
- const onTimeout = async () => {
- timeout = true;
- callback();
- };
+/**
+ * Test `input` with the given `regex`. This is used by the main
+ * `picomatch()` function to test the input string.
+ *
+ * ```js
+ * const picomatch = require('picomatch');
+ * // picomatch.test(input, regex[, options]);
+ *
+ * console.log(picomatch.test('foo/bar', /^(?:([^/]*?)\/([^/]*?))$/));
+ * // { isMatch: true, match: [ 'foo/', 'foo', 'bar' ], output: 'foo/bar' }
+ * ```
+ * @param {String} `input` String to test.
+ * @param {RegExp} `regex`
+ * @return {Object} Returns an object with matching info.
+ * @api public
+ */
- const socketPromise = (async () => {
- try {
- socket = await connect(options, callback);
+picomatch.test = (input, regex, options, { glob, posix } = {}) => {
+ if (typeof input !== 'string') {
+ throw new TypeError('Expected input to be a string');
+ }
- socket.on('error', reject);
- socket.once('timeout', onTimeout);
- } catch (error) {
- reject(error);
- }
- })();
-});
+ if (input === '') {
+ return { isMatch: false, output: '' };
+ }
+ const opts = options || {};
+ const format = opts.format || (posix ? utils.toPosixSlashes : null);
+ let match = input === glob;
+ let output = (match && format) ? format(input) : input;
-/***/ }),
+ if (match === false) {
+ output = format ? format(input) : input;
+ match = output === glob;
+ }
-/***/ 9004:
-/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
+ if (match === false || opts.capture === true) {
+ if (opts.matchBase === true || opts.basename === true) {
+ match = picomatch.matchBase(input, regex, options, posix);
+ } else {
+ match = regex.exec(output);
+ }
+ }
-"use strict";
+ return { isMatch: Boolean(match), match, output };
+};
+/**
+ * Match the basename of a filepath.
+ *
+ * ```js
+ * const picomatch = require('picomatch');
+ * // picomatch.matchBase(input, glob[, options]);
+ * console.log(picomatch.matchBase('foo/bar.js', '*.js'); // true
+ * ```
+ * @param {String} `input` String to test.
+ * @param {RegExp|String} `glob` Glob pattern or regex created by [.makeRe](#makeRe).
+ * @return {Boolean}
+ * @api public
+ */
-const Readable = (__nccwpck_require__(2781).Readable);
-const lowercaseKeys = __nccwpck_require__(9662);
+picomatch.matchBase = (input, glob, options) => {
+ const regex = glob instanceof RegExp ? glob : picomatch.makeRe(glob, options);
+ return regex.test(utils.basename(input));
+};
-class Response extends Readable {
- constructor(statusCode, headers, body, url) {
- if (typeof statusCode !== 'number') {
- throw new TypeError('Argument `statusCode` should be a number');
- }
- if (typeof headers !== 'object') {
- throw new TypeError('Argument `headers` should be an object');
- }
- if (!(body instanceof Buffer)) {
- throw new TypeError('Argument `body` should be a buffer');
- }
- if (typeof url !== 'string') {
- throw new TypeError('Argument `url` should be a string');
- }
+/**
+ * Returns true if **any** of the given glob `patterns` match the specified `string`.
+ *
+ * ```js
+ * const picomatch = require('picomatch');
+ * // picomatch.isMatch(string, patterns[, options]);
+ *
+ * console.log(picomatch.isMatch('a.a', ['b.*', '*.a'])); //=> true
+ * console.log(picomatch.isMatch('a.a', 'b.*')); //=> false
+ * ```
+ * @param {String|Array} str The string to test.
+ * @param {String|Array} patterns One or more glob patterns to use for matching.
+ * @param {Object} [options] See available [options](#options).
+ * @return {Boolean} Returns true if any patterns match `str`
+ * @api public
+ */
- super();
- this.statusCode = statusCode;
- this.headers = lowercaseKeys(headers);
- this.body = body;
- this.url = url;
- }
+picomatch.isMatch = (str, patterns, options) => picomatch(patterns, options)(str);
- _read() {
- this.push(this.body);
- this.push(null);
- }
-}
+/**
+ * Parse a glob pattern to create the source string for a regular
+ * expression.
+ *
+ * ```js
+ * const picomatch = require('picomatch');
+ * const result = picomatch.parse(pattern[, options]);
+ * ```
+ * @param {String} `pattern`
+ * @param {Object} `options`
+ * @return {Object} Returns an object with useful properties and output to be used as a regex source string.
+ * @api public
+ */
-module.exports = Response;
+picomatch.parse = (pattern, options) => {
+ if (Array.isArray(pattern)) return pattern.map(p => picomatch.parse(p, options));
+ return parse(pattern, { ...options, fastpaths: false });
+};
+/**
+ * Scan a glob pattern to separate the pattern into segments.
+ *
+ * ```js
+ * const picomatch = require('picomatch');
+ * // picomatch.scan(input[, options]);
+ *
+ * const result = picomatch.scan('!./foo/*.js');
+ * console.log(result);
+ * { prefix: '!./',
+ * input: '!./foo/*.js',
+ * start: 3,
+ * base: 'foo',
+ * glob: '*.js',
+ * isBrace: false,
+ * isBracket: false,
+ * isGlob: true,
+ * isExtglob: false,
+ * isGlobstar: false,
+ * negated: true }
+ * ```
+ * @param {String} `input` Glob pattern to scan.
+ * @param {Object} `options`
+ * @return {Object} Returns an object with
+ * @api public
+ */
-/***/ }),
+picomatch.scan = (input, options) => scan(input, options);
-/***/ 2113:
-/***/ ((module) => {
+/**
+ * Compile a regular expression from the `state` object returned by the
+ * [parse()](#parse) method.
+ *
+ * @param {Object} `state`
+ * @param {Object} `options`
+ * @param {Boolean} `returnOutput` Intended for implementors, this argument allows you to return the raw output from the parser.
+ * @param {Boolean} `returnState` Adds the state to a `state` property on the returned regex. Useful for implementors and debugging.
+ * @return {RegExp}
+ * @api public
+ */
-"use strict";
+picomatch.compileRe = (state, options, returnOutput = false, returnState = false) => {
+ if (returnOutput === true) {
+ return state.output;
+ }
+ const opts = options || {};
+ const prepend = opts.contains ? '' : '^';
+ const append = opts.contains ? '' : '$';
-function reusify (Constructor) {
- var head = new Constructor()
- var tail = head
+ let source = `${prepend}(?:${state.output})${append}`;
+ if (state && state.negated === true) {
+ source = `^(?!${source}).*$`;
+ }
- function get () {
- var current = head
+ const regex = picomatch.toRegex(source, options);
+ if (returnState === true) {
+ regex.state = state;
+ }
- if (current.next) {
- head = current.next
- } else {
- head = new Constructor()
- tail = head
- }
+ return regex;
+};
- current.next = null
+/**
+ * Create a regular expression from a parsed glob pattern.
+ *
+ * ```js
+ * const picomatch = require('picomatch');
+ * const state = picomatch.parse('*.js');
+ * // picomatch.compileRe(state[, options]);
+ *
+ * console.log(picomatch.compileRe(state));
+ * //=> /^(?:(?!\.)(?=.)[^/]*?\.js)$/
+ * ```
+ * @param {String} `state` The object returned from the `.parse` method.
+ * @param {Object} `options`
+ * @param {Boolean} `returnOutput` Implementors may use this argument to return the compiled output, instead of a regular expression. This is not exposed on the options to prevent end-users from mutating the result.
+ * @param {Boolean} `returnState` Implementors may use this argument to return the state from the parsed glob with the returned regular expression.
+ * @return {RegExp} Returns a regex created from the given pattern.
+ * @api public
+ */
- return current
+picomatch.makeRe = (input, options = {}, returnOutput = false, returnState = false) => {
+ if (!input || typeof input !== 'string') {
+ throw new TypeError('Expected a non-empty string');
}
- function release (obj) {
- tail.next = obj
- tail = obj
- }
+ let parsed = { negated: false, fastpaths: true };
- return {
- get: get,
- release: release
+ if (options.fastpaths !== false && (input[0] === '.' || input[0] === '*')) {
+ parsed.output = parse.fastpaths(input, options);
}
-}
-
-module.exports = reusify
+ if (!parsed.output) {
+ parsed = parse(input, options);
+ }
-/***/ }),
+ return picomatch.compileRe(parsed, options, returnOutput, returnState);
+};
-/***/ 5288:
-/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
-
-/*! run-parallel. MIT License. Feross Aboukhadijeh */
-module.exports = runParallel
-
-const queueMicrotask = __nccwpck_require__(9795)
-
-function runParallel (tasks, cb) {
- let results, pending, keys
- let isSync = true
+/**
+ * Create a regular expression from the given regex source string.
+ *
+ * ```js
+ * const picomatch = require('picomatch');
+ * // picomatch.toRegex(source[, options]);
+ *
+ * const { output } = picomatch.parse('*.js');
+ * console.log(picomatch.toRegex(output));
+ * //=> /^(?:(?!\.)(?=.)[^/]*?\.js)$/
+ * ```
+ * @param {String} `source` Regular expression source string.
+ * @param {Object} `options`
+ * @return {RegExp}
+ * @api public
+ */
- if (Array.isArray(tasks)) {
- results = []
- pending = tasks.length
- } else {
- keys = Object.keys(tasks)
- results = {}
- pending = keys.length
+picomatch.toRegex = (source, options) => {
+ try {
+ const opts = options || {};
+ return new RegExp(source, opts.flags || (opts.nocase ? 'i' : ''));
+ } catch (err) {
+ if (options && options.debug === true) throw err;
+ return /$^/;
}
+};
- function done (err) {
- function end () {
- if (cb) cb(err, results)
- cb = null
- }
- if (isSync) queueMicrotask(end)
- else end()
- }
+/**
+ * Picomatch constants.
+ * @return {Object}
+ */
- function each (i, err, result) {
- results[i] = result
- if (--pending === 0 || err) {
- done(err)
- }
- }
+picomatch.constants = constants;
- if (!pending) {
- // empty
- done(null)
- } else if (keys) {
- // object
- keys.forEach(function (key) {
- tasks[key](function (err, result) { each(key, err, result) })
- })
- } else {
- // array
- tasks.forEach(function (task, i) {
- task(function (err, result) { each(i, err, result) })
- })
- }
+/**
+ * Expose "picomatch"
+ */
- isSync = false
-}
+module.exports = picomatch;
/***/ }),
-/***/ 2043:
-/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => {
-
-;(function (sax) { // wrapper for non-node envs
- sax.parser = function (strict, opt) { return new SAXParser(strict, opt) }
- sax.SAXParser = SAXParser
- sax.SAXStream = SAXStream
- sax.createStream = createStream
+/***/ 2429:
+/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
- // When we pass the MAX_BUFFER_LENGTH position, start checking for buffer overruns.
- // When we check, schedule the next check for MAX_BUFFER_LENGTH - (max(buffer lengths)),
- // since that's the earliest that a buffer overrun could occur. This way, checks are
- // as rare as required, but as often as necessary to ensure never crossing this bound.
- // Furthermore, buffers are only tested at most once per write(), so passing a very
- // large string into write() might have undesirable effects, but this is manageable by
- // the caller, so it is assumed to be safe. Thus, a call to write() may, in the extreme
- // edge case, result in creating at most one complete copy of the string passed in.
- // Set to Infinity to have unlimited buffers.
- sax.MAX_BUFFER_LENGTH = 64 * 1024
+"use strict";
- var buffers = [
- 'comment', 'sgmlDecl', 'textNode', 'tagName', 'doctype',
- 'procInstName', 'procInstBody', 'entity', 'attribName',
- 'attribValue', 'cdata', 'script'
- ]
- sax.EVENTS = [
- 'text',
- 'processinginstruction',
- 'sgmldeclaration',
- 'doctype',
- 'comment',
- 'opentagstart',
- 'attribute',
- 'opentag',
- 'closetag',
- 'opencdata',
- 'cdata',
- 'closecdata',
- 'error',
- 'end',
- 'ready',
- 'script',
- 'opennamespace',
- 'closenamespace'
- ]
+const utils = __nccwpck_require__(479);
+const {
+ CHAR_ASTERISK, /* * */
+ CHAR_AT, /* @ */
+ CHAR_BACKWARD_SLASH, /* \ */
+ CHAR_COMMA, /* , */
+ CHAR_DOT, /* . */
+ CHAR_EXCLAMATION_MARK, /* ! */
+ CHAR_FORWARD_SLASH, /* / */
+ CHAR_LEFT_CURLY_BRACE, /* { */
+ CHAR_LEFT_PARENTHESES, /* ( */
+ CHAR_LEFT_SQUARE_BRACKET, /* [ */
+ CHAR_PLUS, /* + */
+ CHAR_QUESTION_MARK, /* ? */
+ CHAR_RIGHT_CURLY_BRACE, /* } */
+ CHAR_RIGHT_PARENTHESES, /* ) */
+ CHAR_RIGHT_SQUARE_BRACKET /* ] */
+} = __nccwpck_require__(6099);
- function SAXParser (strict, opt) {
- if (!(this instanceof SAXParser)) {
- return new SAXParser(strict, opt)
- }
+const isPathSeparator = code => {
+ return code === CHAR_FORWARD_SLASH || code === CHAR_BACKWARD_SLASH;
+};
- var parser = this
- clearBuffers(parser)
- parser.q = parser.c = ''
- parser.bufferCheckPosition = sax.MAX_BUFFER_LENGTH
- parser.opt = opt || {}
- parser.opt.lowercase = parser.opt.lowercase || parser.opt.lowercasetags
- parser.looseCase = parser.opt.lowercase ? 'toLowerCase' : 'toUpperCase'
- parser.tags = []
- parser.closed = parser.closedRoot = parser.sawRoot = false
- parser.tag = parser.error = null
- parser.strict = !!strict
- parser.noscript = !!(strict || parser.opt.noscript)
- parser.state = S.BEGIN
- parser.strictEntities = parser.opt.strictEntities
- parser.ENTITIES = parser.strictEntities ? Object.create(sax.XML_ENTITIES) : Object.create(sax.ENTITIES)
- parser.attribList = []
+const depth = token => {
+ if (token.isPrefix !== true) {
+ token.depth = token.isGlobstar ? Infinity : 1;
+ }
+};
- // namespaces form a prototype chain.
- // it always points at the current tag,
- // which protos to its parent tag.
- if (parser.opt.xmlns) {
- parser.ns = Object.create(rootNS)
- }
+/**
+ * Quickly scans a glob pattern and returns an object with a handful of
+ * useful properties, like `isGlob`, `path` (the leading non-glob, if it exists),
+ * `glob` (the actual pattern), `negated` (true if the path starts with `!` but not
+ * with `!(`) and `negatedExtglob` (true if the path starts with `!(`).
+ *
+ * ```js
+ * const pm = require('picomatch');
+ * console.log(pm.scan('foo/bar/*.js'));
+ * { isGlob: true, input: 'foo/bar/*.js', base: 'foo/bar', glob: '*.js' }
+ * ```
+ * @param {String} `str`
+ * @param {Object} `options`
+ * @return {Object} Returns an object with tokens and regex source string.
+ * @api public
+ */
- // mostly just for error reporting
- parser.trackPosition = parser.opt.position !== false
- if (parser.trackPosition) {
- parser.position = parser.line = parser.column = 0
- }
- emit(parser, 'onready')
- }
+const scan = (input, options) => {
+ const opts = options || {};
- if (!Object.create) {
- Object.create = function (o) {
- function F () {}
- F.prototype = o
- var newf = new F()
- return newf
- }
- }
+ const length = input.length - 1;
+ const scanToEnd = opts.parts === true || opts.scanToEnd === true;
+ const slashes = [];
+ const tokens = [];
+ const parts = [];
- if (!Object.keys) {
- Object.keys = function (o) {
- var a = []
- for (var i in o) if (o.hasOwnProperty(i)) a.push(i)
- return a
- }
- }
+ let str = input;
+ let index = -1;
+ let start = 0;
+ let lastIndex = 0;
+ let isBrace = false;
+ let isBracket = false;
+ let isGlob = false;
+ let isExtglob = false;
+ let isGlobstar = false;
+ let braceEscaped = false;
+ let backslashes = false;
+ let negated = false;
+ let negatedExtglob = false;
+ let finished = false;
+ let braces = 0;
+ let prev;
+ let code;
+ let token = { value: '', depth: 0, isGlob: false };
- function checkBufferLength (parser) {
- var maxAllowed = Math.max(sax.MAX_BUFFER_LENGTH, 10)
- var maxActual = 0
- for (var i = 0, l = buffers.length; i < l; i++) {
- var len = parser[buffers[i]].length
- if (len > maxAllowed) {
- // Text/cdata nodes can get big, and since they're buffered,
- // we can get here under normal conditions.
- // Avoid issues by emitting the text node now,
- // so at least it won't get any bigger.
- switch (buffers[i]) {
- case 'textNode':
- closeText(parser)
- break
+ const eos = () => index >= length;
+ const peek = () => str.charCodeAt(index + 1);
+ const advance = () => {
+ prev = code;
+ return str.charCodeAt(++index);
+ };
- case 'cdata':
- emitNode(parser, 'oncdata', parser.cdata)
- parser.cdata = ''
- break
+ while (index < length) {
+ code = advance();
+ let next;
- case 'script':
- emitNode(parser, 'onscript', parser.script)
- parser.script = ''
- break
+ if (code === CHAR_BACKWARD_SLASH) {
+ backslashes = token.backslashes = true;
+ code = advance();
- default:
- error(parser, 'Max buffer length exceeded: ' + buffers[i])
- }
+ if (code === CHAR_LEFT_CURLY_BRACE) {
+ braceEscaped = true;
}
- maxActual = Math.max(maxActual, len)
+ continue;
}
- // schedule the next check for the earliest possible buffer overrun.
- var m = sax.MAX_BUFFER_LENGTH - maxActual
- parser.bufferCheckPosition = m + parser.position
- }
- function clearBuffers (parser) {
- for (var i = 0, l = buffers.length; i < l; i++) {
- parser[buffers[i]] = ''
- }
- }
+ if (braceEscaped === true || code === CHAR_LEFT_CURLY_BRACE) {
+ braces++;
- function flushBuffers (parser) {
- closeText(parser)
- if (parser.cdata !== '') {
- emitNode(parser, 'oncdata', parser.cdata)
- parser.cdata = ''
- }
- if (parser.script !== '') {
- emitNode(parser, 'onscript', parser.script)
- parser.script = ''
- }
- }
+ while (eos() !== true && (code = advance())) {
+ if (code === CHAR_BACKWARD_SLASH) {
+ backslashes = token.backslashes = true;
+ advance();
+ continue;
+ }
- SAXParser.prototype = {
- end: function () { end(this) },
- write: write,
- resume: function () { this.error = null; return this },
- close: function () { return this.write(null) },
- flush: function () { flushBuffers(this) }
- }
+ if (code === CHAR_LEFT_CURLY_BRACE) {
+ braces++;
+ continue;
+ }
- var Stream
- try {
- Stream = (__nccwpck_require__(2781).Stream)
- } catch (ex) {
- Stream = function () {}
- }
+ if (braceEscaped !== true && code === CHAR_DOT && (code = advance()) === CHAR_DOT) {
+ isBrace = token.isBrace = true;
+ isGlob = token.isGlob = true;
+ finished = true;
- var streamWraps = sax.EVENTS.filter(function (ev) {
- return ev !== 'error' && ev !== 'end'
- })
+ if (scanToEnd === true) {
+ continue;
+ }
- function createStream (strict, opt) {
- return new SAXStream(strict, opt)
- }
+ break;
+ }
- function SAXStream (strict, opt) {
- if (!(this instanceof SAXStream)) {
- return new SAXStream(strict, opt)
- }
+ if (braceEscaped !== true && code === CHAR_COMMA) {
+ isBrace = token.isBrace = true;
+ isGlob = token.isGlob = true;
+ finished = true;
- Stream.apply(this)
+ if (scanToEnd === true) {
+ continue;
+ }
- this._parser = new SAXParser(strict, opt)
- this.writable = true
- this.readable = true
+ break;
+ }
- var me = this
+ if (code === CHAR_RIGHT_CURLY_BRACE) {
+ braces--;
- this._parser.onend = function () {
- me.emit('end')
- }
+ if (braces === 0) {
+ braceEscaped = false;
+ isBrace = token.isBrace = true;
+ finished = true;
+ break;
+ }
+ }
+ }
- this._parser.onerror = function (er) {
- me.emit('error', er)
+ if (scanToEnd === true) {
+ continue;
+ }
- // if didn't throw, then means error was handled.
- // go ahead and clear error, so we can write again.
- me._parser.error = null
+ break;
}
- this._decoder = null
+ if (code === CHAR_FORWARD_SLASH) {
+ slashes.push(index);
+ tokens.push(token);
+ token = { value: '', depth: 0, isGlob: false };
- streamWraps.forEach(function (ev) {
- Object.defineProperty(me, 'on' + ev, {
- get: function () {
- return me._parser['on' + ev]
- },
- set: function (h) {
- if (!h) {
- me.removeAllListeners(ev)
- me._parser['on' + ev] = h
- return h
- }
- me.on(ev, h)
- },
- enumerable: true,
- configurable: false
- })
- })
- }
+ if (finished === true) continue;
+ if (prev === CHAR_DOT && index === (start + 1)) {
+ start += 2;
+ continue;
+ }
- SAXStream.prototype = Object.create(Stream.prototype, {
- constructor: {
- value: SAXStream
+ lastIndex = index + 1;
+ continue;
}
- })
- SAXStream.prototype.write = function (data) {
- if (typeof Buffer === 'function' &&
- typeof Buffer.isBuffer === 'function' &&
- Buffer.isBuffer(data)) {
- if (!this._decoder) {
- var SD = (__nccwpck_require__(1576).StringDecoder)
- this._decoder = new SD('utf8')
+ if (opts.noext !== true) {
+ const isExtglobChar = code === CHAR_PLUS
+ || code === CHAR_AT
+ || code === CHAR_ASTERISK
+ || code === CHAR_QUESTION_MARK
+ || code === CHAR_EXCLAMATION_MARK;
+
+ if (isExtglobChar === true && peek() === CHAR_LEFT_PARENTHESES) {
+ isGlob = token.isGlob = true;
+ isExtglob = token.isExtglob = true;
+ finished = true;
+ if (code === CHAR_EXCLAMATION_MARK && index === start) {
+ negatedExtglob = true;
+ }
+
+ if (scanToEnd === true) {
+ while (eos() !== true && (code = advance())) {
+ if (code === CHAR_BACKWARD_SLASH) {
+ backslashes = token.backslashes = true;
+ code = advance();
+ continue;
+ }
+
+ if (code === CHAR_RIGHT_PARENTHESES) {
+ isGlob = token.isGlob = true;
+ finished = true;
+ break;
+ }
+ }
+ continue;
+ }
+ break;
}
- data = this._decoder.write(data)
}
- this._parser.write(data.toString())
- this.emit('data', data)
- return true
- }
+ if (code === CHAR_ASTERISK) {
+ if (prev === CHAR_ASTERISK) isGlobstar = token.isGlobstar = true;
+ isGlob = token.isGlob = true;
+ finished = true;
- SAXStream.prototype.end = function (chunk) {
- if (chunk && chunk.length) {
- this.write(chunk)
+ if (scanToEnd === true) {
+ continue;
+ }
+ break;
}
- this._parser.end()
- return true
- }
- SAXStream.prototype.on = function (ev, handler) {
- var me = this
- if (!me._parser['on' + ev] && streamWraps.indexOf(ev) !== -1) {
- me._parser['on' + ev] = function () {
- var args = arguments.length === 1 ? [arguments[0]] : Array.apply(null, arguments)
- args.splice(0, 0, ev)
- me.emit.apply(me, args)
+ if (code === CHAR_QUESTION_MARK) {
+ isGlob = token.isGlob = true;
+ finished = true;
+
+ if (scanToEnd === true) {
+ continue;
}
+ break;
}
- return Stream.prototype.on.call(me, ev, handler)
- }
+ if (code === CHAR_LEFT_SQUARE_BRACKET) {
+ while (eos() !== true && (next = advance())) {
+ if (next === CHAR_BACKWARD_SLASH) {
+ backslashes = token.backslashes = true;
+ advance();
+ continue;
+ }
- // this really needs to be replaced with character classes.
- // XML allows all manner of ridiculous numbers and digits.
- var CDATA = '[CDATA['
- var DOCTYPE = 'DOCTYPE'
- var XML_NAMESPACE = 'http://www.w3.org/XML/1998/namespace'
- var XMLNS_NAMESPACE = 'http://www.w3.org/2000/xmlns/'
- var rootNS = { xml: XML_NAMESPACE, xmlns: XMLNS_NAMESPACE }
+ if (next === CHAR_RIGHT_SQUARE_BRACKET) {
+ isBracket = token.isBracket = true;
+ isGlob = token.isGlob = true;
+ finished = true;
+ break;
+ }
+ }
- // http://www.w3.org/TR/REC-xml/#NT-NameStartChar
- // This implementation works on strings, a single character at a time
+ if (scanToEnd === true) {
+ continue;
+ }
+
+ break;
+ }
+
+ if (opts.nonegate !== true && code === CHAR_EXCLAMATION_MARK && index === start) {
+ negated = token.negated = true;
+ start++;
+ continue;
+ }
+
+ if (opts.noparen !== true && code === CHAR_LEFT_PARENTHESES) {
+ isGlob = token.isGlob = true;
+
+ if (scanToEnd === true) {
+ while (eos() !== true && (code = advance())) {
+ if (code === CHAR_LEFT_PARENTHESES) {
+ backslashes = token.backslashes = true;
+ code = advance();
+ continue;
+ }
+
+ if (code === CHAR_RIGHT_PARENTHESES) {
+ finished = true;
+ break;
+ }
+ }
+ continue;
+ }
+ break;
+ }
+
+ if (isGlob === true) {
+ finished = true;
+
+ if (scanToEnd === true) {
+ continue;
+ }
+
+ break;
+ }
+ }
+
+ if (opts.noext === true) {
+ isExtglob = false;
+ isGlob = false;
+ }
+
+ let base = str;
+ let prefix = '';
+ let glob = '';
+
+ if (start > 0) {
+ prefix = str.slice(0, start);
+ str = str.slice(start);
+ lastIndex -= start;
+ }
+
+ if (base && isGlob === true && lastIndex > 0) {
+ base = str.slice(0, lastIndex);
+ glob = str.slice(lastIndex);
+ } else if (isGlob === true) {
+ base = '';
+ glob = str;
+ } else {
+ base = str;
+ }
+
+ if (base && base !== '' && base !== '/' && base !== str) {
+ if (isPathSeparator(base.charCodeAt(base.length - 1))) {
+ base = base.slice(0, -1);
+ }
+ }
+
+ if (opts.unescape === true) {
+ if (glob) glob = utils.removeBackslashes(glob);
+
+ if (base && backslashes === true) {
+ base = utils.removeBackslashes(base);
+ }
+ }
+
+ const state = {
+ prefix,
+ input,
+ start,
+ base,
+ glob,
+ isBrace,
+ isBracket,
+ isGlob,
+ isExtglob,
+ isGlobstar,
+ negated,
+ negatedExtglob
+ };
+
+ if (opts.tokens === true) {
+ state.maxDepth = 0;
+ if (!isPathSeparator(code)) {
+ tokens.push(token);
+ }
+ state.tokens = tokens;
+ }
+
+ if (opts.parts === true || opts.tokens === true) {
+ let prevIndex;
+
+ for (let idx = 0; idx < slashes.length; idx++) {
+ const n = prevIndex ? prevIndex + 1 : start;
+ const i = slashes[idx];
+ const value = input.slice(n, i);
+ if (opts.tokens) {
+ if (idx === 0 && start !== 0) {
+ tokens[idx].isPrefix = true;
+ tokens[idx].value = prefix;
+ } else {
+ tokens[idx].value = value;
+ }
+ depth(tokens[idx]);
+ state.maxDepth += tokens[idx].depth;
+ }
+ if (idx !== 0 || value !== '') {
+ parts.push(value);
+ }
+ prevIndex = i;
+ }
+
+ if (prevIndex && prevIndex + 1 < input.length) {
+ const value = input.slice(prevIndex + 1);
+ parts.push(value);
+
+ if (opts.tokens) {
+ tokens[tokens.length - 1].value = value;
+ depth(tokens[tokens.length - 1]);
+ state.maxDepth += tokens[tokens.length - 1].depth;
+ }
+ }
+
+ state.slashes = slashes;
+ state.parts = parts;
+ }
+
+ return state;
+};
+
+module.exports = scan;
+
+
+/***/ }),
+
+/***/ 479:
+/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => {
+
+"use strict";
+
+
+const {
+ REGEX_BACKSLASH,
+ REGEX_REMOVE_BACKSLASH,
+ REGEX_SPECIAL_CHARS,
+ REGEX_SPECIAL_CHARS_GLOBAL
+} = __nccwpck_require__(6099);
+
+exports.isObject = val => val !== null && typeof val === 'object' && !Array.isArray(val);
+exports.hasRegexChars = str => REGEX_SPECIAL_CHARS.test(str);
+exports.isRegexChar = str => str.length === 1 && exports.hasRegexChars(str);
+exports.escapeRegex = str => str.replace(REGEX_SPECIAL_CHARS_GLOBAL, '\\$1');
+exports.toPosixSlashes = str => str.replace(REGEX_BACKSLASH, '/');
+
+exports.removeBackslashes = str => {
+ return str.replace(REGEX_REMOVE_BACKSLASH, match => {
+ return match === '\\' ? '' : match;
+ });
+};
+
+exports.supportsLookbehinds = () => {
+ if (typeof process !== 'undefined') {
+ const segs = process.version.slice(1).split('.').map(Number);
+ if (segs.length === 3 && segs[0] >= 9 || (segs[0] === 8 && segs[1] >= 10)) {
+ return true;
+ }
+ }
+ return false;
+};
+
+exports.escapeLast = (input, char, lastIdx) => {
+ const idx = input.lastIndexOf(char, lastIdx);
+ if (idx === -1) return input;
+ if (input[idx - 1] === '\\') return exports.escapeLast(input, char, idx - 1);
+ return `${input.slice(0, idx)}\\${input.slice(idx)}`;
+};
+
+exports.removePrefix = (input, state = {}) => {
+ let output = input;
+ if (output.startsWith('./')) {
+ output = output.slice(2);
+ state.prefix = './';
+ }
+ return output;
+};
+
+exports.wrapOutput = (input, state = {}, options = {}) => {
+ const prepend = options.contains ? '' : '^';
+ const append = options.contains ? '' : '$';
+
+ let output = `${prepend}(?:${input})${append}`;
+ if (state.negated === true) {
+ output = `(?:^(?!${output}).*$)`;
+ }
+ return output;
+};
+
+exports.basename = (path, { windows } = {}) => {
+ const segs = path.split(windows ? /[\\/]/ : '/');
+ const last = segs[segs.length - 1];
+
+ if (last === '') {
+ return segs[segs.length - 2];
+ }
+
+ return last;
+};
+
+
+/***/ }),
+
+/***/ 8341:
+/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
+
+var once = __nccwpck_require__(1223)
+var eos = __nccwpck_require__(1205)
+var fs = __nccwpck_require__(7147) // we only need fs to get the ReadStream and WriteStream prototypes
+
+var noop = function () {}
+var ancient = /^v?\.0/.test(process.version)
+
+var isFn = function (fn) {
+ return typeof fn === 'function'
+}
+
+var isFS = function (stream) {
+ if (!ancient) return false // newer node version do not need to care about fs is a special way
+ if (!fs) return false // browser
+ return (stream instanceof (fs.ReadStream || noop) || stream instanceof (fs.WriteStream || noop)) && isFn(stream.close)
+}
+
+var isRequest = function (stream) {
+ return stream.setHeader && isFn(stream.abort)
+}
+
+var destroyer = function (stream, reading, writing, callback) {
+ callback = once(callback)
+
+ var closed = false
+ stream.on('close', function () {
+ closed = true
+ })
+
+ eos(stream, {readable: reading, writable: writing}, function (err) {
+ if (err) return callback(err)
+ closed = true
+ callback()
+ })
+
+ var destroyed = false
+ return function (err) {
+ if (closed) return
+ if (destroyed) return
+ destroyed = true
+
+ if (isFS(stream)) return stream.close(noop) // use close for fs streams to avoid fd leaks
+ if (isRequest(stream)) return stream.abort() // request.destroy just do .end - .abort is what we want
+
+ if (isFn(stream.destroy)) return stream.destroy()
+
+ callback(err || new Error('stream was destroyed'))
+ }
+}
+
+var call = function (fn) {
+ fn()
+}
+
+var pipe = function (from, to) {
+ return from.pipe(to)
+}
+
+var pump = function () {
+ var streams = Array.prototype.slice.call(arguments)
+ var callback = isFn(streams[streams.length - 1] || noop) && streams.pop() || noop
+
+ if (Array.isArray(streams[0])) streams = streams[0]
+ if (streams.length < 2) throw new Error('pump requires two streams per minimum')
+
+ var error
+ var destroys = streams.map(function (stream, i) {
+ var reading = i < streams.length - 1
+ var writing = i > 0
+ return destroyer(stream, reading, writing, function (err) {
+ if (!error) error = err
+ if (err) destroys.forEach(call)
+ if (reading) return
+ destroys.forEach(call)
+ callback(error)
+ })
+ })
+
+ return streams.reduce(pipe)
+}
+
+module.exports = pump
+
+
+/***/ }),
+
+/***/ 9795:
+/***/ ((module) => {
+
+/*! queue-microtask. MIT License. Feross Aboukhadijeh */
+let promise
+
+module.exports = typeof queueMicrotask === 'function'
+ ? queueMicrotask.bind(typeof window !== 'undefined' ? window : global)
+ // reuse resolved promise, and allocate it lazily
+ : cb => (promise || (promise = Promise.resolve()))
+ .then(cb)
+ .catch(err => setTimeout(() => { throw err }, 0))
+
+
+/***/ }),
+
+/***/ 9273:
+/***/ ((module) => {
+
+"use strict";
+
+
+class QuickLRU {
+ constructor(options = {}) {
+ if (!(options.maxSize && options.maxSize > 0)) {
+ throw new TypeError('`maxSize` must be a number greater than 0');
+ }
+
+ this.maxSize = options.maxSize;
+ this.onEviction = options.onEviction;
+ this.cache = new Map();
+ this.oldCache = new Map();
+ this._size = 0;
+ }
+
+ _set(key, value) {
+ this.cache.set(key, value);
+ this._size++;
+
+ if (this._size >= this.maxSize) {
+ this._size = 0;
+
+ if (typeof this.onEviction === 'function') {
+ for (const [key, value] of this.oldCache.entries()) {
+ this.onEviction(key, value);
+ }
+ }
+
+ this.oldCache = this.cache;
+ this.cache = new Map();
+ }
+ }
+
+ get(key) {
+ if (this.cache.has(key)) {
+ return this.cache.get(key);
+ }
+
+ if (this.oldCache.has(key)) {
+ const value = this.oldCache.get(key);
+ this.oldCache.delete(key);
+ this._set(key, value);
+ return value;
+ }
+ }
+
+ set(key, value) {
+ if (this.cache.has(key)) {
+ this.cache.set(key, value);
+ } else {
+ this._set(key, value);
+ }
+
+ return this;
+ }
+
+ has(key) {
+ return this.cache.has(key) || this.oldCache.has(key);
+ }
+
+ peek(key) {
+ if (this.cache.has(key)) {
+ return this.cache.get(key);
+ }
+
+ if (this.oldCache.has(key)) {
+ return this.oldCache.get(key);
+ }
+ }
+
+ delete(key) {
+ const deleted = this.cache.delete(key);
+ if (deleted) {
+ this._size--;
+ }
+
+ return this.oldCache.delete(key) || deleted;
+ }
+
+ clear() {
+ this.cache.clear();
+ this.oldCache.clear();
+ this._size = 0;
+ }
+
+ * keys() {
+ for (const [key] of this) {
+ yield key;
+ }
+ }
+
+ * values() {
+ for (const [, value] of this) {
+ yield value;
+ }
+ }
+
+ * [Symbol.iterator]() {
+ for (const item of this.cache) {
+ yield item;
+ }
+
+ for (const item of this.oldCache) {
+ const [key] = item;
+ if (!this.cache.has(key)) {
+ yield item;
+ }
+ }
+ }
+
+ get size() {
+ let oldCacheSize = 0;
+ for (const key of this.oldCache.keys()) {
+ if (!this.cache.has(key)) {
+ oldCacheSize++;
+ }
+ }
+
+ return Math.min(this._size + oldCacheSize, this.maxSize);
+ }
+}
+
+module.exports = QuickLRU;
+
+
+/***/ }),
+
+/***/ 6624:
+/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
+
+"use strict";
+
+const tls = __nccwpck_require__(4404);
+
+module.exports = (options = {}, connect = tls.connect) => new Promise((resolve, reject) => {
+ let timeout = false;
+
+ let socket;
+
+ const callback = async () => {
+ await socketPromise;
+
+ socket.off('timeout', onTimeout);
+ socket.off('error', reject);
+
+ if (options.resolveSocket) {
+ resolve({alpnProtocol: socket.alpnProtocol, socket, timeout});
+
+ if (timeout) {
+ await Promise.resolve();
+ socket.emit('timeout');
+ }
+ } else {
+ socket.destroy();
+ resolve({alpnProtocol: socket.alpnProtocol, timeout});
+ }
+ };
+
+ const onTimeout = async () => {
+ timeout = true;
+ callback();
+ };
+
+ const socketPromise = (async () => {
+ try {
+ socket = await connect(options, callback);
+
+ socket.on('error', reject);
+ socket.once('timeout', onTimeout);
+ } catch (error) {
+ reject(error);
+ }
+ })();
+});
+
+
+/***/ }),
+
+/***/ 9004:
+/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
+
+"use strict";
+
+
+const Readable = (__nccwpck_require__(2781).Readable);
+const lowercaseKeys = __nccwpck_require__(9662);
+
+class Response extends Readable {
+ constructor(statusCode, headers, body, url) {
+ if (typeof statusCode !== 'number') {
+ throw new TypeError('Argument `statusCode` should be a number');
+ }
+ if (typeof headers !== 'object') {
+ throw new TypeError('Argument `headers` should be an object');
+ }
+ if (!(body instanceof Buffer)) {
+ throw new TypeError('Argument `body` should be a buffer');
+ }
+ if (typeof url !== 'string') {
+ throw new TypeError('Argument `url` should be a string');
+ }
+
+ super();
+ this.statusCode = statusCode;
+ this.headers = lowercaseKeys(headers);
+ this.body = body;
+ this.url = url;
+ }
+
+ _read() {
+ this.push(this.body);
+ this.push(null);
+ }
+}
+
+module.exports = Response;
+
+
+/***/ }),
+
+/***/ 2113:
+/***/ ((module) => {
+
+"use strict";
+
+
+function reusify (Constructor) {
+ var head = new Constructor()
+ var tail = head
+
+ function get () {
+ var current = head
+
+ if (current.next) {
+ head = current.next
+ } else {
+ head = new Constructor()
+ tail = head
+ }
+
+ current.next = null
+
+ return current
+ }
+
+ function release (obj) {
+ tail.next = obj
+ tail = obj
+ }
+
+ return {
+ get: get,
+ release: release
+ }
+}
+
+module.exports = reusify
+
+
+/***/ }),
+
+/***/ 5288:
+/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
+
+/*! run-parallel. MIT License. Feross Aboukhadijeh */
+module.exports = runParallel
+
+const queueMicrotask = __nccwpck_require__(9795)
+
+function runParallel (tasks, cb) {
+ let results, pending, keys
+ let isSync = true
+
+ if (Array.isArray(tasks)) {
+ results = []
+ pending = tasks.length
+ } else {
+ keys = Object.keys(tasks)
+ results = {}
+ pending = keys.length
+ }
+
+ function done (err) {
+ function end () {
+ if (cb) cb(err, results)
+ cb = null
+ }
+ if (isSync) queueMicrotask(end)
+ else end()
+ }
+
+ function each (i, err, result) {
+ results[i] = result
+ if (--pending === 0 || err) {
+ done(err)
+ }
+ }
+
+ if (!pending) {
+ // empty
+ done(null)
+ } else if (keys) {
+ // object
+ keys.forEach(function (key) {
+ tasks[key](function (err, result) { each(key, err, result) })
+ })
+ } else {
+ // array
+ tasks.forEach(function (task, i) {
+ task(function (err, result) { each(i, err, result) })
+ })
+ }
+
+ isSync = false
+}
+
+
+/***/ }),
+
+/***/ 2043:
+/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => {
+
+;(function (sax) { // wrapper for non-node envs
+ sax.parser = function (strict, opt) { return new SAXParser(strict, opt) }
+ sax.SAXParser = SAXParser
+ sax.SAXStream = SAXStream
+ sax.createStream = createStream
+
+ // When we pass the MAX_BUFFER_LENGTH position, start checking for buffer overruns.
+ // When we check, schedule the next check for MAX_BUFFER_LENGTH - (max(buffer lengths)),
+ // since that's the earliest that a buffer overrun could occur. This way, checks are
+ // as rare as required, but as often as necessary to ensure never crossing this bound.
+ // Furthermore, buffers are only tested at most once per write(), so passing a very
+ // large string into write() might have undesirable effects, but this is manageable by
+ // the caller, so it is assumed to be safe. Thus, a call to write() may, in the extreme
+ // edge case, result in creating at most one complete copy of the string passed in.
+ // Set to Infinity to have unlimited buffers.
+ sax.MAX_BUFFER_LENGTH = 64 * 1024
+
+ var buffers = [
+ 'comment', 'sgmlDecl', 'textNode', 'tagName', 'doctype',
+ 'procInstName', 'procInstBody', 'entity', 'attribName',
+ 'attribValue', 'cdata', 'script'
+ ]
+
+ sax.EVENTS = [
+ 'text',
+ 'processinginstruction',
+ 'sgmldeclaration',
+ 'doctype',
+ 'comment',
+ 'opentagstart',
+ 'attribute',
+ 'opentag',
+ 'closetag',
+ 'opencdata',
+ 'cdata',
+ 'closecdata',
+ 'error',
+ 'end',
+ 'ready',
+ 'script',
+ 'opennamespace',
+ 'closenamespace'
+ ]
+
+ function SAXParser (strict, opt) {
+ if (!(this instanceof SAXParser)) {
+ return new SAXParser(strict, opt)
+ }
+
+ var parser = this
+ clearBuffers(parser)
+ parser.q = parser.c = ''
+ parser.bufferCheckPosition = sax.MAX_BUFFER_LENGTH
+ parser.opt = opt || {}
+ parser.opt.lowercase = parser.opt.lowercase || parser.opt.lowercasetags
+ parser.looseCase = parser.opt.lowercase ? 'toLowerCase' : 'toUpperCase'
+ parser.tags = []
+ parser.closed = parser.closedRoot = parser.sawRoot = false
+ parser.tag = parser.error = null
+ parser.strict = !!strict
+ parser.noscript = !!(strict || parser.opt.noscript)
+ parser.state = S.BEGIN
+ parser.strictEntities = parser.opt.strictEntities
+ parser.ENTITIES = parser.strictEntities ? Object.create(sax.XML_ENTITIES) : Object.create(sax.ENTITIES)
+ parser.attribList = []
+
+ // namespaces form a prototype chain.
+ // it always points at the current tag,
+ // which protos to its parent tag.
+ if (parser.opt.xmlns) {
+ parser.ns = Object.create(rootNS)
+ }
+
+ // mostly just for error reporting
+ parser.trackPosition = parser.opt.position !== false
+ if (parser.trackPosition) {
+ parser.position = parser.line = parser.column = 0
+ }
+ emit(parser, 'onready')
+ }
+
+ if (!Object.create) {
+ Object.create = function (o) {
+ function F () {}
+ F.prototype = o
+ var newf = new F()
+ return newf
+ }
+ }
+
+ if (!Object.keys) {
+ Object.keys = function (o) {
+ var a = []
+ for (var i in o) if (o.hasOwnProperty(i)) a.push(i)
+ return a
+ }
+ }
+
+ function checkBufferLength (parser) {
+ var maxAllowed = Math.max(sax.MAX_BUFFER_LENGTH, 10)
+ var maxActual = 0
+ for (var i = 0, l = buffers.length; i < l; i++) {
+ var len = parser[buffers[i]].length
+ if (len > maxAllowed) {
+ // Text/cdata nodes can get big, and since they're buffered,
+ // we can get here under normal conditions.
+ // Avoid issues by emitting the text node now,
+ // so at least it won't get any bigger.
+ switch (buffers[i]) {
+ case 'textNode':
+ closeText(parser)
+ break
+
+ case 'cdata':
+ emitNode(parser, 'oncdata', parser.cdata)
+ parser.cdata = ''
+ break
+
+ case 'script':
+ emitNode(parser, 'onscript', parser.script)
+ parser.script = ''
+ break
+
+ default:
+ error(parser, 'Max buffer length exceeded: ' + buffers[i])
+ }
+ }
+ maxActual = Math.max(maxActual, len)
+ }
+ // schedule the next check for the earliest possible buffer overrun.
+ var m = sax.MAX_BUFFER_LENGTH - maxActual
+ parser.bufferCheckPosition = m + parser.position
+ }
+
+ function clearBuffers (parser) {
+ for (var i = 0, l = buffers.length; i < l; i++) {
+ parser[buffers[i]] = ''
+ }
+ }
+
+ function flushBuffers (parser) {
+ closeText(parser)
+ if (parser.cdata !== '') {
+ emitNode(parser, 'oncdata', parser.cdata)
+ parser.cdata = ''
+ }
+ if (parser.script !== '') {
+ emitNode(parser, 'onscript', parser.script)
+ parser.script = ''
+ }
+ }
+
+ SAXParser.prototype = {
+ end: function () { end(this) },
+ write: write,
+ resume: function () { this.error = null; return this },
+ close: function () { return this.write(null) },
+ flush: function () { flushBuffers(this) }
+ }
+
+ var Stream
+ try {
+ Stream = (__nccwpck_require__(2781).Stream)
+ } catch (ex) {
+ Stream = function () {}
+ }
+
+ var streamWraps = sax.EVENTS.filter(function (ev) {
+ return ev !== 'error' && ev !== 'end'
+ })
+
+ function createStream (strict, opt) {
+ return new SAXStream(strict, opt)
+ }
+
+ function SAXStream (strict, opt) {
+ if (!(this instanceof SAXStream)) {
+ return new SAXStream(strict, opt)
+ }
+
+ Stream.apply(this)
+
+ this._parser = new SAXParser(strict, opt)
+ this.writable = true
+ this.readable = true
+
+ var me = this
+
+ this._parser.onend = function () {
+ me.emit('end')
+ }
+
+ this._parser.onerror = function (er) {
+ me.emit('error', er)
+
+ // if didn't throw, then means error was handled.
+ // go ahead and clear error, so we can write again.
+ me._parser.error = null
+ }
+
+ this._decoder = null
+
+ streamWraps.forEach(function (ev) {
+ Object.defineProperty(me, 'on' + ev, {
+ get: function () {
+ return me._parser['on' + ev]
+ },
+ set: function (h) {
+ if (!h) {
+ me.removeAllListeners(ev)
+ me._parser['on' + ev] = h
+ return h
+ }
+ me.on(ev, h)
+ },
+ enumerable: true,
+ configurable: false
+ })
+ })
+ }
+
+ SAXStream.prototype = Object.create(Stream.prototype, {
+ constructor: {
+ value: SAXStream
+ }
+ })
+
+ SAXStream.prototype.write = function (data) {
+ if (typeof Buffer === 'function' &&
+ typeof Buffer.isBuffer === 'function' &&
+ Buffer.isBuffer(data)) {
+ if (!this._decoder) {
+ var SD = (__nccwpck_require__(1576).StringDecoder)
+ this._decoder = new SD('utf8')
+ }
+ data = this._decoder.write(data)
+ }
+
+ this._parser.write(data.toString())
+ this.emit('data', data)
+ return true
+ }
+
+ SAXStream.prototype.end = function (chunk) {
+ if (chunk && chunk.length) {
+ this.write(chunk)
+ }
+ this._parser.end()
+ return true
+ }
+
+ SAXStream.prototype.on = function (ev, handler) {
+ var me = this
+ if (!me._parser['on' + ev] && streamWraps.indexOf(ev) !== -1) {
+ me._parser['on' + ev] = function () {
+ var args = arguments.length === 1 ? [arguments[0]] : Array.apply(null, arguments)
+ args.splice(0, 0, ev)
+ me.emit.apply(me, args)
+ }
+ }
+
+ return Stream.prototype.on.call(me, ev, handler)
+ }
+
+ // this really needs to be replaced with character classes.
+ // XML allows all manner of ridiculous numbers and digits.
+ var CDATA = '[CDATA['
+ var DOCTYPE = 'DOCTYPE'
+ var XML_NAMESPACE = 'http://www.w3.org/XML/1998/namespace'
+ var XMLNS_NAMESPACE = 'http://www.w3.org/2000/xmlns/'
+ var rootNS = { xml: XML_NAMESPACE, xmlns: XMLNS_NAMESPACE }
+
+ // http://www.w3.org/TR/REC-xml/#NT-NameStartChar
+ // This implementation works on strings, a single character at a time
// as such, it cannot ever support astral-plane characters (10000-EFFFF)
// without a significant breaking change to either this parser, or the
// JavaScript language. Implementation of an emoji-capable xml parser
// is left as an exercise for the reader.
var nameStart = /[:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]/
- var nameBody = /[:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u00B7\u0300-\u036F\u203F-\u2040.\d-]/
+ var nameBody = /[:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u00B7\u0300-\u036F\u203F-\u2040.\d-]/
+
+ var entityStart = /[#:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]/
+ var entityBody = /[#:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u00B7\u0300-\u036F\u203F-\u2040.\d-]/
+
+ function isWhitespace (c) {
+ return c === ' ' || c === '\n' || c === '\r' || c === '\t'
+ }
+
+ function isQuote (c) {
+ return c === '"' || c === '\''
+ }
+
+ function isAttribEnd (c) {
+ return c === '>' || isWhitespace(c)
+ }
+
+ function isMatch (regex, c) {
+ return regex.test(c)
+ }
+
+ function notMatch (regex, c) {
+ return !isMatch(regex, c)
+ }
+
+ var S = 0
+ sax.STATE = {
+ BEGIN: S++, // leading byte order mark or whitespace
+ BEGIN_WHITESPACE: S++, // leading whitespace
+ TEXT: S++, // general stuff
+ TEXT_ENTITY: S++, // & and such.
+ OPEN_WAKA: S++, // <
+ SGML_DECL: S++, //
+ SCRIPT: S++, //