test(FN-4621): complete Step 5 — add worktrunk precedence integration test
Fusion-Task-Id: FN-4621 Fusion-Task-Lineage: fc1b0b13-9052-4378-86e3-3634d6c9db4e
This commit is contained in:
41
packages/core/src/__tests__/settings-precedence.test.ts
Normal file
41
packages/core/src/__tests__/settings-precedence.test.ts
Normal file
@@ -0,0 +1,41 @@
|
||||
import { afterEach, beforeEach, describe, expect, it } from "vitest";
|
||||
|
||||
import { createTaskStoreTestHarness } from "./store-test-helpers.js";
|
||||
|
||||
describe("settings precedence", () => {
|
||||
const harness = createTaskStoreTestHarness();
|
||||
|
||||
beforeEach(harness.beforeEach);
|
||||
afterEach(harness.afterEach);
|
||||
|
||||
it("merges worktrunk field-level project overrides while preserving scope views", async () => {
|
||||
await harness.store().updateGlobalSettings({
|
||||
worktrunk: {
|
||||
enabled: true,
|
||||
binaryPath: "/opt/bin/worktrunk",
|
||||
onFailure: "fallback-native",
|
||||
},
|
||||
});
|
||||
|
||||
await harness.store().updateSettings({
|
||||
worktrunk: {
|
||||
enabled: false,
|
||||
},
|
||||
});
|
||||
|
||||
const merged = await harness.store().getSettings();
|
||||
expect(merged.worktrunk).toEqual({
|
||||
enabled: false,
|
||||
binaryPath: "/opt/bin/worktrunk",
|
||||
onFailure: "fallback-native",
|
||||
});
|
||||
|
||||
const scoped = await harness.store().getSettingsByScope();
|
||||
expect(scoped.global.worktrunk).toEqual({
|
||||
enabled: true,
|
||||
binaryPath: "/opt/bin/worktrunk",
|
||||
onFailure: "fallback-native",
|
||||
});
|
||||
expect(scoped.project.worktrunk).toEqual({ enabled: false });
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user