@systemfsoftware/oxlint-plugin-test-discipline 3.6.0 → 3.7.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/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # @systemfsoftware/oxlint-plugin-test-discipline
2
2
 
3
+ ## 3.7.0
4
+
5
+ ### Minor Changes
6
+
7
+ - Enable `no-pseudo-gherkin-unit-tests` in the recommended rule set: every `*.integration.test.ts` Feature builder must declare its collaborator environment with `.withLayer(...)` or `.withScenarioLayer(...)`. The diagnostic now names `Layer.empty` as the remedy for features whose collaborators are in memory.
8
+
3
9
  ## 3.6.0
4
10
 
5
11
  ### Minor Changes
package/dist/index.mjs CHANGED
@@ -1269,9 +1269,9 @@ const noNestedQuantification = defineRule({
1269
1269
  //#endregion
1270
1270
  //#region src/rules/no-pseudo-gherkin-unit-tests.config.ts
1271
1271
  const NO_LAYER_IN_FEATURE_NAME = "a *.integration.test.ts feature with no environment double";
1272
- const NO_LAYER_IN_FEATURE_EXPECTED = "a feature builder chained with .withLayer(...) or .withScenarioLayer(...)";
1273
- const NO_LAYER_IN_FEATURE_ACTUAL = "a Feature(...) call with no .withLayer or .withScenarioLayer builder method";
1274
- const NO_LAYER_IN_FEATURE_FIX = "an integration test under WGI-CLS1 exercises real collaborator seams using Layer doubles (withLayer or withScenarioLayer). A test with no Layers is a pure in-memory calculation: move its laws into deterministic-universal scenarios, or provide the external boundary Layer it exercises.";
1272
+ const NO_LAYER_IN_FEATURE_EXPECTED = "a Feature builder chained with .withLayer(layer) or .withScenarioLayer(layer)";
1273
+ const NO_LAYER_IN_FEATURE_ACTUAL = "a Feature(...) call without .withLayer or .withScenarioLayer";
1274
+ const NO_LAYER_IN_FEATURE_FIX = "an integration test under WGI-CLS1 must declare its collaborator environment via .withLayer(...) or .withScenarioLayer(...). Chain .withLayer(Layer.empty) (or .withScenarioLayer(Layer.empty)) if the feature exercises in-memory collaborators without custom services, or provide the external boundary Layer it exercises (e.g. .withLayer(MyService.Live)).";
1275
1275
  const meta$12 = {
1276
1276
  type: "problem",
1277
1277
  docs: { description: "A *.integration.test.ts Feature builder must configure at least one environment Layer (.withLayer or .withScenarioLayer) to enforce real integration boundaries under WGI-CLS1." },
@@ -2858,7 +2858,8 @@ const recommendedRules = {
2858
2858
  [rule("tests-dir-helpers-in-fixtures")]: "error",
2859
2859
  [rule("no-io-module-in-source-test")]: "error",
2860
2860
  [rule("tests-import-public-api")]: "error",
2861
- [rule("differential-test-requires-harness")]: "error"
2861
+ [rule("differential-test-requires-harness")]: "error",
2862
+ [rule("no-pseudo-gherkin-unit-tests")]: "error"
2862
2863
  };
2863
2864
  var src_default = {
2864
2865
  meta: { name: PLUGIN_NAME },
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@systemfsoftware/oxlint-plugin-test-discipline",
3
3
  "license": "Apache-2.0",
4
- "version": "3.6.0",
4
+ "version": "3.7.0",
5
5
  "author": "Ryan Lee <drdgvhbh@gmail.com>",
6
6
  "repository": {
7
7
  "type": "git",
@@ -59,10 +59,10 @@
59
59
  "tsdown": "^0.23.0",
60
60
  "typescript": "^7",
61
61
  "vitest": "^5",
62
- "@systemfsoftware/tsconfig": "^1.3.6",
62
+ "@systemfsoftware/stryker-config": "^0.1.0",
63
63
  "@systemfsoftware/tsdown-config": "^0.1.0",
64
- "@systemfsoftware/vitest-config": "^0.1.0",
65
- "@systemfsoftware/stryker-config": "^0.1.0"
64
+ "@systemfsoftware/tsconfig": "^1.3.6",
65
+ "@systemfsoftware/vitest-config": "^0.1.0"
66
66
  },
67
67
  "peerDependencies": {
68
68
  "effect": "4.0.0-rc.116",