Package not found. Please check the package name and try again.

@rpcbase/test 0.318.0 → 0.319.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.
package/README.md CHANGED
@@ -74,6 +74,7 @@ test("renders", async ({ page }) => {
74
74
  ```
75
75
 
76
76
  The exported `test` already records coverage via CDP and writes per-test payloads automatically.
77
+ Because CDP is Chromium-only, V8 coverage is collected only when running on Chromium (Chrome); other browsers skip coverage collection.
77
78
 
78
79
  ## 3. Build your Playwright config via the shared wrapper
79
80
 
@@ -1 +1 @@
1
- {"version":3,"file":"fixtures.d.ts","sourceRoot":"","sources":["../../src/coverage/fixtures.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAoB7C,wBAAgB,sBAAsB,CAAC,CAAC,SAAS;IAAE,MAAM,EAAE,CAAC,QAAQ,EAAE,GAAG,KAAK,OAAO,CAAA;CAAE,EACrF,QAAQ,EAAE,CAAC,EACX,MAAM,EAAE,cAAc,GACrB,CAAC,CAiCH"}
1
+ {"version":3,"file":"fixtures.d.ts","sourceRoot":"","sources":["../../src/coverage/fixtures.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAyB7C,wBAAgB,sBAAsB,CAAC,CAAC,SAAS;IAAE,MAAM,EAAE,CAAC,QAAQ,EAAE,GAAG,KAAK,OAAO,CAAA;CAAE,EACrF,QAAQ,EAAE,CAAC,EACX,MAAM,EAAE,cAAc,GACrB,CAAC,CAiCH"}
@@ -1,7 +1,10 @@
1
1
  import { createCoverageTracker } from "./v8-tracker.js";
2
+ function isChromiumPage(page) {
3
+ return page.context().browser()?.browserType().name() === "chromium";
4
+ }
2
5
  function shouldSilenceCoverageInitError(error) {
3
6
  const message = error instanceof Error ? error.message : String(error);
4
- return message.includes("Script execution is prohibited");
7
+ return message.includes("Script execution is prohibited") || message.includes("CDP session is only available in Chromium");
5
8
  }
6
9
  function noopTracker() {
7
10
  return {
@@ -13,7 +16,7 @@ function createCoverageFixtures(baseTest, config) {
13
16
  return baseTest.extend({
14
17
  page: async ({ page }, use, testInfo) => {
15
18
  let tracker = noopTracker();
16
- if (config.coverageEnabled) {
19
+ if (config.coverageEnabled && isChromiumPage(page)) {
17
20
  try {
18
21
  tracker = await createCoverageTracker(page, config);
19
22
  } catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"fixtures.js","sources":["../../src/coverage/fixtures.ts"],"sourcesContent":["import type { Page, TestInfo } from \"@playwright/test\"\n\nimport { createCoverageTracker } from \"./v8-tracker\"\nimport type { CoverageConfig } from \"./types\"\n\n\ntype CoverageTracker = {\n stop: (testInfo: TestInfo) => Promise<void>\n}\n\nfunction shouldSilenceCoverageInitError(error: unknown): boolean {\n const message = error instanceof Error ? error.message : String(error)\n return message.includes(\"Script execution is prohibited\")\n}\n\nfunction noopTracker(): CoverageTracker {\n return {\n async stop() {\n // no-op\n },\n }\n}\n\nexport function createCoverageFixtures<T extends { extend: (fixtures: any) => unknown }>(\n baseTest: T,\n config: CoverageConfig,\n): T {\n return baseTest.extend({\n page: async (\n { page }: { page: Page },\n use: (page: Page) => Promise<void>,\n testInfo: TestInfo,\n ) => {\n let tracker: CoverageTracker = noopTracker()\n\n if (config.coverageEnabled) {\n try {\n tracker = await createCoverageTracker(page, config)\n } catch (error) {\n if (shouldSilenceCoverageInitError(error)) {\n tracker = noopTracker()\n } else {\n console.warn(\"[coverage] failed to initialize V8 coverage:\", error)\n }\n }\n }\n\n try {\n // eslint-disable-next-line react-hooks/rules-of-hooks\n await use(page)\n } finally {\n try {\n await tracker.stop(testInfo)\n } catch (error) {\n console.warn(\"[coverage] failed to record V8 coverage:\", error)\n }\n }\n },\n }) as T\n}\n"],"names":[],"mappings":";AAUA,SAAS,+BAA+B,OAAyB;AAC/D,QAAM,UAAU,iBAAiB,QAAQ,MAAM,UAAU,OAAO,KAAK;AACrE,SAAO,QAAQ,SAAS,gCAAgC;AAC1D;AAEA,SAAS,cAA+B;AACtC,SAAO;AAAA,IACL,MAAM,OAAO;AAAA,IAEb;AAAA,EAAA;AAEJ;AAEO,SAAS,uBACd,UACA,QACG;AACH,SAAO,SAAS,OAAO;AAAA,IACrB,MAAM,OACJ,EAAE,QACF,KACA,aACG;AACH,UAAI,UAA2B,YAAA;AAE/B,UAAI,OAAO,iBAAiB;AAC1B,YAAI;AACF,oBAAU,MAAM,sBAAsB,MAAM,MAAM;AAAA,QACpD,SAAS,OAAO;AACd,cAAI,+BAA+B,KAAK,GAAG;AACzC,sBAAU,YAAA;AAAA,UACZ,OAAO;AACL,oBAAQ,KAAK,gDAAgD,KAAK;AAAA,UACpE;AAAA,QACF;AAAA,MACF;AAEA,UAAI;AAEF,cAAM,IAAI,IAAI;AAAA,MAChB,UAAA;AACE,YAAI;AACF,gBAAM,QAAQ,KAAK,QAAQ;AAAA,QAC7B,SAAS,OAAO;AACd,kBAAQ,KAAK,4CAA4C,KAAK;AAAA,QAChE;AAAA,MACF;AAAA,IACF;AAAA,EAAA,CACD;AACH;"}
1
+ {"version":3,"file":"fixtures.js","sources":["../../src/coverage/fixtures.ts"],"sourcesContent":["import type { Page, TestInfo } from \"@playwright/test\"\n\nimport { createCoverageTracker } from \"./v8-tracker\"\nimport type { CoverageConfig } from \"./types\"\n\n\ntype CoverageTracker = {\n stop: (testInfo: TestInfo) => Promise<void>\n}\n\nfunction isChromiumPage(page: Page): boolean {\n return page.context().browser()?.browserType().name() === \"chromium\"\n}\n\nfunction shouldSilenceCoverageInitError(error: unknown): boolean {\n const message = error instanceof Error ? error.message : String(error)\n return message.includes(\"Script execution is prohibited\")\n || message.includes(\"CDP session is only available in Chromium\")\n}\n\nfunction noopTracker(): CoverageTracker {\n return {\n async stop() {\n // no-op\n },\n }\n}\n\nexport function createCoverageFixtures<T extends { extend: (fixtures: any) => unknown }>(\n baseTest: T,\n config: CoverageConfig,\n): T {\n return baseTest.extend({\n page: async (\n { page }: { page: Page },\n use: (page: Page) => Promise<void>,\n testInfo: TestInfo,\n ) => {\n let tracker: CoverageTracker = noopTracker()\n\n if (config.coverageEnabled && isChromiumPage(page)) {\n try {\n tracker = await createCoverageTracker(page, config)\n } catch (error) {\n if (shouldSilenceCoverageInitError(error)) {\n tracker = noopTracker()\n } else {\n console.warn(\"[coverage] failed to initialize V8 coverage:\", error)\n }\n }\n }\n\n try {\n // eslint-disable-next-line react-hooks/rules-of-hooks\n await use(page)\n } finally {\n try {\n await tracker.stop(testInfo)\n } catch (error) {\n console.warn(\"[coverage] failed to record V8 coverage:\", error)\n }\n }\n },\n }) as T\n}\n"],"names":[],"mappings":";AAUA,SAAS,eAAe,MAAqB;AAC3C,SAAO,KAAK,UAAU,QAAA,GAAW,YAAA,EAAc,WAAW;AAC5D;AAEA,SAAS,+BAA+B,OAAyB;AAC/D,QAAM,UAAU,iBAAiB,QAAQ,MAAM,UAAU,OAAO,KAAK;AACrE,SAAO,QAAQ,SAAS,gCAAgC,KACnD,QAAQ,SAAS,2CAA2C;AACnE;AAEA,SAAS,cAA+B;AACtC,SAAO;AAAA,IACL,MAAM,OAAO;AAAA,IAEb;AAAA,EAAA;AAEJ;AAEO,SAAS,uBACd,UACA,QACG;AACH,SAAO,SAAS,OAAO;AAAA,IACrB,MAAM,OACJ,EAAE,QACF,KACA,aACG;AACH,UAAI,UAA2B,YAAA;AAE/B,UAAI,OAAO,mBAAmB,eAAe,IAAI,GAAG;AAClD,YAAI;AACF,oBAAU,MAAM,sBAAsB,MAAM,MAAM;AAAA,QACpD,SAAS,OAAO;AACd,cAAI,+BAA+B,KAAK,GAAG;AACzC,sBAAU,YAAA;AAAA,UACZ,OAAO;AACL,oBAAQ,KAAK,gDAAgD,KAAK;AAAA,UACpE;AAAA,QACF;AAAA,MACF;AAEA,UAAI;AAEF,cAAM,IAAI,IAAI;AAAA,MAChB,UAAA;AACE,YAAI;AACF,gBAAM,QAAQ,KAAK,QAAQ;AAAA,QAC7B,SAAS,OAAO;AACd,kBAAQ,KAAK,4CAA4C,KAAK;AAAA,QAChE;AAAA,MACF;AAAA,IACF;AAAA,EAAA,CACD;AACH;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rpcbase/test",
3
- "version": "0.318.0",
3
+ "version": "0.319.0",
4
4
  "type": "module",
5
5
  "files": [
6
6
  "dist"