@dxos/test-utils 0.6.12-main.5cc132e → 0.6.12-main.78ddbdf
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.
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/resource.ts"],
|
|
4
4
|
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { onTestFinished } from 'vitest';\n\ninterface ResourceLike {\n open(): Promise<any>;\n close(): Promise<any>;\n}\n\n// TODO(burdon): Replace with abstraction relating to Context object?\nexport const openAndClose = async (...resources: ResourceLike[]) => {\n for (const resourceLike of resources) {\n await resourceLike.open();\n onTestFinished(() => resourceLike.close());\n }\n};\n"],
|
|
5
|
-
"mappings": "
|
|
5
|
+
"mappings": ";;;AAIA,SAASA,sBAAsB;AAQxB,IAAMC,eAAe,UAAUC,cAAAA;AACpC,aAAWC,gBAAgBD,WAAW;AACpC,UAAMC,aAAaC,KAAI;AACvBC,mBAAe,MAAMF,aAAaG,MAAK,CAAA;EACzC;AACF;",
|
|
6
6
|
"names": ["onTestFinished", "openAndClose", "resources", "resourceLike", "open", "onTestFinished", "close"]
|
|
7
7
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"inputs":{"packages/common/test-utils/src/resource.ts":{"bytes":1585,"imports":[{"path":"vitest","kind":"import-statement","external":true}],"format":"esm"},"packages/common/test-utils/src/index.ts":{"bytes":498,"imports":[{"path":"packages/common/test-utils/src/resource.ts","kind":"import-statement","original":"./resource"}],"format":"esm"},"packages/common/test-utils/src/lock.ts":{"bytes":2083,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true}],"format":"esm"},"packages/common/test-utils/src/playwright.ts":{"bytes":7676,"imports":[{"path":"@nx/devkit","kind":"import-statement","external":true},{"path":"node:path","kind":"import-statement","external":true},{"path":"pkg-up","kind":"import-statement","external":true},{"path":"packages/common/test-utils/src/lock.ts","kind":"import-statement","original":"./lock"}],"format":"esm"}},"outputs":{"packages/common/test-utils/dist/lib/node-esm/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":
|
|
1
|
+
{"inputs":{"packages/common/test-utils/src/resource.ts":{"bytes":1585,"imports":[{"path":"vitest","kind":"import-statement","external":true}],"format":"esm"},"packages/common/test-utils/src/index.ts":{"bytes":498,"imports":[{"path":"packages/common/test-utils/src/resource.ts","kind":"import-statement","original":"./resource"}],"format":"esm"},"packages/common/test-utils/src/lock.ts":{"bytes":2083,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true}],"format":"esm"},"packages/common/test-utils/src/playwright.ts":{"bytes":7676,"imports":[{"path":"@nx/devkit","kind":"import-statement","external":true},{"path":"node:path","kind":"import-statement","external":true},{"path":"pkg-up","kind":"import-statement","external":true},{"path":"packages/common/test-utils/src/lock.ts","kind":"import-statement","original":"./lock"}],"format":"esm"}},"outputs":{"packages/common/test-utils/dist/lib/node-esm/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":800},"packages/common/test-utils/dist/lib/node-esm/index.mjs":{"imports":[{"path":"vitest","kind":"import-statement","external":true}],"exports":["openAndClose"],"entryPoint":"packages/common/test-utils/src/index.ts","inputs":{"packages/common/test-utils/src/resource.ts":{"bytesInOutput":214},"packages/common/test-utils/src/index.ts":{"bytesInOutput":0}},"bytes":415},"packages/common/test-utils/dist/lib/node-esm/playwright.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":4883},"packages/common/test-utils/dist/lib/node-esm/playwright.mjs":{"imports":[{"path":"@nx/devkit","kind":"import-statement","external":true},{"path":"node:path","kind":"import-statement","external":true},{"path":"pkg-up","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true}],"exports":["e2ePreset","setupPage"],"entryPoint":"packages/common/test-utils/src/playwright.ts","inputs":{"packages/common/test-utils/src/playwright.ts":{"bytesInOutput":1644},"packages/common/test-utils/src/lock.ts":{"bytesInOutput":416}},"bytes":2370}}}
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/playwright.ts", "../../../src/lock.ts"],
|
|
4
4
|
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\n/* eslint-disable no-console */\n\nimport { workspaceRoot } from '@nx/devkit';\nimport { type Browser, type BrowserContext, type PlaywrightTestConfig } from '@playwright/test';\nimport { join, relative } from 'node:path';\nimport pkgUp from 'pkg-up';\n\nimport { Lock } from './lock';\n\nexport const e2ePreset = (cwd: string): PlaywrightTestConfig => {\n const packageJson = pkgUp.sync({ cwd });\n const packageDir = packageJson!.split('/').slice(0, -1).join('/');\n const packageDirRelative = relative(workspaceRoot, packageDir);\n const testResultsDir = join(workspaceRoot, 'test-results', packageDirRelative, 'results.xml');\n\n return {\n reporter: process.env.CI ? [['list'], ['junit', { outputFile: testResultsDir }]] : [['list']],\n use: {\n trace: 'retain-on-failure',\n },\n };\n};\n\nexport type SetupOptions = {\n url?: string;\n bridgeLogs?: boolean;\n};\n\nexport const setupPage = async (browser: Browser | BrowserContext, options: SetupOptions = {}) => {\n const { url, bridgeLogs } = options;\n\n const context = 'newContext' in browser ? await browser.newContext() : browser;\n const page = await context.newPage();\n\n // TODO(wittjosiah): Remove?\n if (bridgeLogs) {\n const lock = new Lock();\n\n page.on('pageerror', async (error) => {\n await lock.executeSynchronized(async () => {\n // eslint-disable-next-line no-console\n console.log(error);\n });\n });\n\n page.on('console', async (msg) => {\n try {\n const argsPromise = Promise.all(msg.args().map((x) => x.jsonValue()));\n await lock.executeSynchronized(async () => {\n const args = await argsPromise;\n\n if (args.length > 0) {\n console.log(...args);\n } else {\n console.log(msg);\n }\n });\n } catch (err) {\n console.error('Failed to parse message', err);\n }\n });\n }\n\n if (url) {\n await page.goto(url);\n }\n\n return { context, page };\n};\n", "//\n// Copyright 2022 DXOS.org\n//\n\nimport { trigger } from '@dxos/async';\n\n// Copied from @dxos/async.\nexport class Lock {\n private _lastPromise = Promise.resolve();\n\n async executeSynchronized<T>(fun: () => Promise<T>): Promise<T> {\n const prevPromise = this._lastPromise;\n const [getPromise, resolve] = trigger();\n this._lastPromise = getPromise();\n\n await prevPromise;\n try {\n const value = await fun();\n return value;\n } finally {\n resolve();\n }\n }\n}\n"],
|
|
5
|
-
"mappings": "
|
|
5
|
+
"mappings": ";;;AAMA,SAASA,qBAAqB;AAE9B,SAASC,MAAMC,gBAAgB;AAC/B,OAAOC,WAAW;;;ACLlB,SAASC,eAAe;AAGjB,IAAMC,OAAN,MAAMA;EAAN;AACGC,wBAAeC,QAAQC,QAAO;;EAEtC,MAAMC,oBAAuBC,KAAmC;AAC9D,UAAMC,cAAc,KAAKL;AACzB,UAAM,CAACM,YAAYJ,OAAAA,IAAWK,QAAAA;AAC9B,SAAKP,eAAeM,WAAAA;AAEpB,UAAMD;AACN,QAAI;AACF,YAAMG,QAAQ,MAAMJ,IAAAA;AACpB,aAAOI;IACT,UAAA;AACEN,cAAAA;IACF;EACF;AACF;;;ADVO,IAAMO,YAAY,CAACC,QAAAA;AACxB,QAAMC,cAAcC,MAAMC,KAAK;IAAEH;EAAI,CAAA;AACrC,QAAMI,aAAaH,YAAaI,MAAM,GAAA,EAAKC,MAAM,GAAG,EAAC,EAAGC,KAAK,GAAA;AAC7D,QAAMC,qBAAqBC,SAASC,eAAeN,UAAAA;AACnD,QAAMO,iBAAiBJ,KAAKG,eAAe,gBAAgBF,oBAAoB,aAAA;AAE/E,SAAO;IACLI,UAAUC,QAAQC,IAAIC,KAAK;MAAC;QAAC;;MAAS;QAAC;QAAS;UAAEC,YAAYL;QAAe;;QAAM;MAAC;QAAC;;;IACrFM,KAAK;MACHC,OAAO;IACT;EACF;AACF;AAOO,IAAMC,YAAY,OAAOC,SAAmCC,UAAwB,CAAC,MAAC;AAC3F,QAAM,EAAEC,KAAKC,WAAU,IAAKF;AAE5B,QAAMG,UAAU,gBAAgBJ,UAAU,MAAMA,QAAQK,WAAU,IAAKL;AACvE,QAAMM,OAAO,MAAMF,QAAQG,QAAO;AAGlC,MAAIJ,YAAY;AACd,UAAMK,OAAO,IAAIC,KAAAA;AAEjBH,SAAKI,GAAG,aAAa,OAAOC,UAAAA;AAC1B,YAAMH,KAAKI,oBAAoB,YAAA;AAE7BC,gBAAQC,IAAIH,KAAAA;MACd,CAAA;IACF,CAAA;AAEAL,SAAKI,GAAG,WAAW,OAAOK,QAAAA;AACxB,UAAI;AACF,cAAMC,cAAcC,QAAQC,IAAIH,IAAII,KAAI,EAAGC,IAAI,CAACC,MAAMA,EAAEC,UAAS,CAAA,CAAA;AACjE,cAAMd,KAAKI,oBAAoB,YAAA;AAC7B,gBAAMO,OAAO,MAAMH;AAEnB,cAAIG,KAAKI,SAAS,GAAG;AACnBV,oBAAQC,IAAG,GAAIK,IAAAA;UACjB,OAAO;AACLN,oBAAQC,IAAIC,GAAAA;UACd;QACF,CAAA;MACF,SAASS,KAAK;AACZX,gBAAQF,MAAM,2BAA2Ba,GAAAA;MAC3C;IACF,CAAA;EACF;AAEA,MAAItB,KAAK;AACP,UAAMI,KAAKmB,KAAKvB,GAAAA;EAClB;AAEA,SAAO;IAAEE;IAASE;EAAK;AACzB;",
|
|
6
6
|
"names": ["workspaceRoot", "join", "relative", "pkgUp", "trigger", "Lock", "_lastPromise", "Promise", "resolve", "executeSynchronized", "fun", "prevPromise", "getPromise", "trigger", "value", "e2ePreset", "cwd", "packageJson", "pkgUp", "sync", "packageDir", "split", "slice", "join", "packageDirRelative", "relative", "workspaceRoot", "testResultsDir", "reporter", "process", "env", "CI", "outputFile", "use", "trace", "setupPage", "browser", "options", "url", "bridgeLogs", "context", "newContext", "page", "newPage", "lock", "Lock", "on", "error", "executeSynchronized", "console", "log", "msg", "argsPromise", "Promise", "all", "args", "map", "x", "jsonValue", "length", "err", "goto"]
|
|
7
7
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dxos/test-utils",
|
|
3
|
-
"version": "0.6.12-main.
|
|
3
|
+
"version": "0.6.12-main.78ddbdf",
|
|
4
4
|
"description": "Test utilities",
|
|
5
5
|
"homepage": "https://dxos.org",
|
|
6
6
|
"bugs": "https://github.com/dxos/dxos/issues",
|
|
@@ -41,8 +41,8 @@
|
|
|
41
41
|
"@playwright/test": "^1.46.0",
|
|
42
42
|
"pkg-up": "^3.1.0",
|
|
43
43
|
"vitest": "^2.1.1",
|
|
44
|
-
"@dxos/async": "0.6.12-main.
|
|
45
|
-
"@dxos/node-std": "0.6.12-main.
|
|
44
|
+
"@dxos/async": "0.6.12-main.78ddbdf",
|
|
45
|
+
"@dxos/node-std": "0.6.12-main.78ddbdf"
|
|
46
46
|
},
|
|
47
47
|
"publishConfig": {
|
|
48
48
|
"access": "public"
|