Skip to content

Commit 8d805a0

Browse files
committed
fix(zalouser): decouple tests from zca-js runtime
1 parent 5036ed2 commit 8d805a0

18 files changed

Lines changed: 148 additions & 107 deletions
Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,14 @@
11
import { vi } from "vitest";
22
import { createDefaultResolvedZalouserAccount } from "./test-helpers.js";
33

4-
vi.mock("./accounts.js", async (importOriginal) => {
5-
const actual = (await importOriginal()) as Record<string, unknown>;
4+
vi.mock("./accounts.js", () => {
65
return {
7-
...actual,
6+
listZalouserAccountIds: () => ["default"],
7+
resolveDefaultZalouserAccountId: () => "default",
88
resolveZalouserAccountSync: () => createDefaultResolvedZalouserAccount(),
9+
resolveZalouserAccount: async () => createDefaultResolvedZalouserAccount(),
10+
listEnabledZalouserAccounts: async () => [createDefaultResolvedZalouserAccount()],
11+
getZcaUserInfo: async () => null,
12+
checkZcaAuthenticated: async () => false,
913
};
1014
});

extensions/zalouser/src/channel.directory.test.ts

Lines changed: 3 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,9 @@
11
import { describe, expect, it, vi } from "vitest";
22
import "./accounts.test-mocks.js";
3-
import { createZalouserRuntimeEnv } from "./test-helpers.js";
4-
5-
const listZaloGroupMembersMock = vi.hoisted(() => vi.fn(async () => []));
6-
7-
vi.mock("./zalo-js.js", async (importOriginal) => {
8-
const actual = (await importOriginal()) as Record<string, unknown>;
9-
return {
10-
...actual,
11-
listZaloGroupMembers: listZaloGroupMembersMock,
12-
};
13-
});
14-
3+
import "./zalo-js.test-mocks.js";
154
import { zalouserPlugin } from "./channel.js";
5+
import { createZalouserRuntimeEnv } from "./test-helpers.js";
6+
import { listZaloGroupMembersMock } from "./zalo-js.test-mocks.js";
167

178
const runtimeStub = createZalouserRuntimeEnv();
189

extensions/zalouser/src/channel.sendpayload.test.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import { beforeEach, describe, expect, it, vi } from "vitest";
22
import { primeChannelOutboundSendMock } from "../../../src/channels/plugins/contracts/suites.js";
33
import "./accounts.test-mocks.js";
4+
import "./zalo-js.test-mocks.js";
45
import type { ReplyPayload } from "../runtime-api.js";
56
import { zalouserPlugin } from "./channel.js";
67
import { setZalouserRuntime } from "./runtime.js";

extensions/zalouser/src/channel.setup.test.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import path from "node:path";
44
import { describe, expect, it } from "vitest";
55
import { buildChannelSetupWizardAdapterFromSetupWizard } from "../../../src/channels/plugins/setup-wizard.js";
66
import { withEnvAsync } from "../../../test/helpers/extensions/env.js";
7+
import "./zalo-js.test-mocks.js";
78
import { zalouserSetupPlugin } from "./channel.setup.js";
89

910
const zalouserSetupAdapter = buildChannelSetupWizardAdapterFromSetupWizard({

extensions/zalouser/src/channel.test.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import { beforeEach, describe, expect, it, vi } from "vitest";
2+
import "./zalo-js.test-mocks.js";
23
import { zalouserPlugin } from "./channel.js";
34
import { setZalouserRuntime } from "./runtime.js";
45
import { sendMessageZalouser, sendReactionZalouser } from "./send.js";

extensions/zalouser/src/monitor.account-scope.test.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import { describe, expect, it, vi } from "vitest";
22
import type { OpenClawConfig, PluginRuntime, RuntimeEnv } from "../runtime-api.js";
33
import "./monitor.send-mocks.js";
4+
import "./zalo-js.test-mocks.js";
45
import { __testing } from "./monitor.js";
56
import { sendMessageZalouserMock } from "./monitor.send-mocks.js";
67
import { setZalouserRuntime } from "./runtime.js";

extensions/zalouser/src/monitor.group-gating.test.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import { beforeEach, describe, expect, it, vi } from "vitest";
22
import type { OpenClawConfig, PluginRuntime, RuntimeEnv } from "../runtime-api.js";
33
import "./monitor.send-mocks.js";
4+
import "./zalo-js.test-mocks.js";
45
import { resolveZalouserAccountSync } from "./accounts.js";
56
import { __testing } from "./monitor.js";
67
import {

extensions/zalouser/src/reaction.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { Reactions } from "./zca-client.js";
1+
import { Reactions } from "./zca-constants.js";
22

33
const REACTION_ALIAS_MAP = new Map<string, string>([
44
["like", Reactions.LIKE],

extensions/zalouser/src/send.test.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ import {
1717
sendZaloTextMessage,
1818
sendZaloTypingEvent,
1919
} from "./zalo-js.js";
20-
import { TextStyle } from "./zca-client.js";
20+
import { TextStyle } from "./zca-constants.js";
2121

2222
vi.mock("./zalo-js.js", () => ({
2323
sendZaloTextMessage: vi.fn(),

extensions/zalouser/src/send.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import {
88
sendZaloTextMessage,
99
sendZaloTypingEvent,
1010
} from "./zalo-js.js";
11-
import { TextStyle } from "./zca-client.js";
11+
import { TextStyle } from "./zca-constants.js";
1212

1313
export type ZalouserSendOptions = ZaloSendOptions;
1414
export type ZalouserSendResult = ZaloSendResult;

0 commit comments

Comments
 (0)