@rightkit/qa 0.2.1 → 0.2.3
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 +9 -0
- package/dist/chrome.d.ts +1 -0
- package/dist/chrome.js +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/package.json +6 -1
package/README.md
CHANGED
|
@@ -3,3 +3,12 @@
|
|
|
3
3
|
Shared native QA primitives for Right Suite desktop apps. The package owns run locking, bearer-authenticated loopback control, deterministic evidence bundles, exact owned-process cleanup, and the guard that keeps development WebDriver access out of production builds.
|
|
4
4
|
|
|
5
5
|
This package is intentionally private until the Windows and macOS phase gate passes. App repositories must never consume it through a Git, path, `file:`, `link:`, or `workspace:` dependency; adoption happens only after a registry version is published.
|
|
6
|
+
|
|
7
|
+
## Chrome for Testing (`@rightkit/qa/chrome`)
|
|
8
|
+
|
|
9
|
+
Web/CDP harnesses launch Chrome for Testing, never regular Google Chrome: on macOS each regular Chrome instance clones its app bundle under `<DARWIN_USER_TEMP_DIR>/../X/com.google.Chrome.code_sign_clone/`, and a killed instance leaks that clone. The native lane (`native.ts`, Tauri WebDriver) is unaffected.
|
|
10
|
+
|
|
11
|
+
- `resolveChromeForTesting({ executablePath? })` resolves the explicit option, then `RIGHTKIT_CHROME_FOR_TESTING`, then `/Applications` and `~/Applications` app installs, then the newest Puppeteer (`~/.cache/puppeteer`, `PUPPETEER_CACHE_DIR`) and Playwright (`~/Library/Caches/ms-playwright`, `PLAYWRIGHT_BROWSERS_PATH`) builds. It throws `ChromeForTestingNotFoundError` with install instructions; it never falls back. `findChromeForTesting()` returns `{ path }` or `{ reason }` for test skips.
|
|
12
|
+
- `launchChromeForTesting(options)` starts it in its own process group with a temp profile and returns `{ wsEndpoint, port, pid, profileDir, close() }`. Launch one browser per suite and open targets per test.
|
|
13
|
+
- `close()` / `closeChromeGracefully()` sends CDP `Browser.close`, waits up to 5 s, sends SIGTERM to the process group (`taskkill /T` on Windows), waits again, sends SIGKILL only last, then removes the profile. It reports the step that ended the tree.
|
|
14
|
+
- `codeSignCloneEntries()` lists the macOS clone entries so tests can assert that none appear.
|
package/dist/chrome.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '@rightkit/qa-chrome';
|
package/dist/chrome.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '@rightkit/qa-chrome';
|
package/dist/index.d.ts
CHANGED
package/dist/index.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rightkit/qa",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.3",
|
|
4
4
|
"description": "Shared native QA runner, evidence, ownership, and release-backdoor guards for Right Suite apps.",
|
|
5
5
|
"license": "MIT OR Apache-2.0",
|
|
6
6
|
"type": "module",
|
|
@@ -13,6 +13,10 @@
|
|
|
13
13
|
".": {
|
|
14
14
|
"types": "./dist/index.d.ts",
|
|
15
15
|
"import": "./dist/index.js"
|
|
16
|
+
},
|
|
17
|
+
"./chrome": {
|
|
18
|
+
"types": "./dist/chrome.d.ts",
|
|
19
|
+
"import": "./dist/chrome.js"
|
|
16
20
|
}
|
|
17
21
|
},
|
|
18
22
|
"files": [
|
|
@@ -23,6 +27,7 @@
|
|
|
23
27
|
],
|
|
24
28
|
"sideEffects": false,
|
|
25
29
|
"dependencies": {
|
|
30
|
+
"@rightkit/qa-chrome": "0.1.0",
|
|
26
31
|
"@wdio/cli": "9.27.1",
|
|
27
32
|
"@wdio/local-runner": "9.27.1",
|
|
28
33
|
"@wdio/mocha-framework": "9.27.1",
|