@owlmeans/test-integration 0.1.18-rc.30 → 0.1.18-rc.31
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 +1 -1
- package/agent-meta/manifest.json +2 -2
- package/agent-meta/skills/testing-integration/SKILL.md +1 -1
- package/build/cleanup.d.ts +1 -1
- package/build/cleanup.d.ts.map +1 -1
- package/build/cleanup.js +4 -2
- package/build/cleanup.js.map +1 -1
- package/build/reachability.d.ts.map +1 -1
- package/build/reachability.js +3 -1
- package/build/reachability.js.map +1 -1
- package/package.json +2 -1
- package/src/cleanup.ts +6 -2
- package/src/reachability.ts +4 -1
package/README.md
CHANGED
|
@@ -19,7 +19,7 @@ This package ships embedded agent skills under `agent-meta/`. After installing y
|
|
|
19
19
|
your project's skill store (`.agents/skills/`):
|
|
20
20
|
|
|
21
21
|
```sh
|
|
22
|
-
npx @owlmeans/agent-skills@^0.1.18-rc.
|
|
22
|
+
npx @owlmeans/agent-skills@^0.1.18-rc.47
|
|
23
23
|
```
|
|
24
24
|
|
|
25
25
|
The embedded files are version-matched to this package release. Do not edit them
|
package/agent-meta/manifest.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": 2,
|
|
3
3
|
"package": "@owlmeans/test-integration",
|
|
4
|
-
"version": "0.1.18-rc.
|
|
5
|
-
"generatedAt": "2026-
|
|
4
|
+
"version": "0.1.18-rc.31",
|
|
5
|
+
"generatedAt": "2026-10-03T20:05:07.591Z",
|
|
6
6
|
"canonicalRepo": "https://github.com/owlmeans/common",
|
|
7
7
|
"entries": [
|
|
8
8
|
{
|
|
@@ -6,7 +6,7 @@ description: Category-C integration tests for OwlMeans Common packages that talk
|
|
|
6
6
|
|
|
7
7
|
# Integration Tests — Category C
|
|
8
8
|
|
|
9
|
-
**Install:** `"@owlmeans/test-integration": "^0.1.18-rc.
|
|
9
|
+
**Install:** `"@owlmeans/test-integration": "^0.1.18-rc.31"` in `devDependencies`
|
|
10
10
|
|
|
11
11
|
Category C applies to packages that integrate with external services: `postgres`,
|
|
12
12
|
`postgres-resource`, `mongo`, `mongo-resource`, `redis`, `redis-resource`, `redis-queue`,
|
package/build/cleanup.d.ts
CHANGED
|
@@ -8,7 +8,7 @@ type CleanupFn = () => void | Promise<void>;
|
|
|
8
8
|
export declare const registerCleanup: (fn: CleanupFn) => void;
|
|
9
9
|
/**
|
|
10
10
|
* Run all pending cleanup functions in reverse registration order.
|
|
11
|
-
* Errors are swallowed and
|
|
11
|
+
* Errors are swallowed and logged as warnings so a failing cleanup
|
|
12
12
|
* cannot mask a test failure.
|
|
13
13
|
*/
|
|
14
14
|
export declare const runCleanups: () => Promise<void>;
|
package/build/cleanup.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cleanup.d.ts","sourceRoot":"","sources":["../src/cleanup.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cleanup.d.ts","sourceRoot":"","sources":["../src/cleanup.ts"],"names":[],"mappings":"AAIA,KAAK,SAAS,GAAG,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;AAI3C;;;;;GAKG;AACH,eAAO,MAAM,eAAe,OAAQ,SAAS,KAAG,IAE/C,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,WAAW,QAAa,OAAO,CAAC,IAAI,CAUhD,CAAA"}
|
package/build/cleanup.js
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { logger } from '@owlmeans/log';
|
|
2
|
+
const log = logger('test-integration');
|
|
1
3
|
const queue = [];
|
|
2
4
|
/**
|
|
3
5
|
* Register a cleanup function that `runCleanups()` will execute (LIFO).
|
|
@@ -10,7 +12,7 @@ export const registerCleanup = (fn) => {
|
|
|
10
12
|
};
|
|
11
13
|
/**
|
|
12
14
|
* Run all pending cleanup functions in reverse registration order.
|
|
13
|
-
* Errors are swallowed and
|
|
15
|
+
* Errors are swallowed and logged as warnings so a failing cleanup
|
|
14
16
|
* cannot mask a test failure.
|
|
15
17
|
*/
|
|
16
18
|
export const runCleanups = async () => {
|
|
@@ -22,7 +24,7 @@ export const runCleanups = async () => {
|
|
|
22
24
|
await fn();
|
|
23
25
|
}
|
|
24
26
|
catch (err) {
|
|
25
|
-
|
|
27
|
+
log.warn('Cleanup failed', err);
|
|
26
28
|
}
|
|
27
29
|
}
|
|
28
30
|
};
|
package/build/cleanup.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cleanup.js","sourceRoot":"","sources":["../src/cleanup.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cleanup.js","sourceRoot":"","sources":["../src/cleanup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AAEtC,MAAM,GAAG,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAA;AAItC,MAAM,KAAK,GAAgB,EAAE,CAAA;AAE7B;;;;;GAKG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,EAAa,EAAQ,EAAE;IACrD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;AAChB,CAAC,CAAA;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,IAAmB,EAAE;IACnD,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,EAAE,GAAG,KAAK,CAAC,GAAG,EAAE,CAAA;QACtB,IAAI,EAAE,IAAI,IAAI;YAAE,SAAQ;QACxB,IAAI,CAAC;YACH,MAAM,EAAE,EAAE,CAAA;QACZ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,IAAI,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAA;QACjC,CAAC;IACH,CAAC;AACH,CAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reachability.d.ts","sourceRoot":"","sources":["../src/reachability.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"reachability.d.ts","sourceRoot":"","sources":["../src/reachability.ts"],"names":[],"mappings":"AAKA;;;;;;;;GAQG;AAEH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;CACb;AAWD;;;;GAIG;AACH,eAAO,MAAM,YAAY,QAAS,MAAM,eAAe,MAAM,KAAG,WAAW,EAAE,GAAG,IA6B/E,CAAA;AA0BD;;;;;GAKG;AACH,eAAO,MAAM,YAAY,YAAa,WAAW,EAAE,KAAG,MAAM,GAAG,IAkB9D,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,aAAc,MAAM,OAAO,MAAM,eAAe,MAAM,KAAG,MAAM,GAAG,IAiB/F,CAAA"}
|
package/build/reachability.js
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import { spawnSync } from 'node:child_process';
|
|
2
|
+
import { logger } from '@owlmeans/log';
|
|
3
|
+
const log = logger('test-integration');
|
|
2
4
|
/** How long one connect may take before the address counts as unreachable. */
|
|
3
5
|
const CONNECT_TIMEOUT_MS = 1_500;
|
|
4
6
|
/** The probe runs in a child process; this covers its own startup on a loaded machine. */
|
|
@@ -102,7 +104,7 @@ export const unreachableReason = (variable, url, defaultPort) => {
|
|
|
102
104
|
const reason = `${variable} is set, but ${unreachable} — start the service (or its port-forward) to run these specs`;
|
|
103
105
|
if (!warned.has(reason)) {
|
|
104
106
|
warned.add(reason);
|
|
105
|
-
|
|
107
|
+
log.warn('Skipping integration specs: a configured service is unreachable', { variable, unreachable });
|
|
106
108
|
}
|
|
107
109
|
return reason;
|
|
108
110
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reachability.js","sourceRoot":"","sources":["../src/reachability.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"reachability.js","sourceRoot":"","sources":["../src/reachability.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@owlmeans/test-integration",
|
|
3
|
-
"version": "0.1.18-rc.
|
|
3
|
+
"version": "0.1.18-rc.31",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"scripts": {
|
|
@@ -21,6 +21,7 @@
|
|
|
21
21
|
}
|
|
22
22
|
},
|
|
23
23
|
"dependencies": {
|
|
24
|
+
"@owlmeans/log": "^0.1.18-rc.0",
|
|
24
25
|
"@owlmeans/test": "^0.1.18-rc.33"
|
|
25
26
|
},
|
|
26
27
|
"devDependencies": {
|
package/src/cleanup.ts
CHANGED
|
@@ -1,3 +1,7 @@
|
|
|
1
|
+
import { logger } from '@owlmeans/log'
|
|
2
|
+
|
|
3
|
+
const log = logger('test-integration')
|
|
4
|
+
|
|
1
5
|
type CleanupFn = () => void | Promise<void>
|
|
2
6
|
|
|
3
7
|
const queue: CleanupFn[] = []
|
|
@@ -14,7 +18,7 @@ export const registerCleanup = (fn: CleanupFn): void => {
|
|
|
14
18
|
|
|
15
19
|
/**
|
|
16
20
|
* Run all pending cleanup functions in reverse registration order.
|
|
17
|
-
* Errors are swallowed and
|
|
21
|
+
* Errors are swallowed and logged as warnings so a failing cleanup
|
|
18
22
|
* cannot mask a test failure.
|
|
19
23
|
*/
|
|
20
24
|
export const runCleanups = async (): Promise<void> => {
|
|
@@ -24,7 +28,7 @@ export const runCleanups = async (): Promise<void> => {
|
|
|
24
28
|
try {
|
|
25
29
|
await fn()
|
|
26
30
|
} catch (err) {
|
|
27
|
-
|
|
31
|
+
log.warn('Cleanup failed', err)
|
|
28
32
|
}
|
|
29
33
|
}
|
|
30
34
|
}
|
package/src/reachability.ts
CHANGED
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
import { spawnSync } from 'node:child_process'
|
|
2
|
+
import { logger } from '@owlmeans/log'
|
|
3
|
+
|
|
4
|
+
const log = logger('test-integration')
|
|
2
5
|
|
|
3
6
|
/**
|
|
4
7
|
* Whether the server a connection string names answers at all — asked synchronously, because
|
|
@@ -128,7 +131,7 @@ export const unreachableReason = (variable: string, url: string, defaultPort: nu
|
|
|
128
131
|
const reason = `${variable} is set, but ${unreachable} — start the service (or its port-forward) to run these specs`
|
|
129
132
|
if (!warned.has(reason)) {
|
|
130
133
|
warned.add(reason)
|
|
131
|
-
|
|
134
|
+
log.warn('Skipping integration specs: a configured service is unreachable', { variable, unreachable })
|
|
132
135
|
}
|
|
133
136
|
|
|
134
137
|
return reason
|