ado-sync 0.1.28 → 0.1.30
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.
- package/README.md +79 -7
- package/dist/config.js +4 -3
- package/dist/config.js.map +1 -1
- package/dist/parsers/csv.d.ts +13 -3
- package/dist/parsers/csv.js +87 -9
- package/dist/parsers/csv.js.map +1 -1
- package/dist/parsers/excel.js +47 -8
- package/dist/parsers/excel.js.map +1 -1
- package/dist/sync/engine.js +5 -1
- package/dist/sync/engine.js.map +1 -1
- package/dist/sync/publish-results.d.ts +6 -1
- package/dist/sync/publish-results.js +30 -27
- package/dist/sync/publish-results.js.map +1 -1
- package/docs/publish-test-results.md +48 -16
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -217,12 +217,12 @@ ado-sync push
|
|
|
217
217
|
ado-sync pull
|
|
218
218
|
```
|
|
219
219
|
|
|
220
|
-
### C# MSTest / NUnit: create TCs, run tests, publish results
|
|
220
|
+
### C# MSTest / NUnit / SpecFlow: create TCs, run tests, publish results
|
|
221
221
|
|
|
222
222
|
```bash
|
|
223
|
-
# 1. Create TCs and write IDs back into .cs files
|
|
223
|
+
# 1. Create TCs and write IDs back into .cs / .feature files
|
|
224
224
|
ado-sync push --dry-run # preview
|
|
225
|
-
ado-sync push # writes [TestProperty("tc","ID")] / [Property("tc","ID")]
|
|
225
|
+
ado-sync push # writes [TestProperty("tc","ID")] / [Property("tc","ID")] / @tc:ID
|
|
226
226
|
|
|
227
227
|
# 2a. MSTest — TRX contains [TestProperty] values; TC IDs extracted automatically
|
|
228
228
|
dotnet test --logger "trx;LogFileName=results.trx"
|
|
@@ -231,6 +231,10 @@ ado-sync publish-test-results --testResult results/results.trx
|
|
|
231
231
|
# 2b. NUnit — use native XML logger so [Property("tc","ID")] values are included
|
|
232
232
|
dotnet test --logger "nunit3;LogFileName=results.xml"
|
|
233
233
|
ado-sync publish-test-results --testResult results/results.xml
|
|
234
|
+
|
|
235
|
+
# 2c. SpecFlow — TRX format (SpecFlow writes @tc:ID into TestProperty automatically)
|
|
236
|
+
dotnet test --logger "trx;LogFileName=results.trx"
|
|
237
|
+
ado-sync publish-test-results --testResult results/results.trx
|
|
234
238
|
```
|
|
235
239
|
|
|
236
240
|
Recommended `ado-sync.json` for C# MSTest:
|
|
@@ -253,6 +257,25 @@ Recommended `ado-sync.json` for C# MSTest:
|
|
|
253
257
|
}
|
|
254
258
|
```
|
|
255
259
|
|
|
260
|
+
Recommended `ado-sync.json` for C# SpecFlow:
|
|
261
|
+
|
|
262
|
+
```json
|
|
263
|
+
{
|
|
264
|
+
"orgUrl": "https://dev.azure.com/my-org",
|
|
265
|
+
"project": "MyProject",
|
|
266
|
+
"auth": { "type": "pat", "token": "$AZURE_DEVOPS_TOKEN" },
|
|
267
|
+
"testPlan": { "id": 1234 },
|
|
268
|
+
"local": {
|
|
269
|
+
"type": "gherkin",
|
|
270
|
+
"include": ["Features/**/*.feature"]
|
|
271
|
+
},
|
|
272
|
+
"sync": {
|
|
273
|
+
"tagPrefix": "tc",
|
|
274
|
+
"markAutomated": true
|
|
275
|
+
}
|
|
276
|
+
}
|
|
277
|
+
```
|
|
278
|
+
|
|
256
279
|
### Java JUnit / TestNG: create TCs and publish results
|
|
257
280
|
|
|
258
281
|
```bash
|
|
@@ -336,6 +359,40 @@ npx jest --reporters=default --reporters=jest-junit
|
|
|
336
359
|
ado-sync publish-test-results --testResult results/junit.xml --testResultFormat junit
|
|
337
360
|
```
|
|
338
361
|
|
|
362
|
+
### Playwright: create TCs and publish results with screenshots
|
|
363
|
+
|
|
364
|
+
```bash
|
|
365
|
+
# 1. Create TCs and write IDs back into .ts spec files
|
|
366
|
+
ado-sync push --dry-run # preview
|
|
367
|
+
ado-sync push # writes // @tc:ID above each test()
|
|
368
|
+
|
|
369
|
+
# 2. Add @tc:ID tag to test title and run Playwright with JSON reporter
|
|
370
|
+
# playwright.config.ts: reporter: [['json', { outputFile: 'results/playwright.json' }]]
|
|
371
|
+
npx playwright test
|
|
372
|
+
|
|
373
|
+
# 3. Publish — TC IDs from @tc:ID in test title; screenshots/videos from attachments[]
|
|
374
|
+
ado-sync publish-test-results --testResult results/playwright.json
|
|
375
|
+
```
|
|
376
|
+
|
|
377
|
+
Recommended `ado-sync.json` for Playwright:
|
|
378
|
+
|
|
379
|
+
```json
|
|
380
|
+
{
|
|
381
|
+
"orgUrl": "https://dev.azure.com/my-org",
|
|
382
|
+
"project": "MyProject",
|
|
383
|
+
"auth": { "type": "pat", "token": "$AZURE_DEVOPS_TOKEN" },
|
|
384
|
+
"testPlan": { "id": 1234 },
|
|
385
|
+
"local": {
|
|
386
|
+
"type": "javascript",
|
|
387
|
+
"include": ["tests/**/*.spec.ts"],
|
|
388
|
+
"exclude": ["**/*.helper.ts"]
|
|
389
|
+
},
|
|
390
|
+
"sync": {
|
|
391
|
+
"markAutomated": true
|
|
392
|
+
}
|
|
393
|
+
}
|
|
394
|
+
```
|
|
395
|
+
|
|
339
396
|
Recommended `ado-sync.json` for Jest/Jasmine/WebdriverIO:
|
|
340
397
|
|
|
341
398
|
```json
|
|
@@ -413,13 +470,16 @@ The comparison uses title + steps + description. Touch any step to force an upda
|
|
|
413
470
|
Delete `.ado-sync-state.json` to reset the cache. The next push re-populates it from Azure.
|
|
414
471
|
|
|
415
472
|
**CSV/Excel IDs not written back**
|
|
416
|
-
Ensure the file is not open in another application
|
|
473
|
+
Ensure the file is not open in another application and that `sync.disableLocalChanges` is not `true`. If a TC was deleted from Azure and re-created on push, the old ID in column A is now replaced with the new ID automatically.
|
|
417
474
|
|
|
418
475
|
**Excel file not parsed / `No worksheet found`**
|
|
419
|
-
ado-sync
|
|
476
|
+
ado-sync searches for the first worksheet by reading `xl/_rels/workbook.xml.rels` from the xlsx ZIP, falling back to common names (`sheet.xml`, `sheet1.xml`). Non-standard sheet names and multi-sheet workbooks are handled automatically. If parsing still fails, re-export from Azure DevOps.
|
|
420
477
|
|
|
421
|
-
**Pull has no effect on CSV
|
|
422
|
-
|
|
478
|
+
**Pull has no effect on CSV files**
|
|
479
|
+
CSV pull is now supported — `ado-sync pull` updates the Title and step rows in CSV files to match the current Azure DevOps Test Case. Run `ado-sync pull --dry-run` first to preview changes.
|
|
480
|
+
|
|
481
|
+
**Pull has no effect on Excel files**
|
|
482
|
+
Excel (xlsx) pull is not yet supported — only push. Use CSV export instead if bidirectional sync is needed, or pull the changes manually and re-export.
|
|
423
483
|
|
|
424
484
|
**C# categories show as constant names instead of values**
|
|
425
485
|
ado-sync resolves `const string` declarations in the same file. Constants defined in a base class are not resolved — use string literals in `[TestCategory("...")]` for reliable tagging.
|
|
@@ -447,3 +507,15 @@ ado-sync detects `it()`, `test()`, `xit()`, `xtest()`, and `.only`/`.skip`/`.con
|
|
|
447
507
|
|
|
448
508
|
**JavaScript ID not written back**
|
|
449
509
|
ado-sync inserts `// @tc:ID` immediately above the `it()`/`test()` line. There must be no blank line between the comment and the test function call.
|
|
510
|
+
|
|
511
|
+
**`publish-test-results` — "TestPointId, testCaseId must be specified for planned test results"**
|
|
512
|
+
This error means the Test Run was created as a "planned" run (tied to a test plan), which requires test point IDs for each result. ado-sync creates standalone automated runs — do not pass `plan.id` in `runModel`. This is handled automatically; if you see this error, ensure you are on the latest version.
|
|
513
|
+
|
|
514
|
+
**TRX screenshots / `<ResultFiles>` not attached**
|
|
515
|
+
In TRX format, `<ResultFiles>` is a child of `<Output>`, not a direct child of `<UnitTestResult>`. Make sure `TestContext.AddResultFile("path/to/screenshot.png")` is called in your test code. ado-sync reads from the correct nested path automatically.
|
|
516
|
+
|
|
517
|
+
**Attachment paths resolve incorrectly**
|
|
518
|
+
Attachment paths embedded in result files (TRX `<ResultFiles>`, NUnit `<filePath>`, JUnit `[[ATTACHMENT|path]]`, Playwright `attachments[].path`) are resolved **relative to the result file's directory**, not the working directory. Keep result files and screenshots in the same output folder hierarchy as your test runner produces them.
|
|
519
|
+
|
|
520
|
+
**"Invalid AttachmentType specified" from Azure DevOps API**
|
|
521
|
+
Azure DevOps only accepts `GeneralAttachment` and `ConsoleLog` as attachment types. Screenshot and video files are uploaded as `GeneralAttachment` automatically — no special type is needed.
|
package/dist/config.js
CHANGED
|
@@ -160,10 +160,11 @@ function validateConfig(cfg, filePath) {
|
|
|
160
160
|
if (!cfg.testPlan?.id && !cfg.testPlans?.length) {
|
|
161
161
|
err('"testPlan.id" or "testPlans" array is required');
|
|
162
162
|
}
|
|
163
|
+
const validLocalTypes = ['gherkin', 'markdown', 'csv', 'excel', 'csharp', 'java', 'javascript', 'python'];
|
|
163
164
|
if (!cfg.local?.type)
|
|
164
|
-
err(
|
|
165
|
-
if (!
|
|
166
|
-
err(`"local.type" must be one of:
|
|
165
|
+
err(`"local.type" is required (${validLocalTypes.join(' | ')})`);
|
|
166
|
+
if (!validLocalTypes.includes(cfg.local.type))
|
|
167
|
+
err(`"local.type" must be one of: ${validLocalTypes.join(', ')} (got "${cfg.local.type}")`);
|
|
167
168
|
if (!cfg.local?.include)
|
|
168
169
|
err('"local.include" is required');
|
|
169
170
|
}
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAQA,8CAgBC;AAkED,gCAmCC;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
package/dist/parsers/csv.d.ts
CHANGED
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
*
|
|
11
11
|
* ID writeback: updates column A on the title row for newly created test cases.
|
|
12
12
|
*/
|
|
13
|
-
import { LinkConfig, ParsedTest } from '../types';
|
|
13
|
+
import { LinkConfig, ParsedStep, ParsedTest } from '../types';
|
|
14
14
|
export declare function parseCsvFile(filePath: string, tagPrefix: string, linkConfigs?: LinkConfig[]): ParsedTest[];
|
|
15
15
|
/**
|
|
16
16
|
* Write (or update) the TC ID in column A of the matching title row in a CSV file.
|
|
@@ -18,7 +18,17 @@ export declare function parseCsvFile(filePath: string, tagPrefix: string, linkCo
|
|
|
18
18
|
* Strategy:
|
|
19
19
|
* 1. Parse the CSV into raw lines.
|
|
20
20
|
* 2. Find the data row whose Title column (col 2) normalises to the test's title.
|
|
21
|
-
* 3. Replace the ID field (col 0) with the new numeric id.
|
|
22
|
-
* 4. Re-serialise and write back.
|
|
21
|
+
* 3. Replace (or insert) the ID field (col 0) with the new numeric id.
|
|
22
|
+
* 4. Re-serialise with proper quoting and write back.
|
|
23
|
+
*
|
|
24
|
+
* Note: rows that already have an ID are updated too — this handles the case
|
|
25
|
+
* where a deleted TC is re-created with a new ID.
|
|
23
26
|
*/
|
|
24
27
|
export declare function writebackCsv(filePath: string, title: string, id: number): void;
|
|
28
|
+
/**
|
|
29
|
+
* Apply a title + steps update from Azure DevOps back into a CSV file.
|
|
30
|
+
*
|
|
31
|
+
* Finds the row matching `currentTitle`, updates the Title cell (col C) and
|
|
32
|
+
* replaces all subsequent step rows with the new steps from Azure.
|
|
33
|
+
*/
|
|
34
|
+
export declare function applyRemoteToCsv(filePath: string, currentTitle: string, newTitle: string, newSteps: ParsedStep[]): void;
|
package/dist/parsers/csv.js
CHANGED
|
@@ -47,6 +47,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
47
47
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
48
48
|
exports.parseCsvFile = parseCsvFile;
|
|
49
49
|
exports.writebackCsv = writebackCsv;
|
|
50
|
+
exports.applyRemoteToCsv = applyRemoteToCsv;
|
|
50
51
|
const fs = __importStar(require("fs"));
|
|
51
52
|
const tabular_1 = require("./tabular");
|
|
52
53
|
// ─── RFC-4180 CSV parser ───────────────────────────────────────────────────────
|
|
@@ -108,6 +109,18 @@ function parseCsvFile(filePath, tagPrefix, linkConfigs) {
|
|
|
108
109
|
}));
|
|
109
110
|
return (0, tabular_1.parseTabularRows)(rows, filePath, tagPrefix, linkConfigs);
|
|
110
111
|
}
|
|
112
|
+
// ─── CSV serialiser ───────────────────────────────────────────────────────────
|
|
113
|
+
/** Quote a single cell value if it contains commas, quotes, or newlines. */
|
|
114
|
+
function serializeCsvCell(value) {
|
|
115
|
+
if (value.includes(',') || value.includes('"') || value.includes('\n') || value.includes('\r')) {
|
|
116
|
+
return '"' + value.replace(/"/g, '""') + '"';
|
|
117
|
+
}
|
|
118
|
+
return value;
|
|
119
|
+
}
|
|
120
|
+
/** Serialise a row of already-unquoted cell values back to a valid CSV line. */
|
|
121
|
+
function serializeCsvLine(cells) {
|
|
122
|
+
return cells.map(serializeCsvCell).join(',');
|
|
123
|
+
}
|
|
111
124
|
// ─── ID writeback ─────────────────────────────────────────────────────────────
|
|
112
125
|
/**
|
|
113
126
|
* Write (or update) the TC ID in column A of the matching title row in a CSV file.
|
|
@@ -115,8 +128,11 @@ function parseCsvFile(filePath, tagPrefix, linkConfigs) {
|
|
|
115
128
|
* Strategy:
|
|
116
129
|
* 1. Parse the CSV into raw lines.
|
|
117
130
|
* 2. Find the data row whose Title column (col 2) normalises to the test's title.
|
|
118
|
-
* 3. Replace the ID field (col 0) with the new numeric id.
|
|
119
|
-
* 4. Re-serialise and write back.
|
|
131
|
+
* 3. Replace (or insert) the ID field (col 0) with the new numeric id.
|
|
132
|
+
* 4. Re-serialise with proper quoting and write back.
|
|
133
|
+
*
|
|
134
|
+
* Note: rows that already have an ID are updated too — this handles the case
|
|
135
|
+
* where a deleted TC is re-created with a new ID.
|
|
120
136
|
*/
|
|
121
137
|
function writebackCsv(filePath, title, id) {
|
|
122
138
|
const source = fs.readFileSync(filePath, 'utf8');
|
|
@@ -127,17 +143,79 @@ function writebackCsv(filePath, title, id) {
|
|
|
127
143
|
const normalize = (s) => s.replace(TITLE_STRIP_RE, '').trim();
|
|
128
144
|
const updated = lines.map((line) => {
|
|
129
145
|
const cells = parseCsvLine(line);
|
|
130
|
-
const titleCell = cells[2]?.
|
|
131
|
-
const stepCell = cells[3]?.
|
|
132
|
-
|
|
133
|
-
//
|
|
134
|
-
if (titleCell && !stepCell &&
|
|
135
|
-
cells[0] =
|
|
136
|
-
|
|
146
|
+
const titleCell = cells[2]?.trim() ?? '';
|
|
147
|
+
const stepCell = cells[3]?.trim() ?? '';
|
|
148
|
+
// Match title rows (non-empty title, no step number) by normalised title.
|
|
149
|
+
// Allow any existing ID value — handles re-creation of deleted TCs.
|
|
150
|
+
if (titleCell && !stepCell && normalize(titleCell) === title) {
|
|
151
|
+
cells[0] = String(id);
|
|
152
|
+
// Pad to at least 9 columns before re-serialising
|
|
153
|
+
while (cells.length < 9)
|
|
154
|
+
cells.push('');
|
|
155
|
+
return serializeCsvLine(cells);
|
|
137
156
|
}
|
|
138
157
|
return line;
|
|
139
158
|
});
|
|
140
159
|
const result = (hasBom ? '\uFEFF' : '') + updated.join('\n');
|
|
141
160
|
fs.writeFileSync(filePath, result, 'utf8');
|
|
142
161
|
}
|
|
162
|
+
// ─── Pull / apply remote changes ─────────────────────────────────────────────
|
|
163
|
+
/**
|
|
164
|
+
* Apply a title + steps update from Azure DevOps back into a CSV file.
|
|
165
|
+
*
|
|
166
|
+
* Finds the row matching `currentTitle`, updates the Title cell (col C) and
|
|
167
|
+
* replaces all subsequent step rows with the new steps from Azure.
|
|
168
|
+
*/
|
|
169
|
+
function applyRemoteToCsv(filePath, currentTitle, newTitle, newSteps) {
|
|
170
|
+
const source = fs.readFileSync(filePath, 'utf8');
|
|
171
|
+
const hasBom = source.startsWith('\uFEFF');
|
|
172
|
+
const text = hasBom ? source.slice(1) : source;
|
|
173
|
+
const lines = text.split(/\r?\n/);
|
|
174
|
+
const TITLE_STRIP_RE = /^(Scenario Outline|Scenario)\s*:\s*/i;
|
|
175
|
+
const normalize = (s) => s.replace(TITLE_STRIP_RE, '').trim();
|
|
176
|
+
// Find the title row
|
|
177
|
+
let titleRowIdx = -1;
|
|
178
|
+
for (let i = 0; i < lines.length; i++) {
|
|
179
|
+
const cells = parseCsvLine(lines[i]);
|
|
180
|
+
const titleCell = cells[2]?.trim() ?? '';
|
|
181
|
+
const stepCell = cells[3]?.trim() ?? '';
|
|
182
|
+
if (titleCell && !stepCell && normalize(titleCell) === currentTitle) {
|
|
183
|
+
titleRowIdx = i;
|
|
184
|
+
break;
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
if (titleRowIdx === -1)
|
|
188
|
+
return; // not found
|
|
189
|
+
// Find the extent of the existing step rows (up to the next title row or end)
|
|
190
|
+
let nextTitleIdx = lines.length;
|
|
191
|
+
for (let i = titleRowIdx + 1; i < lines.length; i++) {
|
|
192
|
+
const cells = parseCsvLine(lines[i]);
|
|
193
|
+
const titleCell = cells[2]?.trim() ?? '';
|
|
194
|
+
const stepCell = cells[3]?.trim() ?? '';
|
|
195
|
+
if (titleCell && !stepCell && titleCell.toLowerCase() !== 'title') {
|
|
196
|
+
nextTitleIdx = i;
|
|
197
|
+
break;
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
// Update the title row — preserve ID and prefix ("Scenario: " etc.)
|
|
201
|
+
const titleRowCells = parseCsvLine(lines[titleRowIdx]);
|
|
202
|
+
while (titleRowCells.length < 9)
|
|
203
|
+
titleRowCells.push('');
|
|
204
|
+
const prefix = (titleRowCells[2]?.match(TITLE_STRIP_RE)?.[0] ?? '');
|
|
205
|
+
titleRowCells[2] = prefix + newTitle;
|
|
206
|
+
// Build new step rows using the Azure step action text (already includes keyword)
|
|
207
|
+
const newStepRows = newSteps.map((step, idx) => {
|
|
208
|
+
const action = step.text; // Azure action already includes "Given"/"When"/etc.
|
|
209
|
+
const cells = ['', '', '', String(idx + 1), action, step.expected ?? '', '', '', ''];
|
|
210
|
+
return serializeCsvLine(cells);
|
|
211
|
+
});
|
|
212
|
+
const updatedLines = [
|
|
213
|
+
...lines.slice(0, titleRowIdx),
|
|
214
|
+
serializeCsvLine(titleRowCells),
|
|
215
|
+
...newStepRows,
|
|
216
|
+
...lines.slice(nextTitleIdx),
|
|
217
|
+
];
|
|
218
|
+
const result = (hasBom ? '\uFEFF' : '') + updatedLines.join('\n');
|
|
219
|
+
fs.writeFileSync(filePath, result, 'utf8');
|
|
220
|
+
}
|
|
143
221
|
//# sourceMappingURL=csv.js.map
|
package/dist/parsers/csv.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"csv.js","sourceRoot":"","sources":["../../src/parsers/csv.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;GAWG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyDH,oCAcC;
|
|
1
|
+
{"version":3,"file":"csv.js","sourceRoot":"","sources":["../../src/parsers/csv.ts"],"names":[],"mappings":"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"}
|
package/dist/parsers/excel.js
CHANGED
|
@@ -160,6 +160,46 @@ function parseSheetXml(xml, sharedStrings) {
|
|
|
160
160
|
}
|
|
161
161
|
return rows;
|
|
162
162
|
}
|
|
163
|
+
// ─── Worksheet discovery ──────────────────────────────────────────────────────
|
|
164
|
+
/**
|
|
165
|
+
* Locate the first worksheet file inside an xlsx ZIP.
|
|
166
|
+
*
|
|
167
|
+
* Strategy (in order):
|
|
168
|
+
* 1. Try common names: sheet.xml, sheet1.xml (case-insensitive).
|
|
169
|
+
* 2. Read xl/_rels/workbook.xml.rels to find the relationship-mapped path.
|
|
170
|
+
* 3. Fall back to any file under xl/worksheets/.
|
|
171
|
+
*
|
|
172
|
+
* Returns the ZIP entry key (e.g. "xl/worksheets/sheet1.xml") or null.
|
|
173
|
+
*/
|
|
174
|
+
async function findFirstSheetPath(zip) {
|
|
175
|
+
// Fast path: common names used by ADO exports and most tools
|
|
176
|
+
for (const candidate of [
|
|
177
|
+
'xl/worksheets/sheet.xml',
|
|
178
|
+
'xl/worksheets/sheet1.xml',
|
|
179
|
+
'xl/worksheets/Sheet1.xml',
|
|
180
|
+
]) {
|
|
181
|
+
if (zip.file(candidate))
|
|
182
|
+
return candidate;
|
|
183
|
+
}
|
|
184
|
+
// Read workbook relationships to find the actual sheet path
|
|
185
|
+
const relsEntry = zip.file('xl/_rels/workbook.xml.rels');
|
|
186
|
+
if (relsEntry) {
|
|
187
|
+
const relsXml = await relsEntry.async('string');
|
|
188
|
+
// Match the first Relationship of type worksheet
|
|
189
|
+
const m = relsXml.match(/Type="[^"]*\/worksheet"[^>]*Target="([^"]+)"/);
|
|
190
|
+
if (m) {
|
|
191
|
+
// Target is relative to xl/; strip leading '../' or '/' if present
|
|
192
|
+
const target = m[1].replace(/^\.\.\//, '').replace(/^\//, '');
|
|
193
|
+
const fullPath = target.startsWith('xl/') ? target : `xl/${target}`;
|
|
194
|
+
if (zip.file(fullPath))
|
|
195
|
+
return fullPath;
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
// Last-resort: scan all files under xl/worksheets/
|
|
199
|
+
const allFiles = Object.keys(zip.files);
|
|
200
|
+
const sheetFile = allFiles.find((f) => /^xl\/worksheets\/.+\.xml$/i.test(f) && !f.includes('_rels'));
|
|
201
|
+
return sheetFile ?? null;
|
|
202
|
+
}
|
|
163
203
|
// ─── Public API ───────────────────────────────────────────────────────────────
|
|
164
204
|
async function parseExcelFile(filePath, tagPrefix, linkConfigs) {
|
|
165
205
|
const buffer = fs.readFileSync(filePath);
|
|
@@ -169,9 +209,9 @@ async function parseExcelFile(filePath, tagPrefix, linkConfigs) {
|
|
|
169
209
|
const sharedStrings = ssEntry
|
|
170
210
|
? parseSharedStrings(await ssEntry.async('string'))
|
|
171
211
|
: [];
|
|
172
|
-
// Find the worksheet XML
|
|
173
|
-
const
|
|
174
|
-
|
|
212
|
+
// Find the worksheet XML (handles non-standard sheet naming)
|
|
213
|
+
const sheetKey = await findFirstSheetPath(zip);
|
|
214
|
+
const sheetEntry = sheetKey ? zip.file(sheetKey) : null;
|
|
175
215
|
if (!sheetEntry)
|
|
176
216
|
throw new Error(`No worksheet found in ${filePath}`);
|
|
177
217
|
const xml = await sheetEntry.async('string');
|
|
@@ -197,9 +237,7 @@ async function parseExcelFile(filePath, tagPrefix, linkConfigs) {
|
|
|
197
237
|
async function writebackExcel(filePath, title, id) {
|
|
198
238
|
const buffer = fs.readFileSync(filePath);
|
|
199
239
|
const zip = await jszip_1.default.loadAsync(buffer);
|
|
200
|
-
const sheetKey = zip
|
|
201
|
-
zip.file('xl/worksheets/sheet1.xml') ? 'xl/worksheets/sheet1.xml' :
|
|
202
|
-
null;
|
|
240
|
+
const sheetKey = await findFirstSheetPath(zip);
|
|
203
241
|
if (!sheetKey)
|
|
204
242
|
throw new Error(`No worksheet found in ${filePath}`);
|
|
205
243
|
const ssEntry = zip.file('xl/sharedStrings.xml');
|
|
@@ -230,8 +268,9 @@ async function writebackExcel(filePath, title, id) {
|
|
|
230
268
|
const idMatch = getCellAtCol('A');
|
|
231
269
|
const titleVal = titleMatch ? cellValue(titleMatch[0], nsPrefix, sharedStrings) : '';
|
|
232
270
|
const stepVal = stepMatch ? cellValue(stepMatch[0], nsPrefix, sharedStrings) : '';
|
|
233
|
-
|
|
234
|
-
|
|
271
|
+
// Match title rows (non-empty title, no step number) by normalised title.
|
|
272
|
+
// Do NOT guard on existing ID — allows updating the ID when a deleted TC is re-created.
|
|
273
|
+
if (!titleVal || stepVal)
|
|
235
274
|
return open + content + close;
|
|
236
275
|
if (normalise(titleVal) !== title)
|
|
237
276
|
return open + content + close;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"excel.js","sourceRoot":"","sources":["../../src/parsers/excel.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;GAgBG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"excel.js","sourceRoot":"","sources":["../../src/parsers/excel.ts"],"names":[],"mappings":"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"}
|
package/dist/sync/engine.js
CHANGED
|
@@ -491,7 +491,11 @@ function applyRemoteToLocal(test, newTitle, newSteps, newDescription, localType,
|
|
|
491
491
|
else if (localType === 'markdown') {
|
|
492
492
|
applyRemoteToMarkdown(test, newTitle, newSteps, newDescription, tagPrefix);
|
|
493
493
|
}
|
|
494
|
-
|
|
494
|
+
else if (localType === 'csv') {
|
|
495
|
+
(0, csv_1.applyRemoteToCsv)(test.filePath, test.title, newTitle, newSteps);
|
|
496
|
+
}
|
|
497
|
+
// excel: pull not yet supported (in-place XML surgery for xlsx is complex)
|
|
498
|
+
// csharp / java / python / javascript: pull not supported (code files are managed locally)
|
|
495
499
|
}
|
|
496
500
|
function applyRemoteToGherkin(test, newTitle, newSteps) {
|
|
497
501
|
const raw = fs.readFileSync(test.filePath, 'utf8');
|
package/dist/sync/engine.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine.js","sourceRoot":"","sources":["../../src/sync/engine.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"engine.js","sourceRoot":"","sources":["../../src/sync/engine.ts"],"names":[],"mappings":"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"}
|
|
@@ -22,7 +22,12 @@
|
|
|
22
22
|
* Use `--logger "nunit3;LogFileName=results.xml"` to get the native NUnit XML with properties.
|
|
23
23
|
*/
|
|
24
24
|
import { SyncConfig } from '../types';
|
|
25
|
-
|
|
25
|
+
/**
|
|
26
|
+
* Azure DevOps AttachmentType enum values (from TestInterfaces.AttachmentType).
|
|
27
|
+
* Only GeneralAttachment and ConsoleLog are universally supported for test result
|
|
28
|
+
* attachments. We use these two: screenshots/videos → GeneralAttachment, logs → ConsoleLog.
|
|
29
|
+
*/
|
|
30
|
+
export type AttachmentType = 'GeneralAttachment' | 'ConsoleLog';
|
|
26
31
|
export interface TestAttachment {
|
|
27
32
|
fileName: string;
|
|
28
33
|
data: Buffer;
|
|
@@ -66,22 +66,15 @@ const client_1 = require("../azure/client");
|
|
|
66
66
|
/** Map a file extension to the Azure DevOps attachment type. */
|
|
67
67
|
function extToAttachmentType(ext) {
|
|
68
68
|
const e = ext.toLowerCase();
|
|
69
|
-
|
|
70
|
-
return 'Screenshot';
|
|
71
|
-
if (['.mp4', '.webm', '.avi', '.mov'].includes(e))
|
|
72
|
-
return 'VideoLog';
|
|
69
|
+
// Log/text files → ConsoleLog; everything else (images, video, zip…) → GeneralAttachment
|
|
73
70
|
if (['.log', '.txt'].includes(e))
|
|
74
|
-
return '
|
|
71
|
+
return 'ConsoleLog';
|
|
75
72
|
return 'GeneralAttachment';
|
|
76
73
|
}
|
|
77
74
|
/** Mime type → attachment type for Cucumber JSON embeddings. */
|
|
78
75
|
function mimeToAttachmentType(mime) {
|
|
79
|
-
if (mime.startsWith('image/'))
|
|
80
|
-
return 'Screenshot';
|
|
81
|
-
if (mime.startsWith('video/'))
|
|
82
|
-
return 'VideoLog';
|
|
83
76
|
if (mime.startsWith('text/'))
|
|
84
|
-
return '
|
|
77
|
+
return 'ConsoleLog';
|
|
85
78
|
return 'GeneralAttachment';
|
|
86
79
|
}
|
|
87
80
|
/** Extension for a given mime type (best-effort). */
|
|
@@ -145,7 +138,7 @@ function normaliseOutcome(raw, treatInconclusiveAs) {
|
|
|
145
138
|
// </TestRun>
|
|
146
139
|
//
|
|
147
140
|
// UnitTestResult.testId → UnitTest.id → Properties → tc value
|
|
148
|
-
function parseTrx(content, tagPrefix, treatInconclusiveAs) {
|
|
141
|
+
function parseTrx(content, tagPrefix, treatInconclusiveAs, resultFileDir = '') {
|
|
149
142
|
const parser = new fast_xml_parser_1.XMLParser({
|
|
150
143
|
ignoreAttributes: false,
|
|
151
144
|
attributeNamePrefix: '@_',
|
|
@@ -209,13 +202,15 @@ function parseTrx(content, tagPrefix, treatInconclusiveAs) {
|
|
|
209
202
|
attachments.push({ fileName: 'stdout.log', data: Buffer.from(stdOut, 'utf8'), attachmentType: 'ConsoleLog' });
|
|
210
203
|
}
|
|
211
204
|
// Extract <ResultFiles> — files produced by the test (e.g. screenshots via TestContext.AddResultFile)
|
|
212
|
-
|
|
205
|
+
// In TRX, ResultFiles is a child of Output, not a direct child of UnitTestResult.
|
|
206
|
+
const resultFilesNode = output?.ResultFiles ?? output?.resultFiles ?? r.ResultFiles ?? r.resultFiles;
|
|
213
207
|
const resultFiles = resultFilesNode?.ResultFile ?? resultFilesNode?.resultFile ?? [];
|
|
214
208
|
for (const rf of (Array.isArray(resultFiles) ? resultFiles : [resultFiles])) {
|
|
215
209
|
const filePath = rf['@_path'] ?? '';
|
|
216
210
|
if (!filePath)
|
|
217
211
|
continue;
|
|
218
|
-
const
|
|
212
|
+
const absPath = resultFileDir ? path.resolve(resultFileDir, filePath) : filePath;
|
|
213
|
+
const data = safeReadFile(absPath);
|
|
219
214
|
if (data)
|
|
220
215
|
attachments.push({ fileName: path.basename(filePath), data, attachmentType: extToAttachmentType(path.extname(filePath)) });
|
|
221
216
|
}
|
|
@@ -250,7 +245,7 @@ function parseTrx(content, tagPrefix, treatInconclusiveAs) {
|
|
|
250
245
|
// </test-case>
|
|
251
246
|
// </test-suite>
|
|
252
247
|
// </test-run>
|
|
253
|
-
function parseNUnitXml(content, tagPrefix, treatInconclusiveAs) {
|
|
248
|
+
function parseNUnitXml(content, tagPrefix, treatInconclusiveAs, resultFileDir = '') {
|
|
254
249
|
const parser = new fast_xml_parser_1.XMLParser({
|
|
255
250
|
ignoreAttributes: false,
|
|
256
251
|
attributeNamePrefix: '@_',
|
|
@@ -297,7 +292,8 @@ function parseNUnitXml(content, tagPrefix, treatInconclusiveAs) {
|
|
|
297
292
|
const filePath = String(att.filePath ?? att['filePath'] ?? '').trim();
|
|
298
293
|
if (!filePath)
|
|
299
294
|
continue;
|
|
300
|
-
const
|
|
295
|
+
const absPath = resultFileDir ? path.resolve(resultFileDir, filePath) : filePath;
|
|
296
|
+
const data = safeReadFile(absPath);
|
|
301
297
|
if (data)
|
|
302
298
|
nunitAttachments.push({ fileName: path.basename(filePath), data, attachmentType: extToAttachmentType(path.extname(filePath)) });
|
|
303
299
|
}
|
|
@@ -337,7 +333,7 @@ function parseNUnitXml(content, tagPrefix, treatInconclusiveAs) {
|
|
|
337
333
|
// This matches the automatedTestName format used by the Java and Python parsers
|
|
338
334
|
// (e.g. "com.example.MyClass.myMethod" or "tests.module.TestClass.test_foo").
|
|
339
335
|
// - Falls back to suite[@name].testcase[@name] when classname is absent.
|
|
340
|
-
function parseJUnit(content, tagPrefix, treatInconclusiveAs) {
|
|
336
|
+
function parseJUnit(content, tagPrefix, treatInconclusiveAs, resultFileDir = '') {
|
|
341
337
|
const parser = new fast_xml_parser_1.XMLParser({
|
|
342
338
|
ignoreAttributes: false,
|
|
343
339
|
attributeNamePrefix: '@_',
|
|
@@ -401,17 +397,18 @@ function parseJUnit(content, tagPrefix, treatInconclusiveAs) {
|
|
|
401
397
|
let logText = sysOut;
|
|
402
398
|
while ((m = playwrightRe.exec(sysOut)) !== null) {
|
|
403
399
|
const filePath = m[1].trim();
|
|
404
|
-
const
|
|
400
|
+
const absPath = resultFileDir ? path.resolve(resultFileDir, filePath) : filePath;
|
|
401
|
+
const data = safeReadFile(absPath);
|
|
405
402
|
if (data)
|
|
406
403
|
junitAttachments.push({ fileName: path.basename(filePath), data, attachmentType: extToAttachmentType(path.extname(filePath)) });
|
|
407
404
|
logText = logText.replace(m[0], '').trim();
|
|
408
405
|
}
|
|
409
406
|
if (logText)
|
|
410
|
-
junitAttachments.push({ fileName: 'system-out.log', data: Buffer.from(logText, 'utf8'), attachmentType: '
|
|
407
|
+
junitAttachments.push({ fileName: 'system-out.log', data: Buffer.from(logText, 'utf8'), attachmentType: 'ConsoleLog' });
|
|
411
408
|
}
|
|
412
409
|
const sysErr = String(tc['system-err'] ?? '').trim();
|
|
413
410
|
if (sysErr)
|
|
414
|
-
junitAttachments.push({ fileName: 'system-err.log', data: Buffer.from(sysErr, 'utf8'), attachmentType: '
|
|
411
|
+
junitAttachments.push({ fileName: 'system-err.log', data: Buffer.from(sysErr, 'utf8'), attachmentType: 'ConsoleLog' });
|
|
415
412
|
results.push({
|
|
416
413
|
testName,
|
|
417
414
|
outcome: normaliseOutcome(outcome, treatInconclusiveAs),
|
|
@@ -508,7 +505,7 @@ function parseCucumberJson(content, tagPrefix, treatInconclusiveAs) {
|
|
|
508
505
|
// }]
|
|
509
506
|
// }]
|
|
510
507
|
// }
|
|
511
|
-
function parsePlaywrightJson(content, tagPrefix, treatInconclusiveAs) {
|
|
508
|
+
function parsePlaywrightJson(content, tagPrefix, treatInconclusiveAs, resultFileDir = '') {
|
|
512
509
|
const report = JSON.parse(content);
|
|
513
510
|
const results = [];
|
|
514
511
|
function walkSuites(suites, titlePath) {
|
|
@@ -547,7 +544,10 @@ function parsePlaywrightJson(content, tagPrefix, treatInconclusiveAs) {
|
|
|
547
544
|
const contentType = att.contentType ?? '';
|
|
548
545
|
const attName = att.name ?? `attachment_${++attIdx}`;
|
|
549
546
|
const ext = filePath ? path.extname(filePath) : mimeToExt(contentType);
|
|
550
|
-
const
|
|
547
|
+
const absPath = filePath
|
|
548
|
+
? (resultFileDir ? path.resolve(resultFileDir, filePath) : filePath)
|
|
549
|
+
: undefined;
|
|
550
|
+
const data = absPath ? safeReadFile(absPath) : (att.body ? Buffer.from(att.body, 'base64') : undefined);
|
|
551
551
|
if (data) {
|
|
552
552
|
pwAttachments.push({ fileName: `${attName}${ext || ''}`, data, attachmentType: mimeToAttachmentType(contentType) || extToAttachmentType(ext) });
|
|
553
553
|
}
|
|
@@ -669,21 +669,22 @@ async function publishTestResults(config, configDir, opts = {}) {
|
|
|
669
669
|
}
|
|
670
670
|
const content = fs.readFileSync(src.filePath, 'utf8');
|
|
671
671
|
const format = src.format ?? detectFormat(src.filePath, content);
|
|
672
|
+
const fileDir = path.dirname(src.filePath);
|
|
672
673
|
switch (format) {
|
|
673
674
|
case 'trx':
|
|
674
|
-
allResults.push(...parseTrx(content, tagPrefix, treatInconclusiveAs));
|
|
675
|
+
allResults.push(...parseTrx(content, tagPrefix, treatInconclusiveAs, fileDir));
|
|
675
676
|
break;
|
|
676
677
|
case 'nunitXml':
|
|
677
|
-
allResults.push(...parseNUnitXml(content, tagPrefix, treatInconclusiveAs));
|
|
678
|
+
allResults.push(...parseNUnitXml(content, tagPrefix, treatInconclusiveAs, fileDir));
|
|
678
679
|
break;
|
|
679
680
|
case 'junit':
|
|
680
|
-
allResults.push(...parseJUnit(content, tagPrefix, treatInconclusiveAs));
|
|
681
|
+
allResults.push(...parseJUnit(content, tagPrefix, treatInconclusiveAs, fileDir));
|
|
681
682
|
break;
|
|
682
683
|
case 'cucumberJson':
|
|
683
684
|
allResults.push(...parseCucumberJson(content, tagPrefix, treatInconclusiveAs));
|
|
684
685
|
break;
|
|
685
686
|
case 'playwrightJson':
|
|
686
|
-
allResults.push(...parsePlaywrightJson(content, tagPrefix, treatInconclusiveAs));
|
|
687
|
+
allResults.push(...parsePlaywrightJson(content, tagPrefix, treatInconclusiveAs, fileDir));
|
|
687
688
|
break;
|
|
688
689
|
default:
|
|
689
690
|
throw new Error(`Unsupported test result format: ${format}`);
|
|
@@ -702,9 +703,11 @@ async function publishTestResults(config, configDir, opts = {}) {
|
|
|
702
703
|
const testApi = await client.getTestApi();
|
|
703
704
|
const runSettings = pubConfig?.testRunSettings;
|
|
704
705
|
const runName = opts.runName ?? runSettings?.name ?? `ado-sync ${new Date().toISOString()}`;
|
|
706
|
+
// Do NOT pass `plan` here — attaching to a test plan makes ADO treat the run
|
|
707
|
+
// as "planned", which requires testPointId + testCaseRevision on every result.
|
|
708
|
+
// Automated CI runs post results independently; test cases are linked by id alone.
|
|
705
709
|
const runModel = {
|
|
706
710
|
name: runName,
|
|
707
|
-
plan: { id: String(config.testPlan.id) },
|
|
708
711
|
automated: runSettings?.runType === 'Manual' ? false : true,
|
|
709
712
|
configurationIds: pubConfig?.testConfiguration?.id ? [pubConfig.testConfiguration.id] : [],
|
|
710
713
|
};
|
|
@@ -765,7 +768,7 @@ async function publishTestResults(config, configDir, opts = {}) {
|
|
|
765
768
|
const toUpload = [];
|
|
766
769
|
for (const att of resultEntry.attachments ?? []) {
|
|
767
770
|
// 'files' mode: skip pure log attachments for passing tests
|
|
768
|
-
if (filesOnly &&
|
|
771
|
+
if (filesOnly && att.attachmentType === 'ConsoleLog')
|
|
769
772
|
continue;
|
|
770
773
|
if (includeForResult)
|
|
771
774
|
toUpload.push(att);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"publish-results.js","sourceRoot":"","sources":["../../src/sync/publish-results.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"publish-results.js","sourceRoot":"","sources":["../../src/sync/publish-results.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqoBH,gDAgLC;AAnzBD,qDAA4C;AAC5C,uCAAyB;AACzB,+BAA4B;AAC5B,2CAA6B;AAE7B,4CAA8C;AA+B9C,iFAAiF;AAEjF,gEAAgE;AAChE,SAAS,mBAAmB,CAAC,GAAW;IACtC,MAAM,CAAC,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;IAC5B,yFAAyF;IACzF,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;QAAE,OAAO,YAAY,CAAC;IACtD,OAAO,mBAAmB,CAAC;AAC7B,CAAC;AAED,gEAAgE;AAChE,SAAS,oBAAoB,CAAC,IAAY;IACxC,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;QAAE,OAAO,YAAY,CAAC;IAClD,OAAO,mBAAmB,CAAC;AAC7B,CAAC;AAED,qDAAqD;AACrD,SAAS,SAAS,CAAC,IAAY;IAC7B,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAG,OAAO,MAAM,CAAC;IACzC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,MAAM,CAAC;IACjE,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAG,OAAO,MAAM,CAAC;IACzC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;QAAE,OAAO,OAAO,CAAC;IAC1C,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAG,OAAO,MAAM,CAAC;IACzC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;QAAE,OAAO,OAAO,CAAC;IAC1C,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;QAAE,OAAO,MAAM,CAAC;IACzC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;QAAE,OAAO,OAAO,CAAC;IAC1C,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,4FAA4F;AAC5F,SAAS,YAAY,CAAC,QAAgB;IACpC,IAAI,CAAC;QACH,OAAO,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;IACnC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED,mFAAmF;AACnF,SAAS,gBAAgB,CAAC,GAAW,EAAE,mBAA4B;IACjE,MAAM,KAAK,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;IAChC,IAAI,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,QAAQ,CAAC;IACnF,IAAI,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,OAAO;QAAE,OAAO,QAAQ,CAAC;IACxG,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,aAAa;QAAE,OAAO,aAAa,CAAC;IACvH,IAAI,KAAK,KAAK,cAAc;QAAE,OAAO,mBAAmB,IAAI,cAAc,CAAC;IAC3E,OAAO,GAAG,CAAC;AACb,CAAC;AAED,iFAAiF;AACjF,EAAE;AACF,8CAA8C;AAC9C,EAAE;AACF,cAAc;AACd,wBAAwB;AACxB,wCAAwC;AACxC,uBAAuB;AACvB,mEAAmE;AACnE,wBAAwB;AACxB,2EAA2E;AAC3E,oBAAoB;AACpB,yBAAyB;AACzB,gBAAgB;AAChB,4EAA4E;AAC5E,iBAAiB;AACjB,eAAe;AACf,EAAE;AACF,8DAA8D;AAE9D,SAAS,QAAQ,CAAC,OAAe,EAAE,SAAiB,EAAE,mBAA4B,EAAE,aAAa,GAAG,EAAE;IACpG,MAAM,MAAM,GAAG,IAAI,2BAAS,CAAC;QAC3B,gBAAgB,EAAE,KAAK;QACvB,mBAAmB,EAAE,IAAI;QACzB,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,UAAU,EAAE,gBAAgB,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;KAC3F,CAAC,CAAC;IACH,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAElC,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC;IAC3C,IAAI,CAAC,OAAO;QAAE,OAAO,EAAE,CAAC;IAExB,iFAAiF;IACjF,MAAM,YAAY,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC/C,MAAM,WAAW,GAAG,OAAO,CAAC,eAAe,IAAI,OAAO,CAAC,eAAe,CAAC;IACvE,IAAI,WAAW,EAAE,CAAC;QAChB,IAAI,SAAS,GAAG,WAAW,CAAC,QAAQ,IAAI,WAAW,CAAC,QAAQ,IAAI,EAAE,CAAC;QACnE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC;YAAE,SAAS,GAAG,CAAC,SAAS,CAAC,CAAC;QAEvD,KAAK,MAAM,EAAE,IAAI,SAAS,EAAE,CAAC;YAC3B,MAAM,MAAM,GAAW,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YACxC,IAAI,CAAC,MAAM;gBAAE,SAAS;YAEtB,MAAM,SAAS,GAAG,EAAE,CAAC,UAAU,IAAI,EAAE,CAAC,UAAU,CAAC;YACjD,IAAI,CAAC,SAAS;gBAAE,SAAS;YAEzB,IAAI,KAAK,GAAG,SAAS,CAAC,QAAQ,IAAI,SAAS,CAAC,QAAQ,IAAI,EAAE,CAAC;YAC3D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;gBAAE,KAAK,GAAG,CAAC,KAAK,CAAC,CAAC;YAE3C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;gBAC/C,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;gBACnD,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;oBACtB,MAAM,EAAE,GAAG,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;oBAC7B,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;wBAAE,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;oBAC7C,MAAM;gBACR,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,+BAA+B;IAC/B,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC;IACvD,IAAI,CAAC,WAAW;QAAE,OAAO,EAAE,CAAC;IAE5B,IAAI,WAAW,GAAG,WAAW,CAAC,cAAc,IAAI,WAAW,CAAC,cAAc,IAAI,EAAE,CAAC;IACjF,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC;QAAE,WAAW,GAAG,CAAC,WAAW,CAAC,CAAC;IAE7D,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC,CAAM,EAAgB,EAAE;QAC9C,MAAM,QAAQ,GAAG,CAAC,CAAC,YAAY,CAAC,IAAI,UAAU,CAAC;QAC/C,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAClC,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,KAAK,CAAC;YACnC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI;YACrF,CAAC,CAAC,CAAC,CAAC;QAEN,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,CAAC;QACpC,MAAM,SAAS,GAAG,MAAM,EAAE,SAAS,IAAI,MAAM,EAAE,SAAS,CAAC;QAEzD,yDAAyD;QACzD,MAAM,MAAM,GAAW,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;QAC3C,MAAM,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAEjE,4CAA4C;QAC5C,MAAM,WAAW,GAAqB,EAAE,CAAC;QACzC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QACrE,IAAI,MAAM,EAAE,CAAC;YACX,WAAW,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC,CAAC;QAChH,CAAC;QACD,sGAAsG;QACtG,kFAAkF;QAClF,MAAM,eAAe,GAAG,MAAM,EAAE,WAAW,IAAI,MAAM,EAAE,WAAW,IAAI,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,WAAW,CAAC;QACrG,MAAM,WAAW,GAAU,eAAe,EAAE,UAAU,IAAI,eAAe,EAAE,UAAU,IAAI,EAAE,CAAC;QAC5F,KAAK,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC;YAC5E,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACpC,IAAI,CAAC,QAAQ;gBAAE,SAAS;YACxB,MAAM,OAAO,GAAG,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;YACjF,MAAM,IAAI,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;YACnC,IAAI,IAAI;gBAAE,WAAW,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC;QACvI,CAAC;QAED,OAAO;YACL,QAAQ,EAAE,CAAC,CAAC,YAAY,CAAC,IAAI,EAAE;YAC/B,OAAO,EAAE,gBAAgB,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,aAAa,EAAE,mBAAmB,CAAC;YAC/E,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;YAClC,YAAY,EAAE,SAAS,EAAE,OAAO,IAAI,SAAS,EAAE,OAAO;YACtD,UAAU,EAAE,SAAS,EAAE,UAAU,IAAI,SAAS,EAAE,UAAU;YAC1D,UAAU;YACV,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;SAC1D,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED,iFAAiF;AACjF,EAAE;AACF,oFAAoF;AACpF,+FAA+F;AAC/F,EAAE;AACF,eAAe;AACf,4DAA4D;AAC5D,sFAAsF;AACtF,uBAAuB;AACvB,iDAAiD;AACjD,wBAAwB;AACxB,qBAAqB;AACrB,oFAAoF;AACpF,oBAAoB;AACpB,oDAAoD;AACpD,2CAA2C;AAC3C,qBAAqB;AACrB,qBAAqB;AACrB,oBAAoB;AACpB,gBAAgB;AAEhB,SAAS,aAAa,CAAC,OAAe,EAAE,SAAiB,EAAE,mBAA4B,EAAE,aAAa,GAAG,EAAE;IACzG,MAAM,MAAM,GAAG,IAAI,2BAAS,CAAC;QAC3B,gBAAgB,EAAE,KAAK;QACvB,mBAAmB,EAAE,IAAI;QACzB,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;KACxF,CAAC,CAAC;IACH,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAElC,MAAM,OAAO,GAAmB,EAAE,CAAC;IAEnC,SAAS,QAAQ,CAAC,IAAS;QACzB,mCAAmC;QACnC,MAAM,KAAK,GAAU,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;QAC7C,KAAK,MAAM,EAAE,IAAI,KAAK,EAAE,CAAC;YACvB,MAAM,QAAQ,GAAW,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YAChE,MAAM,MAAM,GAAY,EAAE,CAAC,UAAU,CAAC,IAAI,cAAc,CAAC;YACzD,MAAM,QAAQ,GAAG,UAAU,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,GAAG,CAAC,CAAC;YAErD,oEAAoE;YACpE,IAAI,UAA8B,CAAC;YACnC,MAAM,KAAK,GAAU,EAAE,CAAC,UAAU,EAAE,QAAQ,IAAI,EAAE,CAAC;YACnD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,SAAS,EAAE,CAAC;oBAC/C,MAAM,EAAE,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;oBACvD,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;wBAAC,UAAU,GAAG,EAAE,CAAC;wBAAC,MAAM;oBAAC,CAAC;gBAC7C,CAAC;YACH,CAAC;YAED,0BAA0B;YAC1B,IAAI,YAAgC,CAAC;YACrC,IAAI,UAA8B,CAAC;YACnC,MAAM,OAAO,GAAG,EAAE,CAAC,OAAO,CAAC;YAC3B,IAAI,OAAO,EAAE,CAAC;gBACZ,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;gBAC7C,UAAU,GAAK,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC;YACtD,CAAC;YAED,6CAA6C;YAC7C,MAAM,gBAAgB,GAAqB,EAAE,CAAC;YAC9C,MAAM,UAAU,GAAG,MAAM,CAAC,EAAE,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YAClD,IAAI,UAAU,EAAE,CAAC;gBACf,gBAAgB,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC,CAAC;YACzH,CAAC;YACD,iFAAiF;YACjF,MAAM,QAAQ,GAAU,EAAE,CAAC,WAAW,EAAE,UAAU,IAAI,EAAE,CAAC;YACzD,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;gBAC3B,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;gBACtE,IAAI,CAAC,QAAQ;oBAAE,SAAS;gBACxB,MAAM,OAAO,GAAG,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;gBACjF,MAAM,IAAI,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;gBACnC,IAAI,IAAI;oBAAE,gBAAgB,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC;YAC5I,CAAC;YAED,OAAO,CAAC,IAAI,CAAC;gBACX,QAAQ,EAAE,QAAQ;gBAClB,OAAO,EAAE,gBAAgB,CAAC,MAAM,EAAE,mBAAmB,CAAC;gBACtD,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC;gBACvC,YAAY,EAAE,YAAY,IAAI,SAAS;gBACvC,UAAU,EAAE,UAAU,IAAI,SAAS;gBACnC,UAAU;gBACV,WAAW,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS;aACpE,CAAC,CAAC;QACL,CAAC;QAED,kCAAkC;QAClC,MAAM,MAAM,GAAU,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;QAC/C,KAAK,MAAM,KAAK,IAAI,MAAM;YAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC9C,CAAC;IAED,MAAM,WAAW,GAAG,GAAG,CAAC,UAAU,CAAC,CAAC;IACpC,IAAI,WAAW;QAAE,QAAQ,CAAC,WAAW,CAAC,CAAC;IAEvC,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,iFAAiF;AACjF,EAAE;AACF,2BAA2B;AAC3B,yDAAyD;AACzD,kCAAkC;AAClC,wDAAwD;AACxD,EAAE;AACF,oBAAoB;AACpB,yFAAyF;AACzF,0EAA0E;AAC1E,EAAE;AACF,6BAA6B;AAC7B,2EAA2E;AAC3E,oFAAoF;AACpF,kFAAkF;AAClF,2EAA2E;AAE3E,SAAS,UAAU,CAAC,OAAe,EAAE,SAAiB,EAAE,mBAA4B,EAAE,aAAa,GAAG,EAAE;IACtG,MAAM,MAAM,GAAG,IAAI,2BAAS,CAAC;QAC3B,gBAAgB,EAAE,KAAK;QACvB,mBAAmB,EAAE,IAAI;QACzB,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;KACxE,CAAC,CAAC;IACH,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAElC,MAAM,OAAO,GAAmB,EAAE,CAAC;IACnC,MAAM,MAAM,GAAU,GAAG,CAAC,UAAU,EAAE,SAAS,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAE1F,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,KAAK,GAAU,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC;QACxC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,KAAK,GAAG,CAAC,KAAK,CAAC,CAAC;QAE3C,KAAK,MAAM,EAAE,IAAI,KAAK,EAAE,CAAC;YACvB,IAAI,OAAO,GAAG,QAAQ,CAAC;YACvB,IAAI,YAAgC,CAAC;YACrC,IAAI,UAA8B,CAAC;YAEnC,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;gBACf,OAAO,GAAG,QAAQ,CAAC;gBACnB,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;gBACvF,YAAY,GAAG,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC;gBAC/C,UAAU,GAAK,OAAO,EAAE,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YACnF,CAAC;iBAAM,IAAI,EAAE,CAAC,KAAK,EAAE,CAAC;gBACpB,OAAO,GAAG,QAAQ,CAAC;gBACnB,YAAY,GAAG,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;gBAC3C,UAAU,GAAK,OAAO,EAAE,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC7E,CAAC;iBAAM,IAAI,EAAE,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;gBACpC,OAAO,GAAG,aAAa,CAAC;YAC1B,CAAC;YAED,gFAAgF;YAChF,+BAA+B;YAC/B,MAAM,SAAS,GAAI,EAAE,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;YAC3C,MAAM,QAAQ,GAAK,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACtC,MAAM,SAAS,GAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACzC,MAAM,QAAQ,GAAK,SAAS;gBAC1B,CAAC,CAAC,GAAG,SAAS,IAAI,QAAQ,EAAE;gBAC5B,CAAC,CAAC,GAAG,SAAS,IAAI,QAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YAElD,8EAA8E;YAC9E,oFAAoF;YACpF,IAAI,UAA8B,CAAC;YACnC,MAAM,KAAK,GAAU,EAAE,CAAC,UAAU,EAAE,QAAQ,IAAI,EAAE,CAAC;YACnD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,SAAS,EAAE,CAAC;oBAC/C,MAAM,EAAE,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;oBACvD,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;wBAAC,UAAU,GAAG,EAAE,CAAC;wBAAC,MAAM;oBAAC,CAAC;gBAC7C,CAAC;YACH,CAAC;YAED,4DAA4D;YAC5D,4EAA4E;YAC5E,2DAA2D;YAC3D,MAAM,gBAAgB,GAAqB,EAAE,CAAC;YAC9C,MAAM,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YACrD,IAAI,MAAM,EAAE,CAAC;gBACX,0DAA0D;gBAC1D,MAAM,YAAY,GAAG,+BAA+B,CAAC;gBACrD,IAAI,CAAyB,CAAC;gBAC9B,IAAI,OAAO,GAAG,MAAM,CAAC;gBACrB,OAAO,CAAC,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;oBAChD,MAAM,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;oBAC7B,MAAM,OAAO,GAAG,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;oBACjF,MAAM,IAAI,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;oBACnC,IAAI,IAAI;wBAAE,gBAAgB,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC;oBAC1I,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;gBAC7C,CAAC;gBACD,IAAI,OAAO;oBAAE,gBAAgB,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,gBAAgB,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC,CAAC;YACvI,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YACrD,IAAI,MAAM;gBAAE,gBAAgB,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,gBAAgB,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC,CAAC;YAEnI,OAAO,CAAC,IAAI,CAAC;gBACX,QAAQ;gBACR,OAAO,EAAE,gBAAgB,CAAC,OAAO,EAAE,mBAAmB,CAAC;gBACvD,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC;gBAC9D,YAAY;gBACZ,UAAU;gBACV,UAAU;gBACV,WAAW,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS;aACpE,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,iFAAiF;AAEjF,SAAS,iBAAiB,CAAC,OAAe,EAAE,SAAiB,EAAE,mBAA4B;IACzF,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACrC,MAAM,OAAO,GAAmB,EAAE,CAAC;IAEnC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,KAAK,MAAM,OAAO,IAAI,OAAO,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAC;YAC7C,IAAI,OAAO,CAAC,IAAI,KAAK,UAAU;gBAAE,SAAS;YAE1C,IAAI,aAAa,GAAG,CAAC,CAAC;YACtB,IAAI,YAAY,GAAG,QAAQ,CAAC;YAC5B,IAAI,QAA4B,CAAC;YAEjC,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC;gBACvC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC;gBACjC,aAAa,IAAI,MAAM,CAAC,QAAQ,IAAI,CAAC,CAAC;gBACtC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,WAAW,CAAC;gBAE5C,IAAI,MAAM,KAAK,QAAQ,IAAI,YAAY,KAAK,QAAQ,EAAE,CAAC;oBACrD,YAAY,GAAG,QAAQ,CAAC;oBACxB,QAAQ,GAAG,MAAM,CAAC,aAAa,CAAC;gBAClC,CAAC;qBAAM,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,WAAW,EAAE,CAAC;oBAClF,IAAI,YAAY,KAAK,QAAQ;wBAAE,YAAY,GAAG,aAAa,CAAC;gBAC9D,CAAC;YACH,CAAC;YAED,iDAAiD;YACjD,IAAI,UAA8B,CAAC;YACnC,MAAM,QAAQ,GAAG,IAAI,SAAS,GAAG,CAAC;YAClC,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC;gBACrC,IAAI,GAAG,CAAC,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACnC,MAAM,EAAE,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;oBACzD,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;wBAAC,UAAU,GAAG,EAAE,CAAC;wBAAC,MAAM;oBAAC,CAAC;gBAC7C,CAAC;YACH,CAAC;YAED,2EAA2E;YAC3E,MAAM,mBAAmB,GAAqB,EAAE,CAAC;YACjD,IAAI,aAAa,GAAG,CAAC,CAAC;YACtB,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC;gBACvC,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,UAAU,IAAI,EAAE,EAAE,CAAC;oBACxC,MAAM,IAAI,GAAW,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,SAAS,IAAI,0BAA0B,CAAC;oBAClF,MAAM,GAAG,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;oBAC5B,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,EAAE,QAAQ,CAAC,CAAC;oBACnD,mBAAmB,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,cAAc,EAAE,aAAa,GAAG,GAAG,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAClI,CAAC;YACH,CAAC;YAED,OAAO,CAAC,IAAI,CAAC;gBACX,QAAQ,EAAE,GAAG,OAAO,CAAC,IAAI,KAAK,OAAO,CAAC,IAAI,EAAE;gBAC5C,OAAO,EAAE,gBAAgB,CAAC,YAAY,EAAE,mBAAmB,CAAC;gBAC5D,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,GAAG,CAAC,EAAE,kCAAkC;gBAC/E,YAAY,EAAE,QAAQ;gBACtB,UAAU;gBACV,WAAW,EAAE,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,SAAS;aAC1E,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,iFAAiF;AACjF,EAAE;AACF,gEAAgE;AAChE,EAAE;AACF,MAAM;AACN,mBAAmB;AACnB,oBAAoB;AACpB,8BAA8B;AAC9B,sBAAsB;AACtB,gCAAgC;AAChC,0BAA0B;AAC1B,kCAAkC;AAClC,gCAAgC;AAChC,6DAA6D;AAC7D,+BAA+B;AAC/B,0GAA0G;AAC1G,uGAAuG;AACvG,0GAA0G;AAC1G,gBAAgB;AAChB,eAAe;AACf,aAAa;AACb,WAAW;AACX,SAAS;AACT,MAAM;AAEN,SAAS,mBAAmB,CAAC,OAAe,EAAE,SAAiB,EAAE,mBAA4B,EAAE,aAAa,GAAG,EAAE;IAC/G,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACnC,MAAM,OAAO,GAAmB,EAAE,CAAC;IAEnC,SAAS,UAAU,CAAC,MAAa,EAAE,SAAmB;QACpD,KAAK,MAAM,KAAK,IAAI,MAAM,IAAI,EAAE,EAAE,CAAC;YACjC,MAAM,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAE1E,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC;gBACrC,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC;oBACpC,8EAA8E;oBAC9E,MAAM,aAAa,GAAU,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC;oBAChD,MAAM,UAAU,GAAG,aAAa,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;oBAC3D,IAAI,CAAC,UAAU;wBAAE,SAAS;oBAE1B,MAAM,SAAS,GAAW,UAAU,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,IAAI,QAAQ,CAAC;oBACvE,IAAI,OAAe,CAAC;oBACpB,IAAI,SAAS,KAAK,QAAQ;wBAAE,OAAO,GAAG,QAAQ,CAAC;yBAC1C,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,SAAS;wBAAE,OAAO,GAAG,aAAa,CAAC;;wBAChF,OAAO,GAAG,QAAQ,CAAC;oBACxB,OAAO,GAAG,gBAAgB,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC;oBAEzD,qDAAqD;oBACrD,MAAM,QAAQ,GAAG,CAAC,GAAG,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBAE1D,uDAAuD;oBACvD,IAAI,UAA8B,CAAC;oBACnC,MAAM,IAAI,GAAG,IAAI,MAAM,CAAC,IAAI,SAAS,SAAS,CAAC,CAAC;oBAChD,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;oBAC3C,IAAI,UAAU;wBAAE,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBAEzD,6EAA6E;oBAC7E,MAAM,aAAa,GAAqB,EAAE,CAAC;oBAC3C,IAAI,MAAM,GAAG,CAAC,CAAC;oBACf,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;wBAChC,KAAK,MAAM,GAAG,IAAI,GAAG,CAAC,WAAW,IAAI,EAAE,EAAE,CAAC;4BACxC,MAAM,QAAQ,GAAW,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;4BACxC,MAAM,WAAW,GAAW,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC;4BAClD,MAAM,OAAO,GAAW,GAAG,CAAC,IAAI,IAAI,cAAc,EAAE,MAAM,EAAE,CAAC;4BAC7D,MAAM,GAAG,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;4BACvE,MAAM,OAAO,GAAG,QAAQ;gCACtB,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;gCACpE,CAAC,CAAC,SAAS,CAAC;4BACd,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;4BACxG,IAAI,IAAI,EAAE,CAAC;gCACT,aAAa,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,GAAG,OAAO,GAAG,GAAG,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,oBAAoB,CAAC,WAAW,CAAC,IAAI,mBAAmB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;4BAClJ,CAAC;wBACH,CAAC;oBACH,CAAC;oBAED,OAAO,CAAC,IAAI,CAAC;wBACX,QAAQ;wBACR,OAAO;wBACP,UAAU,EAAE,UAAU,CAAC,QAAQ,IAAI,CAAC;wBACpC,YAAY,EAAE,UAAU,CAAC,KAAK,EAAE,OAAO;wBACvC,UAAU,EAAE,UAAU,CAAC,KAAK,EAAE,KAAK;wBACnC,UAAU;wBACV,WAAW,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS;qBAC9D,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YAED,6BAA6B;YAC7B,UAAU,CAAC,KAAK,CAAC,MAAM,IAAI,EAAE,EAAE,WAAW,CAAC,CAAC;QAC9C,CAAC;IACH,CAAC;IAED,UAAU,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;IACpC,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,iFAAiF;AAEjF,SAAS,YAAY,CAAC,QAAgB,EAAE,OAAe;IACrD,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;IACjD,IAAI,GAAG,KAAK,MAAM;QAAE,OAAO,KAAK,CAAC;IACjC,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;QACpB,wFAAwF;QACxF,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACnC,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;gBAAE,OAAO,gBAAgB,CAAC;QAC9H,CAAC;QAAC,MAAM,CAAC,CAAC,kBAAkB,CAAC,CAAC;QAC9B,OAAO,cAAc,CAAC;IACxB,CAAC;IACD,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACxC,IAAI,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC;YAAE,OAAO,KAAK,CAAC;QAC/E,IAAI,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC;YAAG,OAAO,UAAU,CAAC;QACtD,IAAI,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC;YAAE,OAAO,OAAO,CAAC;IACxF,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,iFAAiF;AACjF,EAAE;AACF,iFAAiF;AACjF,oEAAoE;AACpE,iDAAiD;AAEjD,KAAK,UAAU,oBAAoB,CACjC,MAAc,EACd,OAA0B,EAC1B,UAA0B,EAC1B,eAAwB;IAExB,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IAC9D,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,MAAM,OAAO,GAAG,MAAM,IAAA,WAAI,EAAC,OAAO,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QACrE,KAAK,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC;IACzB,CAAC;IAED,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAA4B,CAAC;IAC9D,MAAM,cAAc,GAAqB,EAAE,CAAC;IAE5C,KAAK,MAAM,QAAQ,IAAI,KAAK,EAAE,CAAC;QAC7B,MAAM,IAAI,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;QACpC,IAAI,CAAC,IAAI;YAAE,SAAS;QACpB,MAAM,GAAG,GAAmB;YAC1B,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;YACjC,IAAI;YACJ,cAAc,EAAE,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;SAC5D,CAAC;QAEF,IAAI,eAAe,EAAE,CAAC;YACpB,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;YAC/E,IAAI,OAAO,GAAG,KAAK,CAAC;YACpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC3C,0FAA0F;gBAC1F,MAAM,UAAU,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;gBAC3G,IAAI,UAAU,IAAI,QAAQ,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;oBAC1E,MAAM,GAAG,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;oBAC3C,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBACd,iBAAiB,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;oBAC9B,OAAO,GAAG,IAAI,CAAC;oBACf,MAAM;gBACR,CAAC;YACH,CAAC;YACD,IAAI,CAAC,OAAO;gBAAE,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACzC,CAAC;aAAM,CAAC;YACN,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;IAED,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,CAAC;AAC/C,CAAC;AAaM,KAAK,UAAU,kBAAkB,CACtC,MAAkB,EAClB,SAAiB,EACjB,OAQI,EAAE;IAEN,MAAM,SAAS,GAAG,MAAM,CAAC,kBAAkB,CAAC;IAC5C,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE,CAAC;QAC5C,MAAM,IAAI,KAAK,CAAC,0EAA0E,CAAC,CAAC;IAC9F,CAAC;IAED,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,EAAE,SAAS,IAAI,IAAI,CAAC;IAEjD,sBAAsB;IACtB,MAAM,OAAO,GAAiD,EAAE,CAAC;IACjE,IAAI,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE,CAAC;QAC7B,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACjC,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;QACpF,CAAC;IACH,CAAC;SAAM,IAAI,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC;QAC1C,KAAK,MAAM,GAAG,IAAI,SAAS,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;YAC/C,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;QACrF,CAAC;IACH,CAAC;IAED,yBAAyB;IACzB,MAAM,UAAU,GAAmB,EAAE,CAAC;IACtC,MAAM,mBAAmB,GAAG,SAAS,EAAE,mBAAmB,CAAC;IAE3D,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;QAC1B,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YACjC,MAAM,IAAI,KAAK,CAAC,+BAA+B,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;QACjE,CAAC;QACD,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACtD,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,IAAI,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACjE,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAE3C,QAAQ,MAAM,EAAE,CAAC;YACf,KAAK,KAAK;gBACR,UAAU,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,OAAO,CAAC,CAAC,CAAC;gBAC/E,MAAM;YACR,KAAK,UAAU;gBACb,UAAU,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,OAAO,CAAC,CAAC,CAAC;gBACpF,MAAM;YACR,KAAK,OAAO;gBACV,UAAU,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,OAAO,CAAC,CAAC,CAAC;gBACjF,MAAM;YACR,KAAK,cAAc;gBACjB,UAAU,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,OAAO,EAAE,SAAS,EAAE,mBAAmB,CAAC,CAAC,CAAC;gBAC/E,MAAM;YACR,KAAK,gBAAgB;gBACnB,UAAU,CAAC,IAAI,CAAC,GAAG,mBAAmB,CAAC,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,OAAO,CAAC,CAAC,CAAC;gBAC1F,MAAM;YACR;gBACE,MAAM,IAAI,KAAK,CAAC,mCAAmC,MAAM,EAAE,CAAC,CAAC;QACjE,CAAC;IACH,CAAC;IAED,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;IACnE,CAAC;IAED,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,MAAM,CAAC;IACvE,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,MAAM,CAAC;IACvE,MAAM,KAAK,GAAI,UAAU,CAAC,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IAEnD,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChB,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,YAAY,EAAE,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IAC1F,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,oBAAW,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAChD,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,UAAU,EAAE,CAAC;IAE1C,MAAM,WAAW,GAAG,SAAS,EAAE,eAAe,CAAC;IAC/C,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,WAAW,EAAE,IAAI,IAAI,YAAY,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC;IAE5F,6EAA6E;IAC7E,+EAA+E;IAC/E,mFAAmF;IACnF,MAAM,QAAQ,GAAQ;QACpB,IAAI,EAAE,OAAO;QACb,SAAS,EAAE,WAAW,EAAE,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;QAC3D,gBAAgB,EAAE,SAAS,EAAE,iBAAiB,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE;KAC3F,CAAC;IACF,IAAI,WAAW,EAAE,OAAO;QAAE,QAAQ,CAAC,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC;IACjE,IAAI,IAAI,CAAC,OAAO;QAAE,QAAQ,CAAC,KAAK,GAAG,EAAE,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;IAEhE,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,aAAa,CAAC,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;IAClE,MAAM,KAAK,GAAG,GAAG,CAAC,EAAG,CAAC;IAEtB,MAAM,eAAe,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QAC3C,MAAM,MAAM,GAAQ;YAClB,iBAAiB,EAAE,CAAC,CAAC,QAAQ;YAC7B,aAAa,EAAE,CAAC,CAAC,QAAQ;YACzB,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,KAAK,EAAE,WAAW;YAClB,YAAY,EAAE,CAAC,CAAC,UAAU;SAC3B,CAAC;QACF,IAAI,CAAC,CAAC,YAAY;YAAE,MAAM,CAAC,YAAY,GAAG,CAAC,CAAC,YAAY,CAAC;QACzD,IAAI,CAAC,CAAC,UAAU;YAAI,MAAM,CAAC,UAAU,GAAK,CAAC,CAAC,UAAU,CAAC;QACvD,wEAAwE;QACxE,4EAA4E;QAC5E,qDAAqD;QACrD,IAAI,CAAC,CAAC,UAAU;YAAI,MAAM,CAAC,QAAQ,GAAG,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC;QACnE,IAAI,SAAS,EAAE,kBAAkB,EAAE,OAAO;YAAE,MAAM,CAAC,OAAO,GAAG,SAAS,CAAC,kBAAkB,CAAC,OAAO,CAAC;QAClG,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC,CAAC;IAEH,yEAAyE;IACzE,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,uBAAuB,CAAC,eAAe,EAAE,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAEnG,6EAA6E;IAC7E,MAAM,4BAA4B,GAAG,SAAS,EAAE,iCAAiC,IAAI,MAAM,CAAC;IAE5F,iEAAiE;IACjE,IAAI,gBAAgB,GAAG,IAAI,GAAG,EAA4B,CAAC;IAC3D,IAAI,aAAa,GAAqB,EAAE,CAAC;IAEzC,MAAM,MAAM,GAAI,SAAS,EAAE,WAAW,CAAC;IACvC,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB;QACtC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,iBAAiB,CAAC;QACjD,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAExE,IAAI,SAAS,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC1C,MAAM,OAAO,GAAO,MAAM,EAAE,OAAO,IAAI,gEAAgE,CAAC;QACxG,MAAM,WAAW,GAAG,MAAM,EAAE,eAAe,IAAI,IAAI,CAAC;QACpD,MAAM,EAAE,iBAAiB,EAAE,cAAc,EAAE,GAAG,MAAM,oBAAoB,CAAC,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;QACtH,gBAAgB,GAAG,iBAAiB,CAAC;QACrC,aAAa,GAAM,cAAc,CAAC;IACpC,CAAC;IAED,4DAA4D;IAC5D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3C,MAAM,WAAW,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QAClC,MAAM,WAAW,GAAG,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC;QACtC,IAAI,CAAC,WAAW,EAAE,EAAE;YAAE,SAAS;QAE/B,MAAM,SAAS,GAAO,WAAW,CAAC,OAAO,KAAK,QAAQ,CAAC;QACvD,MAAM,gBAAgB,GAAG,SAAS,CAAC,CAAC,CAAC,4BAA4B,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;QACpF,MAAM,SAAS,GAAU,SAAS,IAAI,4BAA4B,KAAK,OAAO,CAAC;QAE/E,MAAM,QAAQ,GAAqB,EAAE,CAAC;QACtC,KAAK,MAAM,GAAG,IAAI,WAAW,CAAC,WAAW,IAAI,EAAE,EAAE,CAAC;YAChD,4DAA4D;YAC5D,IAAI,SAAS,IAAI,GAAG,CAAC,cAAc,KAAK,YAAY;gBAAE,SAAS;YAC/D,IAAI,gBAAgB;gBAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC3C,CAAC;QACD,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAElD,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;YAC3B,MAAM,OAAO,CAAC,0BAA0B,CACtC,EAAE,cAAc,EAAE,GAAG,CAAC,cAAc,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,EACnG,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,WAAW,CAAC,EAAE,CACtC,CAAC;QACJ,CAAC;IACH,CAAC;IAED,wDAAwD;IACxD,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;QAChC,MAAM,OAAO,CAAC,uBAAuB,CACnC,EAAE,cAAc,EAAE,GAAG,CAAC,cAAc,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,EACnG,MAAM,CAAC,OAAO,EAAE,KAAK,CACtB,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,CAAC,aAAa,CAAC,EAAE,KAAK,EAAE,WAAW,EAAS,EAAE,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAElF,MAAM,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,OAAO,+BAA+B,KAAK,EAAE,CAAC;IACxF,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;AACnF,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# publish-test-results
|
|
2
2
|
|
|
3
|
-
Parses test result files (TRX, NUnit XML, JUnit, Cucumber JSON) and publishes them to an Azure DevOps Test Run, linking results back to Test Cases either directly by TC ID (when available in the result file) or by `AutomatedTestName` matching.
|
|
3
|
+
Parses test result files (TRX, NUnit XML, JUnit, Cucumber JSON, Playwright JSON) and publishes them to an Azure DevOps Test Run, linking results back to Test Cases either directly by TC ID (when available in the result file) or by `AutomatedTestName` matching.
|
|
4
4
|
|
|
5
5
|
---
|
|
6
6
|
|
|
@@ -44,7 +44,7 @@ ado-sync publish-test-results \
|
|
|
44
44
|
|
|
45
45
|
| Format | Extension | Auto-detected | TC ID in file? | Attachments extracted |
|
|
46
46
|
|--------|-----------|---------------|----------------|----------------------|
|
|
47
|
-
| TRX (MSTest / VSTest) | `.trx` | Yes (`<TestRun>` root) | Yes — via `[TestProperty("tc","ID")]` | `<Output><StdOut>` + `<ResultFiles>` |
|
|
47
|
+
| TRX (MSTest / SpecFlow / VSTest) | `.trx` | Yes (`<TestRun>` root) | Yes — via `[TestProperty("tc","ID")]` | `<Output><StdOut>` + `<Output><ResultFiles>` |
|
|
48
48
|
| NUnit XML (native) | `.xml` | Yes (`<test-run>` root) | Yes — via `[Property("tc","ID")]` | `<output>` + `<attachments>` |
|
|
49
49
|
| JUnit XML | `.xml` | Yes (`<testsuites>` / `<testsuite>` root) | Optional — via `<property name="tc" value="ID"/>` | `<system-out>`, `<system-err>`, `[[ATTACHMENT\|path]]` (Playwright) |
|
|
50
50
|
| Cucumber JSON | `.json` | Yes (JSON array, Cucumber format) | Yes — via `@tc:ID` tag on scenario | `step.embeddings[]` (base64 screenshots/video) |
|
|
@@ -52,6 +52,14 @@ ado-sync publish-test-results \
|
|
|
52
52
|
|
|
53
53
|
> **NUnit via TRX**: when NUnit tests are run through the VSTest adapter (`--logger trx`), `[Property]` values are **not** included in the TRX output. Use `--logger "nunit3;LogFileName=results.xml"` to get the native NUnit XML format, which does include property values.
|
|
54
54
|
|
|
55
|
+
> **TRX `<ResultFiles>` nesting**: In TRX format, `<ResultFiles>` is a child of `<Output>`, not a direct child of `<UnitTestResult>`. ado-sync reads from `UnitTestResult > Output > ResultFiles > ResultFile` — paths are resolved relative to the result file's directory.
|
|
56
|
+
|
|
57
|
+
> **Attachment paths**: All file paths embedded in result files (`<ResultFile path="...">` in TRX, `<filePath>` in NUnit XML, `[[ATTACHMENT|path]]` in JUnit, `attachments[].path` in Playwright JSON) are resolved **relative to the result file's directory**, not the working directory. Ensure screenshots and other artifacts stay in the same folder hierarchy as your test runner produces.
|
|
58
|
+
|
|
59
|
+
> **Automated vs planned runs**: ado-sync creates **standalone automated runs** without a test plan association. Do not add `plan.id` to the run model — doing so makes Azure DevOps treat the run as "planned", requiring `testPointId` and `testCaseRevision` for every result (which ado-sync doesn't provide). TC linking is done via `testCase.id` on individual results, which works for automated runs without a plan association.
|
|
60
|
+
|
|
61
|
+
> **Valid attachment types**: Azure DevOps only accepts `GeneralAttachment` and `ConsoleLog` as `attachmentType` values. ado-sync maps screenshots, images, and binary files to `GeneralAttachment`; plain text and log files to `ConsoleLog`. Other type names (e.g. `Screenshot`, `Log`, `VideoLog`) will cause a 400 error.
|
|
62
|
+
|
|
55
63
|
### How TC linking works
|
|
56
64
|
|
|
57
65
|
Results are linked to Azure Test Cases in priority order:
|
|
@@ -88,6 +96,25 @@ ado-sync publish-test-results --testResult results/results.trx
|
|
|
88
96
|
|
|
89
97
|
---
|
|
90
98
|
|
|
99
|
+
### C# SpecFlow
|
|
100
|
+
|
|
101
|
+
SpecFlow generates TRX output via the VSTest adapter. ado-sync reads `@tc:ID` tags from the Gherkin `@tc:ID` tag embedded as `[TestProperty("tc","ID")]` in the TRX by SpecFlow's runner.
|
|
102
|
+
|
|
103
|
+
```bash
|
|
104
|
+
# 1. Push feature files to create TCs — @tc:ID is written back into .feature files
|
|
105
|
+
ado-sync push
|
|
106
|
+
|
|
107
|
+
# 2. Run SpecFlow tests (generates TRX)
|
|
108
|
+
dotnet test --logger "trx;LogFileName=results.trx"
|
|
109
|
+
|
|
110
|
+
# 3. Publish results
|
|
111
|
+
ado-sync publish-test-results --testResult results/results.trx
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
SpecFlow uses `local.type: gherkin` (same as Cucumber). TC IDs are `@tc:ID` Gherkin tags, which SpecFlow embeds into the TRX as `TestProperty` values automatically.
|
|
115
|
+
|
|
116
|
+
---
|
|
117
|
+
|
|
91
118
|
### Java JUnit 4 / JUnit 5 (Maven Surefire)
|
|
92
119
|
|
|
93
120
|
Maven Surefire generates JUnit XML with `classname` = FQCN and `name` = method name. ado-sync builds `automatedTestName` as `FQCN.methodName` on push, which matches the `classname.name` format in the JUnit XML automatically.
|
|
@@ -276,18 +303,19 @@ ado-sync publish-test-results \
|
|
|
276
303
|
|
|
277
304
|
---
|
|
278
305
|
|
|
279
|
-
| Framework | Result format | TC ID in file | Attachments uploaded |
|
|
280
|
-
|
|
281
|
-
| C# MSTest | TRX | ✅ `[TestProperty("tc","ID")]` | `<Output><StdOut>` +
|
|
282
|
-
| C# NUnit | NUnit XML | ✅ `[Property("tc","ID")]` | `<output>` text +
|
|
283
|
-
|
|
|
284
|
-
| Java
|
|
285
|
-
|
|
|
286
|
-
|
|
|
287
|
-
|
|
|
288
|
-
|
|
|
289
|
-
|
|
|
290
|
-
| Playwright |
|
|
306
|
+
| Framework | Result format | TC ID in file | Attachments uploaded | Live-tested |
|
|
307
|
+
|-----------|---------------|---------------|----------------------|-------------|
|
|
308
|
+
| C# MSTest | TRX | ✅ `[TestProperty("tc","ID")]` | `<Output><StdOut>` + `<Output><ResultFiles>` files | ✅ |
|
|
309
|
+
| C# NUnit | NUnit XML | ✅ `[Property("tc","ID")]` | `<output>` text + `<attachments><filePath>` files | ✅ |
|
|
310
|
+
| C# SpecFlow | TRX | ✅ `@tc:ID` → `[TestProperty]` | `<Output><StdOut>` + `<Output><ResultFiles>` files | ✅ |
|
|
311
|
+
| Java JUnit 4/5 | JUnit XML | ⚠️ optional `<property name="tc">` | `<system-out>`, `<system-err>` | ✅ |
|
|
312
|
+
| Java TestNG | JUnit XML | ⚠️ optional `<property name="tc">` | `<system-out>`, `<system-err>` | ✅ |
|
|
313
|
+
| Python pytest | JUnit XML | ⚠️ optional (conftest.py hook) | `<system-out>`, `<system-err>` | ✅ |
|
|
314
|
+
| Jest | JUnit XML | ⚠️ optional `<property name="tc">` | `<system-out>`, `<system-err>` | ✅ |
|
|
315
|
+
| WebdriverIO / Jasmine | JUnit XML | ⚠️ optional `<property name="tc">` | `<system-out>`, `<system-err>` | ✅ |
|
|
316
|
+
| Cucumber JS | Cucumber JSON | ✅ `@tc:ID` tag | `step.embeddings[]` (base64 screenshots/video) | ✅ |
|
|
317
|
+
| Playwright | Playwright JSON | Via `@tc:ID` in test title | Files from `attachments[].path` (screenshots, videos, traces) | ✅ |
|
|
318
|
+
| Playwright | JUnit XML | Via `@tc:ID` in test title | `[[ATTACHMENT\|path]]` referenced files | ✅ |
|
|
291
319
|
|
|
292
320
|
---
|
|
293
321
|
|
|
@@ -299,11 +327,15 @@ ado-sync uploads screenshots, videos, and logs from test results to the correspo
|
|
|
299
327
|
|
|
300
328
|
| Format | Extracted automatically |
|
|
301
329
|
|--------|------------------------|
|
|
302
|
-
| TRX | `<Output><StdOut>` → console log; `<ResultFiles><ResultFile>` → files on disk |
|
|
330
|
+
| TRX | `<Output><StdOut>` → console log; `<Output><ResultFiles><ResultFile path="...">` → files on disk |
|
|
303
331
|
| NUnit XML | `<output>` → console log; `<attachments><attachment><filePath>` → files on disk |
|
|
304
332
|
| JUnit XML | `<system-out>` → log; `<system-err>` → log; `[[ATTACHMENT\|path]]` → Playwright files |
|
|
305
333
|
| Cucumber JSON | `step.embeddings[]` → base64-encoded screenshots/video |
|
|
306
|
-
| Playwright JSON | `results[].attachments[]` → files on disk (screenshots, videos, traces) |
|
|
334
|
+
| Playwright JSON | `results[].attachments[].path` → files on disk (screenshots, videos, traces) |
|
|
335
|
+
|
|
336
|
+
> **Note**: All file paths are resolved relative to the result file's directory, not the process working directory. This matches how test runners (Playwright, MSTest, NUnit) write relative paths in their output.
|
|
337
|
+
|
|
338
|
+
> **Attachment types**: Azure DevOps accepts only `GeneralAttachment` (images, videos, binary files) and `ConsoleLog` (text, logs) as attachment type values. ado-sync maps all file types to one of these two automatically.
|
|
307
339
|
|
|
308
340
|
### `--attachmentsFolder` — folder-based attachment upload
|
|
309
341
|
|