@pact-foundation/pact-core 19.2.0 → 20.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (91) hide show
  1. package/.editorconfig +13 -0
  2. package/CHANGELOG.md +9 -0
  3. package/biome.jsonc +28 -0
  4. package/{src → dist}/consumer/checkErrors.js +1 -1
  5. package/dist/consumer/checkErrors.js.map +1 -0
  6. package/{src → dist}/consumer/index.d.ts +2 -2
  7. package/{src → dist}/consumer/index.js +9 -1
  8. package/dist/consumer/index.js.map +1 -0
  9. package/{src → dist}/consumer/internals.d.ts +2 -2
  10. package/dist/consumer/internals.js.map +1 -0
  11. package/{src → dist}/consumer/types.d.ts +49 -0
  12. package/dist/consumer/types.js.map +1 -0
  13. package/{src → dist}/ffi/index.d.ts +2 -2
  14. package/{src → dist}/ffi/index.js +17 -1
  15. package/dist/ffi/index.js.map +1 -0
  16. package/{src → dist}/ffi/types.d.ts +5 -5
  17. package/{src → dist}/ffi/types.js +16 -0
  18. package/dist/ffi/types.js.map +1 -0
  19. package/{src → dist}/index.js +4 -5
  20. package/dist/index.js.map +1 -0
  21. package/dist/logger/crashMessage.js.map +1 -0
  22. package/{src → dist}/logger/index.d.ts +1 -1
  23. package/{src → dist}/logger/index.js +2 -0
  24. package/dist/logger/index.js.map +1 -0
  25. package/dist/logger/pino.d.ts +3 -0
  26. package/{src → dist}/logger/pino.js +3 -0
  27. package/dist/logger/pino.js.map +1 -0
  28. package/dist/logger/types.js.map +1 -0
  29. package/{src → dist}/pact-environment.js +1 -1
  30. package/dist/pact-environment.js.map +1 -0
  31. package/{src → dist}/pact.d.ts +2 -2
  32. package/{src → dist}/pact.js +3 -2
  33. package/dist/pact.js.map +1 -0
  34. package/{src → dist}/verifier/argumentMapper/arguments.d.ts +3 -3
  35. package/{src → dist}/verifier/argumentMapper/arguments.js +5 -5
  36. package/dist/verifier/argumentMapper/arguments.js.map +1 -0
  37. package/{src → dist}/verifier/argumentMapper/index.d.ts +2 -2
  38. package/{src → dist}/verifier/argumentMapper/index.js +1 -1
  39. package/dist/verifier/argumentMapper/index.js.map +1 -0
  40. package/{src → dist}/verifier/argumentMapper/types.d.ts +1 -1
  41. package/dist/verifier/argumentMapper/types.js.map +1 -0
  42. package/{src → dist}/verifier/index.d.ts +1 -1
  43. package/{src → dist}/verifier/index.js +4 -0
  44. package/dist/verifier/index.js.map +1 -0
  45. package/{src → dist}/verifier/nativeVerifier.d.ts +1 -1
  46. package/{src → dist}/verifier/nativeVerifier.js +4 -1
  47. package/dist/verifier/nativeVerifier.js.map +1 -0
  48. package/{src → dist}/verifier/types.d.ts +4 -1
  49. package/dist/verifier/types.js.map +1 -0
  50. package/{src → dist}/verifier/validateOptions.d.ts +1 -1
  51. package/{src → dist}/verifier/validateOptions.js +3 -0
  52. package/dist/verifier/validateOptions.js.map +1 -0
  53. package/junit.xml +526 -0
  54. package/package.json +32 -51
  55. package/eslint.config.mjs +0 -68
  56. package/src/consumer/checkErrors.js.map +0 -1
  57. package/src/consumer/index.js.map +0 -1
  58. package/src/consumer/internals.js.map +0 -1
  59. package/src/consumer/types.js.map +0 -1
  60. package/src/ffi/index.js.map +0 -1
  61. package/src/ffi/node-gyp-build.d.ts +0 -1
  62. package/src/ffi/node-gyp-build.js +0 -2
  63. package/src/ffi/node-gyp-build.js.map +0 -1
  64. package/src/ffi/types.js.map +0 -1
  65. package/src/index.js.map +0 -1
  66. package/src/logger/crashMessage.js.map +0 -1
  67. package/src/logger/index.js.map +0 -1
  68. package/src/logger/pino.d.ts +0 -3
  69. package/src/logger/pino.js.map +0 -1
  70. package/src/logger/types.js.map +0 -1
  71. package/src/pact-environment.js.map +0 -1
  72. package/src/pact.js.map +0 -1
  73. package/src/verifier/argumentMapper/arguments.js.map +0 -1
  74. package/src/verifier/argumentMapper/index.js.map +0 -1
  75. package/src/verifier/argumentMapper/types.js.map +0 -1
  76. package/src/verifier/index.js.map +0 -1
  77. package/src/verifier/nativeVerifier.js.map +0 -1
  78. package/src/verifier/types.js.map +0 -1
  79. package/src/verifier/validateOptions.js.map +0 -1
  80. package/tsconfig.test.json +0 -13
  81. package/{src → dist}/consumer/checkErrors.d.ts +0 -0
  82. package/{src → dist}/consumer/internals.js +0 -0
  83. package/{src → dist}/consumer/types.js +0 -0
  84. package/{src → dist}/index.d.ts +4 -4
  85. /package/{src → dist}/logger/crashMessage.d.ts +0 -0
  86. /package/{src → dist}/logger/crashMessage.js +0 -0
  87. /package/{src → dist}/logger/types.d.ts +0 -0
  88. /package/{src → dist}/logger/types.js +0 -0
  89. /package/{src → dist}/pact-environment.d.ts +0 -0
  90. /package/{src → dist}/verifier/argumentMapper/types.js +0 -0
  91. /package/{src → dist}/verifier/types.js +0 -0
package/junit.xml ADDED
@@ -0,0 +1,526 @@
1
+ <?xml version="1.0" encoding="UTF-8" ?>
2
+ <testsuites name="vitest tests" tests="86" failures="0" errors="0" time="4.490004409">
3
+ <testsuite name="src/index.spec.ts" timestamp="2026-05-29T08:42:24.087Z" hostname="runnervm3jyl0" tests="1" failures="0" errors="0" skipped="0" time="0.005587275">
4
+ <testcase classname="src/index.spec.ts" name="Index Spec &gt; Typescript import should work" time="0.002907649">
5
+ </testcase>
6
+ </testsuite>
7
+ <testsuite name="src/pact.spec.ts" timestamp="2026-05-29T08:42:24.088Z" hostname="runnervm3jyl0" tests="5" failures="0" errors="0" skipped="0" time="0.009123635">
8
+ <testcase classname="src/pact.spec.ts" name="Pact Spec &gt; Set Log Level &gt; when setting a log level &gt; should be able to set log level &apos;trace&apos;" time="0.00215522">
9
+ </testcase>
10
+ <testcase classname="src/pact.spec.ts" name="Pact Spec &gt; Set Log Level &gt; when setting a log level &gt; should be able to set log level &apos;debug&apos;" time="0.000471016">
11
+ </testcase>
12
+ <testcase classname="src/pact.spec.ts" name="Pact Spec &gt; Set Log Level &gt; when setting a log level &gt; should be able to set log level &apos;info&apos;" time="0.000379817">
13
+ </testcase>
14
+ <testcase classname="src/pact.spec.ts" name="Pact Spec &gt; Set Log Level &gt; when setting a log level &gt; should be able to set log level &apos;warn&apos;" time="0.000412798">
15
+ </testcase>
16
+ <testcase classname="src/pact.spec.ts" name="Pact Spec &gt; Set Log Level &gt; when setting a log level &gt; should be able to set log level &apos;error&apos;" time="0.000383303">
17
+ </testcase>
18
+ </testsuite>
19
+ <testsuite name="test/consumer.integration.spec.ts" timestamp="2026-05-29T08:42:24.090Z" hostname="runnervm3jyl0" tests="8" failures="0" errors="0" skipped="0" time="0.76387797">
20
+ <testcase classname="test/consumer.integration.spec.ts" name="FFI integration test for the HTTP Consumer API &gt; with matching rules &gt; generates a pact with success" time="0.053607202">
21
+ <system-out>
22
+ [08:42:21.700] [32mINFO[39m (2839): [36m0.5.4: pact native library successfully found, and the correct version[39m
23
+
24
+
25
+ []
26
+
27
+ </system-out>
28
+ </testcase>
29
+ <testcase classname="test/consumer.integration.spec.ts" name="FFI integration test for the HTTP Consumer API &gt; with JSON data &gt; generates a pact with success" time="0.009487227">
30
+ </testcase>
31
+ <testcase classname="test/consumer.integration.spec.ts" name="FFI integration test for the HTTP Consumer API &gt; with JSON data &gt; generates a pact with failure" time="0.006250595">
32
+ </testcase>
33
+ <testcase classname="test/consumer.integration.spec.ts" name="FFI integration test for the HTTP Consumer API &gt; with a pending interaction &gt; writes pending state to the pact file" time="0.003161921">
34
+ </testcase>
35
+ <testcase classname="test/consumer.integration.spec.ts" name="FFI integration test for the HTTP Consumer API &gt; with interaction comments and test name &gt; writes comments and interaction test name to the pact file" time="0.003909549">
36
+ </testcase>
37
+ <testcase classname="test/consumer.integration.spec.ts" name="FFI integration test for the HTTP Consumer API &gt; with binary data &gt; generates a pact with success" time="0.005164939">
38
+ </testcase>
39
+ <testcase classname="test/consumer.integration.spec.ts" name="FFI integration test for the HTTP Consumer API &gt; using a plugin (protobufs) &gt; generates a pact with success" time="0.629412981">
40
+ </testcase>
41
+ <testcase classname="test/consumer.integration.spec.ts" name="FFI integration test for the HTTP Consumer API &gt; with multipart data &gt; generates a pact with success" time="0.049480598">
42
+ <system-out>
43
+ []
44
+
45
+ </system-out>
46
+ </testcase>
47
+ </testsuite>
48
+ <testsuite name="test/matt.consumer.integration.spec.ts" timestamp="2026-05-29T08:42:24.092Z" hostname="runnervm3jyl0" tests="2" failures="0" errors="0" skipped="0" time="1.137921011">
49
+ <testcase classname="test/matt.consumer.integration.spec.ts" name="MATT protocol test &gt; HTTP test &gt; returns a valid MATT message over HTTP" time="0.597826812">
50
+ <system-out>
51
+ [08:42:22.794] [32mINFO[39m (2975): [36m0.5.4: pact native library successfully found, and the correct version[39m
52
+
53
+
54
+ </system-out>
55
+ </testcase>
56
+ <testcase classname="test/matt.consumer.integration.spec.ts" name="MATT protocol test &gt; TCP Messages &gt; with MATT protocol &gt; generates a pact with success" time="0.536916096">
57
+ </testcase>
58
+ </testsuite>
59
+ <testsuite name="test/matt.provider.integration.spec.ts" timestamp="2026-05-29T08:42:24.092Z" hostname="runnervm3jyl0" tests="1" failures="0" errors="0" skipped="0" time="0.135198631">
60
+ <testcase classname="test/matt.provider.integration.spec.ts" name="MATT protocol test &gt; HTTP and TCP Provider &gt; returns a valid MATT message over HTTP and TCP" time="0.132991315">
61
+ <system-out>
62
+ [08:42:23.510] [32mINFO[39m (3098): [36mpact-core@19.2.0: Verifying Pact Files[39m
63
+
64
+ [08:42:23.519] [32mINFO[39m (3098): [36m0.5.4: pact native library successfully found, and the correct version[39m
65
+
66
+
67
+ [08:42:23.630] [32mINFO[39m (3098): [36mpact-core@19.2.0: Verification successful[39m
68
+
69
+
70
+ </system-out>
71
+ </testcase>
72
+ </testsuite>
73
+ <testsuite name="test/message.integration.spec.ts" timestamp="2026-05-29T08:42:24.093Z" hostname="runnervm3jyl0" tests="8" failures="0" errors="0" skipped="0" time="0.640900397">
74
+ <testcase classname="test/message.integration.spec.ts" name="FFI integration test for the Message Consumer API &gt; Asynchronous Messages &gt; with JSON data &gt; generates a pact with success" time="0.0070395">
75
+ </testcase>
76
+ <testcase classname="test/message.integration.spec.ts" name="FFI integration test for the Message Consumer API &gt; Asynchronous Messages &gt; with JSON data &gt; writes pending state to the pact file" time="0.001069816">
77
+ </testcase>
78
+ <testcase classname="test/message.integration.spec.ts" name="FFI integration test for the Message Consumer API &gt; Asynchronous Messages &gt; with JSON data &gt; writes comments and interaction test name for async message" time="0.001323417">
79
+ </testcase>
80
+ <testcase classname="test/message.integration.spec.ts" name="FFI integration test for the Message Consumer API &gt; Asynchronous Messages &gt; with binary data &gt; generates a pact with success" time="0.001612907">
81
+ </testcase>
82
+ <testcase classname="test/message.integration.spec.ts" name="FFI integration test for the Message Consumer API &gt; Synchronous Messages &gt; with JSON data &gt; generates a pact with success" time="0.006396496">
83
+ </testcase>
84
+ <testcase classname="test/message.integration.spec.ts" name="FFI integration test for the Message Consumer API &gt; Synchronous Messages &gt; with JSON data &gt; writes pending state to the pact file" time="0.001034961">
85
+ </testcase>
86
+ <testcase classname="test/message.integration.spec.ts" name="FFI integration test for the Message Consumer API &gt; Synchronous Messages &gt; with JSON data &gt; writes comments and interaction test name for sync message" time="0.001624296">
87
+ </testcase>
88
+ <testcase classname="test/message.integration.spec.ts" name="FFI integration test for the Message Consumer API &gt; Synchronous Messages &gt; with plugin contents (gRPC) &gt; generates a pact with success" time="0.608432764">
89
+ </testcase>
90
+ </testsuite>
91
+ <testsuite name="test/plugin-verifier.integration.spec.ts" timestamp="2026-05-29T08:42:24.095Z" hostname="runnervm3jyl0" tests="2" failures="0" errors="0" skipped="0" time="0.224454551">
92
+ <testcase classname="test/plugin-verifier.integration.spec.ts" name="Plugin Verifier Integration Spec &gt; plugin tests &gt; grpc interaction &gt; should verify the gRPC interactions" time="0.167561002">
93
+ <system-out>
94
+ [08:42:22.962] [32mINFO[39m (2992): [36mpact-core@19.2.0: Verifying Pact Files[39m
95
+
96
+ [08:42:22.967] [34mDEBUG[39m (2992): [36mpact-core@19.2.0: binding path #0: : attempting to load native module from:
97
+
98
+ - /home/runner/work/pact-js-core/pact-js-core/prebuilds/linux-x64
99
+ source: pact-js-core binding lookup
100
+
101
+ - You can override via PACT_PREBUILD_LOCATION
102
+ [39m
103
+
104
+ [08:42:22.968] [34mDEBUG[39m (2992): [36mpact-core@19.2.0: binding path #1: : attempting to load native module from:
105
+
106
+ - /home/runner/work/pact-js-core/pact-js-core/@pact-foundation/pact-core-linux-x64-glibc/prebuilds/linux-x64
107
+ source: pact-js-core binding lookup
108
+
109
+ - You can override via PACT_PREBUILD_LOCATION
110
+ [39m
111
+
112
+ [08:42:22.971] [32mINFO[39m (2992): [36m0.5.4: pact native library successfully found, and the correct version[39m
113
+
114
+ [08:42:22.971] [34mDEBUG[39m (2992): [36mpact-core@19.2.0: Initialising native core at log level &apos;debug&apos;[39m
115
+
116
+ [08:42:22.972] [34mDEBUG[39m (2992): [36mpact-core@19.2.0: the optional ffi function &apos;pactffiVerifierSetFilterInfo&apos; was not executed as it had non-fatal validation errors: None of PACT_DESCRIPTION, PACT_PROVIDER_STATE or PACT_PROVIDER_NO_STATE were set in the environment[39m
117
+
118
+ [08:42:22.972] [34mDEBUG[39m (2992): [36mpact-core@19.2.0: the optional ffi function &apos;pactffiVerifierSetProviderState&apos; was not executed as it had non-fatal validation errors: No failIfNoPactsFound option provided[39m
119
+
120
+ [08:42:22.972] [34mDEBUG[39m (2992): [36mpact-core@19.2.0: the optional ffi function &apos;pactffiVerifierSetPublishOptions&apos; was not executed as it had non-fatal validation errors: No publishVerificationResult option / PACT_BROKER_PUBLISH_VERIFICATION_RESULTS set, or no providerVersion option[39m
121
+
122
+ [08:42:22.972] [34mDEBUG[39m (2992): [36mpact-core@19.2.0: the optional ffi function &apos;pactffiVerifierSetConsumerFilters&apos; was not executed as it had non-fatal validation errors: Either no consumerFilters option provided, or the array was empty[39m
123
+
124
+ [08:42:22.973] [34mDEBUG[39m (2992): [36mpact-core@19.2.0: the optional ffi function &apos;pactffiVerifierSetFailIfNoPactsFound&apos; was not executed as it had non-fatal validation errors: No failIfNoPactsFound option provided[39m
125
+
126
+ [08:42:22.973] [34mDEBUG[39m (2992): [36mpact-core@19.2.0: the optional ffi function &apos;pactffiVerifierAddCustomHeader&apos; was not executed as it had non-fatal validation errors: No customProviderHeaders option provided[39m
127
+
128
+ [08:42:22.973] [34mDEBUG[39m (2992): [36mpact-core@19.2.0: checking source type of given pactUrl: /home/runner/work/pact-js-core/pact-js-core/test/integration/grpc/grpc.json[39m
129
+
130
+ [08:42:22.974] [34mDEBUG[39m (2992): [36mpact-core@19.2.0: adding /home/runner/work/pact-js-core/pact-js-core/test/integration/grpc/grpc.json as File source[39m
131
+
132
+ [08:42:22.974] [34mDEBUG[39m (2992): [36mpact-core@19.2.0: the optional ffi function &apos;pactffiVerifierBrokerSourceWithSelectors&apos; was not executed as it had non-fatal validation errors: No pactBrokerUrl option / PACT_BROKER_BASE_URL set, or no provider option set[39m
133
+
134
+
135
+ Server running at http://127.0.0.1:50052
136
+
137
+ [08:42:23.125] [34mDEBUG[39m (2992): [36mpact-core@19.2.0: shutting down verifier with handle 0[39m
138
+
139
+ [08:42:23.126] [34mDEBUG[39m (2992): [36mpact-core@19.2.0: response from verifier: null, 0[39m
140
+
141
+ [08:42:23.126] [32mINFO[39m (2992): [36mpact-core@19.2.0: Verification successful[39m
142
+
143
+
144
+ </system-out>
145
+ </testcase>
146
+ <testcase classname="test/plugin-verifier.integration.spec.ts" name="Plugin Verifier Integration Spec &gt; plugin tests &gt; grpc interaction &gt; runs the grpc client" time="0.023592272">
147
+ <system-out>
148
+ { name: [32m&apos;A place&apos;[39m }
149
+
150
+ </system-out>
151
+ </testcase>
152
+ </testsuite>
153
+ <testsuite name="test/verifier.integration.spec.ts" timestamp="2026-05-29T08:42:24.095Z" hostname="runnervm3jyl0" tests="17" failures="0" errors="0" skipped="0" time="1.531460762">
154
+ <testcase classname="test/verifier.integration.spec.ts" name="Verifier Integration Spec &gt; when given a successful contract &gt; with spaces in the file path &gt; should return a successful promise" time="0.084619899">
155
+ <system-out>
156
+ [08:42:21.901] [32mINFO[39m (2862): [36mpact-core@19.2.0: Verifying Pact Files[39m
157
+
158
+ [08:42:21.904] [34mDEBUG[39m (2862): [36mpact-core@19.2.0: binding path #0: : attempting to load native module from:
159
+
160
+ - /home/runner/work/pact-js-core/pact-js-core/prebuilds/linux-x64
161
+ source: pact-js-core binding lookup
162
+
163
+ - You can override via PACT_PREBUILD_LOCATION
164
+ [39m
165
+
166
+ [08:42:21.905] [34mDEBUG[39m (2862): [36mpact-core@19.2.0: binding path #1: : attempting to load native module from:
167
+
168
+ - /home/runner/work/pact-js-core/pact-js-core/@pact-foundation/pact-core-linux-x64-glibc/prebuilds/linux-x64
169
+ source: pact-js-core binding lookup
170
+
171
+ - You can override via PACT_PREBUILD_LOCATION
172
+ [39m
173
+
174
+ [08:42:21.907] [32mINFO[39m (2862): [36m0.5.4: pact native library successfully found, and the correct version[39m
175
+
176
+ [08:42:21.907] [34mDEBUG[39m (2862): [36mpact-core@19.2.0: Initialising native core at log level &apos;debug&apos;[39m
177
+
178
+ [08:42:21.908] [34mDEBUG[39m (2862): [36mpact-core@19.2.0: the optional ffi function &apos;pactffiVerifierSetFilterInfo&apos; was not executed as it had non-fatal validation errors: None of PACT_DESCRIPTION, PACT_PROVIDER_STATE or PACT_PROVIDER_NO_STATE were set in the environment[39m
179
+
180
+ [08:42:21.909] [34mDEBUG[39m (2862): [36mpact-core@19.2.0: the optional ffi function &apos;pactffiVerifierSetProviderState&apos; was not executed as it had non-fatal validation errors: No failIfNoPactsFound option provided[39m
181
+
182
+ [08:42:21.909] [34mDEBUG[39m (2862): [36mpact-core@19.2.0: the optional ffi function &apos;pactffiVerifierSetPublishOptions&apos; was not executed as it had non-fatal validation errors: No publishVerificationResult option / PACT_BROKER_PUBLISH_VERIFICATION_RESULTS set, or no providerVersion option[39m
183
+
184
+ [08:42:21.909] [34mDEBUG[39m (2862): [36mpact-core@19.2.0: the optional ffi function &apos;pactffiVerifierSetConsumerFilters&apos; was not executed as it had non-fatal validation errors: Either no consumerFilters option provided, or the array was empty[39m
185
+
186
+ [08:42:21.909] [34mDEBUG[39m (2862): [36mpact-core@19.2.0: the optional ffi function &apos;pactffiVerifierSetFailIfNoPactsFound&apos; was not executed as it had non-fatal validation errors: No failIfNoPactsFound option provided[39m
187
+
188
+ [08:42:21.910] [34mDEBUG[39m (2862): [36mpact-core@19.2.0: the optional ffi function &apos;pactffiVerifierAddCustomHeader&apos; was not executed as it had non-fatal validation errors: No customProviderHeaders option provided[39m
189
+
190
+ [08:42:21.910] [34mDEBUG[39m (2862): [36mpact-core@19.2.0: checking source type of given pactUrl: /home/runner/work/pact-js-core/pact-js-core/test/integration/me-they-weird path-success.json[39m
191
+
192
+ [08:42:21.911] [34mDEBUG[39m (2862): [36mpact-core@19.2.0: adding /home/runner/work/pact-js-core/pact-js-core/test/integration/me-they-weird path-success.json as File source[39m
193
+
194
+ [08:42:21.911] [34mDEBUG[39m (2862): [36mpact-core@19.2.0: the optional ffi function &apos;pactffiVerifierBrokerSourceWithSelectors&apos; was not executed as it had non-fatal validation errors: No pactBrokerUrl option / PACT_BROKER_BASE_URL set, or no provider option set[39m
195
+
196
+ [08:42:21.911] [34mDEBUG[39m (2862): [36mpact-core@19.2.0: the optional ffi function &apos;pactffiVerifierAddProviderTransport&apos; was not executed as it had non-fatal validation errors: No additional provider transports provided[39m
197
+
198
+
199
+ [08:42:21.982] [34mDEBUG[39m (2862): [36mpact-core@19.2.0: shutting down verifier with handle 0[39m
200
+
201
+ [08:42:21.982] [34mDEBUG[39m (2862): [36mpact-core@19.2.0: response from verifier: null, 0[39m
202
+
203
+ [08:42:21.983] [32mINFO[39m (2862): [36mpact-core@19.2.0: Verification successful[39m
204
+
205
+
206
+ </system-out>
207
+ </testcase>
208
+ <testcase classname="test/verifier.integration.spec.ts" name="Verifier Integration Spec &gt; when given a successful contract &gt; with spaces in the file path &gt; with some broker args but no broker URL &gt; should return a successful promise" time="0.057559952">
209
+ <system-out>
210
+ [08:42:21.985] [32mINFO[39m (2862): [36mpact-core@19.2.0: Verifying Pact Files[39m
211
+
212
+ [08:42:21.985] [34mDEBUG[39m (2862): [36mpact-core@19.2.0: the optional ffi function &apos;pactffiVerifierSetFilterInfo&apos; was not executed as it had non-fatal validation errors: None of PACT_DESCRIPTION, PACT_PROVIDER_STATE or PACT_PROVIDER_NO_STATE were set in the environment[39m
213
+
214
+ [08:42:21.985] [34mDEBUG[39m (2862): [36mpact-core@19.2.0: the optional ffi function &apos;pactffiVerifierSetProviderState&apos; was not executed as it had non-fatal validation errors: No failIfNoPactsFound option provided[39m
215
+
216
+ [08:42:21.985] [34mDEBUG[39m (2862): [36mpact-core@19.2.0: the optional ffi function &apos;pactffiVerifierSetConsumerFilters&apos; was not executed as it had non-fatal validation errors: Either no consumerFilters option provided, or the array was empty[39m
217
+
218
+ [08:42:21.986] [34mDEBUG[39m (2862): [36mpact-core@19.2.0: the optional ffi function &apos;pactffiVerifierSetFailIfNoPactsFound&apos; was not executed as it had non-fatal validation errors: No failIfNoPactsFound option provided[39m
219
+
220
+ [08:42:21.986] [34mDEBUG[39m (2862): [36mpact-core@19.2.0: the optional ffi function &apos;pactffiVerifierAddCustomHeader&apos; was not executed as it had non-fatal validation errors: No customProviderHeaders option provided[39m
221
+
222
+ [08:42:21.986] [34mDEBUG[39m (2862): [36mpact-core@19.2.0: checking source type of given pactUrl: /home/runner/work/pact-js-core/pact-js-core/test/integration/me-they-weird path-success.json[39m
223
+
224
+ [08:42:21.986] [34mDEBUG[39m (2862): [36mpact-core@19.2.0: adding /home/runner/work/pact-js-core/pact-js-core/test/integration/me-they-weird path-success.json as File source[39m
225
+
226
+ [08:42:21.986] [34mDEBUG[39m (2862): [36mpact-core@19.2.0: the optional ffi function &apos;pactffiVerifierBrokerSourceWithSelectors&apos; was not executed as it had non-fatal validation errors: No pactBrokerUrl option / PACT_BROKER_BASE_URL set, or no provider option set[39m
227
+
228
+ [08:42:21.986] [34mDEBUG[39m (2862): [36mpact-core@19.2.0: the optional ffi function &apos;pactffiVerifierAddProviderTransport&apos; was not executed as it had non-fatal validation errors: No additional provider transports provided[39m
229
+
230
+
231
+ [08:42:22.040] [34mDEBUG[39m (2862): [36mpact-core@19.2.0: shutting down verifier with handle 1[39m
232
+
233
+ [08:42:22.041] [34mDEBUG[39m (2862): [36mpact-core@19.2.0: response from verifier: null, 0[39m
234
+
235
+ [08:42:22.041] [32mINFO[39m (2862): [36mpact-core@19.2.0: Verification successful[39m
236
+
237
+
238
+ </system-out>
239
+ </testcase>
240
+ <testcase classname="test/verifier.integration.spec.ts" name="Verifier Integration Spec &gt; when given a successful contract &gt; without provider states &gt; should return a successful promise with detailed JSON results" time="0.058958505">
241
+ <system-out>
242
+ [08:42:22.042] [32mINFO[39m (2862): [36mpact-core@19.2.0: Verifying Pact Files[39m
243
+
244
+
245
+ [08:42:22.098] [32mINFO[39m (2862): [36mpact-core@19.2.0: Verification successful[39m
246
+
247
+
248
+ </system-out>
249
+ </testcase>
250
+ <testcase classname="test/verifier.integration.spec.ts" name="Verifier Integration Spec &gt; when given a successful contract &gt; with Provider States &gt; should return a successful promise with detailed JSON results" time="0.080817703">
251
+ <system-out>
252
+ [08:42:22.101] [32mINFO[39m (2862): [36mpact-core@19.2.0: Verifying Pact Files[39m
253
+
254
+
255
+ [08:42:22.181] [32mINFO[39m (2862): [36mpact-core@19.2.0: Verification successful[39m
256
+
257
+
258
+ </system-out>
259
+ </testcase>
260
+ <testcase classname="test/verifier.integration.spec.ts" name="Verifier Integration Spec &gt; when given a successful contract &gt; with POST data &gt; should return a successful promise" time="0.056860924">
261
+ <system-out>
262
+ [08:42:22.182] [32mINFO[39m (2862): [36mpact-core@19.2.0: Verifying Pact Files[39m
263
+
264
+
265
+ [08:42:22.238] [32mINFO[39m (2862): [36mpact-core@19.2.0: Verification successful[39m
266
+
267
+
268
+ </system-out>
269
+ </testcase>
270
+ <testcase classname="test/verifier.integration.spec.ts" name="Verifier Integration Spec &gt; when given a successful contract &gt; with POST data and regex validation &gt; should return a successful promise" time="0.059803464">
271
+ <system-out>
272
+ [08:42:22.239] [32mINFO[39m (2862): [36mpact-core@19.2.0: Verifying Pact Files[39m
273
+
274
+
275
+ [08:42:22.298] [32mINFO[39m (2862): [36mpact-core@19.2.0: Verification successful[39m
276
+
277
+
278
+ </system-out>
279
+ </testcase>
280
+ <testcase classname="test/verifier.integration.spec.ts" name="Verifier Integration Spec &gt; when given a successful contract &gt; with monkeypatch file specified &gt; should return a successful promise" time="0.067357935">
281
+ <system-out>
282
+ [08:42:22.299] [33mWARN[39m (2862): [36mpact-core@19.2.0: monkeypatch is deprecated and no longer has any effect[39m
283
+
284
+ [08:42:22.299] [32mINFO[39m (2862): [36mpact-core@19.2.0: Verifying Pact Files[39m
285
+
286
+
287
+ [08:42:22.365] [32mINFO[39m (2862): [36mpact-core@19.2.0: Verification successful[39m
288
+
289
+
290
+ </system-out>
291
+ </testcase>
292
+ <testcase classname="test/verifier.integration.spec.ts" name="Verifier Integration Spec &gt; when given a failing contract &gt; should return a rejected promise with detailed JSON results in the error message" time="0.067242496">
293
+ <system-out>
294
+ [08:42:22.366] [32mINFO[39m (2862): [36mpact-core@19.2.0: Verifying Pact Files[39m
295
+
296
+
297
+ [08:42:22.432] [31mERROR[39m (2862): [36mpact-core@19.2.0: Verification unsuccessful[39m
298
+
299
+
300
+ </system-out>
301
+ </testcase>
302
+ <testcase classname="test/verifier.integration.spec.ts" name="Verifier Integration Spec &gt; when given multiple successful API calls in a contract &gt; should return a successful promise" time="0.132984709">
303
+ <system-out>
304
+ [08:42:22.434] [32mINFO[39m (2862): [36mpact-core@19.2.0: Verifying Pact Files[39m
305
+
306
+
307
+ [08:42:22.566] [32mINFO[39m (2862): [36mpact-core@19.2.0: Verification successful[39m
308
+
309
+
310
+ </system-out>
311
+ </testcase>
312
+ <testcase classname="test/verifier.integration.spec.ts" name="Verifier Integration Spec &gt; when given multiple contracts &gt; from a local file &gt; should return a successful promise" time="0.184381647">
313
+ <system-out>
314
+ [08:42:22.567] [32mINFO[39m (2862): [36mpact-core@19.2.0: Verifying Pact Files[39m
315
+
316
+
317
+ [08:42:22.750] [32mINFO[39m (2862): [36mpact-core@19.2.0: Verification successful[39m
318
+
319
+
320
+ </system-out>
321
+ </testcase>
322
+ <testcase classname="test/verifier.integration.spec.ts" name="Verifier Integration Spec &gt; when given multiple contracts &gt; from a Pact Broker &gt; without authentication &gt; should return a successful promise" time="0.140928887">
323
+ <system-out>
324
+ [08:42:22.751] [32mINFO[39m (2862): [36mpact-core@19.2.0: Verifying Pact Files[39m
325
+
326
+
327
+ [08:42:22.891] [32mINFO[39m (2862): [36mpact-core@19.2.0: Verification successful[39m
328
+
329
+
330
+ </system-out>
331
+ </testcase>
332
+ <testcase classname="test/verifier.integration.spec.ts" name="Verifier Integration Spec &gt; when given multiple contracts &gt; from a Pact Broker &gt; with authentication &gt; and a valid user/password &gt; should return a successful promise" time="0.121380515">
333
+ <system-out>
334
+ [08:42:22.892] [32mINFO[39m (2862): [36mpact-core@19.2.0: Verifying Pact Files[39m
335
+
336
+
337
+ [08:42:23.013] [32mINFO[39m (2862): [36mpact-core@19.2.0: Verification successful[39m
338
+
339
+
340
+ </system-out>
341
+ </testcase>
342
+ <testcase classname="test/verifier.integration.spec.ts" name="Verifier Integration Spec &gt; when given multiple contracts &gt; from a Pact Broker &gt; with authentication &gt; and an invalid user/password &gt; should return a rejected promise" time="0.081396867">
343
+ <system-out>
344
+ [08:42:23.014] [32mINFO[39m (2862): [36mpact-core@19.2.0: Verifying Pact Files[39m
345
+
346
+
347
+ [08:42:23.094] [31mERROR[39m (2862): [36mpact-core@19.2.0: Verification unsuccessful[39m
348
+
349
+
350
+ </system-out>
351
+ </testcase>
352
+ <testcase classname="test/verifier.integration.spec.ts" name="Verifier Integration Spec &gt; when given multiple contracts &gt; from a Pact Broker &gt; with authentication &gt; and an invalid user/password &gt; should return the verifier error output in the returned promise" time="0.066380191">
353
+ <system-out>
354
+ [08:42:23.095] [32mINFO[39m (2862): [36mpact-core@19.2.0: Verifying Pact Files[39m
355
+
356
+
357
+ [08:42:23.161] [31mERROR[39m (2862): [36mpact-core@19.2.0: Verification unsuccessful[39m
358
+
359
+
360
+ </system-out>
361
+ </testcase>
362
+ <testcase classname="test/verifier.integration.spec.ts" name="Verifier Integration Spec &gt; when publishing verification results to a Pact Broker &gt; and there is a valid Pact file with spaces in the path &gt; should return a successful promise" time="0.083522517">
363
+ <system-out>
364
+ [08:42:23.162] [32mINFO[39m (2862): [36mpact-core@19.2.0: Verifying Pact Files[39m
365
+
366
+
367
+ [08:42:23.245] [32mINFO[39m (2862): [36mpact-core@19.2.0: Verification successful[39m
368
+
369
+
370
+ </system-out>
371
+ </testcase>
372
+ <testcase classname="test/verifier.integration.spec.ts" name="Verifier Integration Spec &gt; when publishing verification results to a Pact Broker &gt; and there is a valid verification HAL link in the Pact file &gt; should return a successful promise" time="0.080546248">
373
+ <system-out>
374
+ [08:42:23.246] [32mINFO[39m (2862): [36mpact-core@19.2.0: Verifying Pact Files[39m
375
+
376
+
377
+ [08:42:23.325] [32mINFO[39m (2862): [36mpact-core@19.2.0: Verification successful[39m
378
+
379
+
380
+ </system-out>
381
+ </testcase>
382
+ <testcase classname="test/verifier.integration.spec.ts" name="Verifier Integration Spec &gt; when publishing verification results to a Pact Broker &gt; and there is an invalid verification HAL link in the Pact file &gt; should fail with an error" time="0.091124402">
383
+ <system-out>
384
+ [08:42:23.326] [32mINFO[39m (2862): [36mpact-core@19.2.0: Verifying Pact Files[39m
385
+
386
+
387
+ [08:42:23.417] [32mINFO[39m (2862): [36mpact-core@19.2.0: Verification successful[39m
388
+
389
+
390
+ </system-out>
391
+ </testcase>
392
+ </testsuite>
393
+ <testsuite name="src/consumer/checkErrors.spec.ts" timestamp="2026-05-29T08:42:24.102Z" hostname="runnervm3jyl0" tests="2" failures="0" errors="0" skipped="0" time="0.005138851">
394
+ <testcase classname="src/consumer/checkErrors.spec.ts" name="checkErrors &gt; treats numeric status code 0 as success" time="0.003003799">
395
+ </testcase>
396
+ <testcase classname="src/consumer/checkErrors.spec.ts" name="checkErrors &gt; treats non-zero numeric status as failure" time="0.000289239">
397
+ </testcase>
398
+ </testsuite>
399
+ <testsuite name="src/verifier/validateOptions.spec.ts" timestamp="2026-05-29T08:42:24.102Z" hostname="runnervm3jyl0" tests="40" failures="0" errors="0" skipped="0" time="0.036341326">
400
+ <testcase classname="src/verifier/validateOptions.spec.ts" name="Verifier argument validator &gt; when automatically finding pacts from a broker &gt; when not given --pact-urls and only --pact-broker-url &gt; should fail with an error because provider is missing" time="0.01041124">
401
+ <system-out>
402
+ [08:42:21.499] [31mERROR[39m (2840): [36mpactBrokerUrl requires the following properties: provider[39m
403
+
404
+
405
+ </system-out>
406
+ </testcase>
407
+ <testcase classname="src/verifier/validateOptions.spec.ts" name="Verifier argument validator &gt; when automatically finding pacts from a broker &gt; when given valid arguments &gt; should return a Verifier object" time="0.001226788">
408
+ </testcase>
409
+ <testcase classname="src/verifier/validateOptions.spec.ts" name="Verifier argument validator &gt; when automatically finding pacts from a broker &gt; when given an unknown array argument &gt; should return a Verifier object" time="0.000362914">
410
+ </testcase>
411
+ <testcase classname="src/verifier/validateOptions.spec.ts" name="Verifier argument validator &gt; when not given --pact-urls or --provider-base-url &gt; should fail with an error" time="0.000371109">
412
+ </testcase>
413
+ <testcase classname="src/verifier/validateOptions.spec.ts" name="Verifier argument validator &gt; when given an invalid timeout &gt; should fail with an error" time="0.000885514">
414
+ </testcase>
415
+ <testcase classname="src/verifier/validateOptions.spec.ts" name="Verifier argument validator &gt; when given remote Pact URLs that don&apos;t exist &gt; should pass through to the Pact Verifier regardless" time="0.000376299">
416
+ </testcase>
417
+ <testcase classname="src/verifier/validateOptions.spec.ts" name="Verifier argument validator &gt; when given local Pact URLs that do exist &gt; should not fail" time="0.00033928">
418
+ </testcase>
419
+ <testcase classname="src/verifier/validateOptions.spec.ts" name="Verifier argument validator &gt; when requested to publish verification results to a Pact Broker &gt; and specifies a provider version &gt; should pass through to the Pact Verifier" time="0.000416205">
420
+ </testcase>
421
+ <testcase classname="src/verifier/validateOptions.spec.ts" name="Verifier argument validator &gt; when requested to publish verification results to a Pact Broker &gt; and does not specify provider version &gt; should fail with an error" time="0.001246996">
422
+ <system-out>
423
+ [08:42:21.510] [31mERROR[39m (2840): [36mpublishVerificationResult requires the following properties: providerVersion[39m
424
+
425
+
426
+ </system-out>
427
+ </testcase>
428
+ <testcase classname="src/verifier/validateOptions.spec.ts" name="Verifier argument validator &gt; when given the correct arguments &gt; should return a Verifier object" time="0.000271434">
429
+ </testcase>
430
+ <testcase classname="src/verifier/validateOptions.spec.ts" name="Verifier argument validator &gt; when using includeWipPactsSince &gt; should accept a non-empty string" time="0.000276764">
431
+ </testcase>
432
+ <testcase classname="src/verifier/validateOptions.spec.ts" name="Verifier argument validator &gt; when using includeWipPactsSince &gt; should not accept an empty string" time="0.000288676">
433
+ </testcase>
434
+ <testcase classname="src/verifier/validateOptions.spec.ts" name="Verifier argument validator &gt; when an using format option &gt; should work with either &apos;json&apos; or &apos;xml&apos;" time="0.001649413">
435
+ <system-out>
436
+ [08:42:21.512] [33mWARN[39m (2840): [36mpact-core@19.2.0: format is deprecated and no longer has any effect[39m
437
+
438
+ [08:42:21.513] [33mWARN[39m (2840): [36mpact-core@19.2.0: format is deprecated and no longer has any effect[39m
439
+
440
+ [08:42:21.513] [33mWARN[39m (2840): [36mpact-core@19.2.0: format is deprecated and no longer has any effect[39m
441
+
442
+
443
+ </system-out>
444
+ </testcase>
445
+ <testcase classname="src/verifier/validateOptions.spec.ts" name="Verifier argument validator &gt; when an using format option &gt; should work with a case insensitive string" time="0.000492134">
446
+ <system-out>
447
+ [08:42:21.514] [33mWARN[39m (2840): [36mpact-core@19.2.0: format is deprecated and no longer has any effect[39m
448
+
449
+
450
+ </system-out>
451
+ </testcase>
452
+ <testcase classname="src/verifier/validateOptions.spec.ts" name="Verifier argument validator &gt; when pactBrokerUrl is not provided &gt; should not fail" time="0.000299476">
453
+ </testcase>
454
+ <testcase classname="src/verifier/validateOptions.spec.ts" name="Verifier argument validator &gt; when pactBrokerUrl is provided &gt; should not fail" time="0.000762636">
455
+ </testcase>
456
+ <testcase classname="src/verifier/validateOptions.spec.ts" name="Verifier argument validator &gt; when consumerVersionTags is not provided &gt; should not fail" time="0.000367753">
457
+ </testcase>
458
+ <testcase classname="src/verifier/validateOptions.spec.ts" name="Verifier argument validator &gt; when consumerVersionTags is provided as an array &gt; should not fail" time="0.000496322">
459
+ </testcase>
460
+ <testcase classname="src/verifier/validateOptions.spec.ts" name="Verifier argument validator &gt; when providerVersionTags is not provided &gt; should not fail" time="0.000295278">
461
+ </testcase>
462
+ <testcase classname="src/verifier/validateOptions.spec.ts" name="Verifier argument validator &gt; when providerVersionTags is provided as an array &gt; should not fail" time="0.000276734">
463
+ </testcase>
464
+ <testcase classname="src/verifier/validateOptions.spec.ts" name="Verifier argument validator &gt; when using a bearer token &gt; and specifies a username or password &gt; should fail with an error" time="0.000844147">
465
+ <system-out>
466
+ [08:42:21.517] [31mERROR[39m (2840): [36mpactBrokerToken is incompatible with the following properties: pactBrokerUsername,pactBrokerPassword[39m
467
+
468
+
469
+ </system-out>
470
+ </testcase>
471
+ <testcase classname="src/verifier/validateOptions.spec.ts" name="Verifier argument validator &gt; when using a bearer token &gt; should not fail" time="0.000270713">
472
+ </testcase>
473
+ <testcase classname="src/verifier/validateOptions.spec.ts" name="Verifier argument validator &gt; when providing consumerVersionSelectors &gt; and an unsupported selector is specified &gt; should log out a warning that the selector is unknown" time="0.003138628">
474
+ <system-out>
475
+ [08:42:21.521] [33mWARN[39m (2840): [36mpact-core@19.2.0: The consumer version selector &apos;unsupportedFlag&apos; is unknown but will be sent through to the validation. Allowed properties are tag, latest, consumer, deployedOrReleased, deployed, released, environment, fallbackTag, branch, mainBranch, matchingBranch)[39m
476
+
477
+
478
+ </system-out>
479
+ </testcase>
480
+ <testcase classname="src/verifier/validateOptions.spec.ts" name="Verifier argument validator &gt; and the tag of &quot;latest&quot; is specified &gt; should log out a warning that using this selector is not recommended" time="0.002189996">
481
+ <system-out>
482
+ [08:42:21.522] [33mWARN[39m (2840): [36mpact-core@19.2.0: Using the tag &apos;latest&apos; is not recommended and probably does not do what you intended.[39m
483
+
484
+ [08:42:21.522] [33mWARN[39m (2840): [36mpact-core@19.2.0: See https://docs.pact.io/pact_broker/tags/#latest-pacts[39m
485
+
486
+ [08:42:21.523] [33mWARN[39m (2840): [36mpact-core@19.2.0: If you need to specify latest, try:[39m
487
+
488
+ [08:42:21.523] [33mWARN[39m (2840): [36mpact-core@19.2.0: consumerVersionSelectors: [{ lastest: true }][39m
489
+
490
+
491
+ </system-out>
492
+ </testcase>
493
+ <testcase classname="src/verifier/validateOptions.spec.ts" name="Verifier argument validator &gt; and valid selectors are specified &gt; should not fail when consumerVersionSelectors is {&quot;tag&quot;:&quot;a-tag&quot;}" time="0.000347355">
494
+ </testcase>
495
+ <testcase classname="src/verifier/validateOptions.spec.ts" name="Verifier argument validator &gt; and valid selectors are specified &gt; should not fail when consumerVersionSelectors is {&quot;latest&quot;:true}" time="0.000211222">
496
+ </testcase>
497
+ <testcase classname="src/verifier/validateOptions.spec.ts" name="Verifier argument validator &gt; and valid selectors are specified &gt; should not fail when consumerVersionSelectors is {&quot;consumer&quot;:&quot;the-consumer&quot;}" time="0.000198148">
498
+ </testcase>
499
+ <testcase classname="src/verifier/validateOptions.spec.ts" name="Verifier argument validator &gt; and valid selectors are specified &gt; should not fail when consumerVersionSelectors is {&quot;deployedOrReleased&quot;:true}" time="0.00017191">
500
+ </testcase>
501
+ <testcase classname="src/verifier/validateOptions.spec.ts" name="Verifier argument validator &gt; and valid selectors are specified &gt; should not fail when consumerVersionSelectors is {&quot;deployed&quot;:true}" time="0.000160117">
502
+ </testcase>
503
+ <testcase classname="src/verifier/validateOptions.spec.ts" name="Verifier argument validator &gt; and valid selectors are specified &gt; should not fail when consumerVersionSelectors is {&quot;released&quot;:true}" time="0.000198979">
504
+ </testcase>
505
+ <testcase classname="src/verifier/validateOptions.spec.ts" name="Verifier argument validator &gt; and valid selectors are specified &gt; should not fail when consumerVersionSelectors is {&quot;environment&quot;:&quot;an-environment&quot;}" time="0.000189693">
506
+ </testcase>
507
+ <testcase classname="src/verifier/validateOptions.spec.ts" name="Verifier argument validator &gt; and valid selectors are specified &gt; should not fail when consumerVersionSelectors is {&quot;fallbackTag&quot;:&quot;a-fallback-tag&quot;}" time="0.000164896">
508
+ </testcase>
509
+ <testcase classname="src/verifier/validateOptions.spec.ts" name="Verifier argument validator &gt; and valid selectors are specified &gt; should not fail when consumerVersionSelectors is {&quot;branch&quot;:&quot;the-branch&quot;}" time="0.000164225">
510
+ </testcase>
511
+ <testcase classname="src/verifier/validateOptions.spec.ts" name="Verifier argument validator &gt; and valid selectors are specified &gt; should not fail when consumerVersionSelectors is {&quot;mainBranch&quot;:false}" time="0.000273608">
512
+ </testcase>
513
+ <testcase classname="src/verifier/validateOptions.spec.ts" name="Verifier argument validator &gt; and valid selectors are specified &gt; should not fail when consumerVersionSelectors is {&quot;matchingBranch&quot;:true}" time="0.00022658">
514
+ </testcase>
515
+ <testcase classname="src/verifier/validateOptions.spec.ts" name="Verifier argument validator &gt; when given customProviderHeaders &gt; using the object notation &gt; should pass through to the Pact Verifier" time="0.000589915">
516
+ </testcase>
517
+ <testcase classname="src/verifier/validateOptions.spec.ts" name="Verifier argument validator &gt; when given customProviderHeaders &gt; using the legacy array notation &gt; should pass through to the Pact Verifier" time="0.000334071">
518
+ </testcase>
519
+ <testcase classname="src/verifier/validateOptions.spec.ts" name="Verifier argument validator &gt; when given customProviderHeaders &gt; using the legacy array notation &gt; and the format is incorrect &gt; should throw an error" time="0.000292664">
520
+ </testcase>
521
+ <testcase classname="src/verifier/validateOptions.spec.ts" name="Verifier argument validator &gt; when given providerBranch &gt; should not throw an error" time="0.000262839">
522
+ </testcase>
523
+ <testcase classname="src/verifier/validateOptions.spec.ts" name="Verifier argument validator &gt; when given unknown properties &gt; should ignore them and not throw an error" time="0.00029098">
524
+ </testcase>
525
+ </testsuite>
526
+ </testsuites>