History

Prepare datamodel for multi-environment (#1765)

Julius Marminge committed 7 months ago

Commit b96308f1 parent 72b7f90121 files · +10206 −4969Browse files

Showing the changes to apps/web/src/lib/gitReactQuery.test.ts (1 of 121 files). Show all

Unified · Split

apps/web/src/lib/gitReactQuery.test.ts+30−13
@@ -1,16 +1,17 @@
11 import { QueryClient } from "@tanstack/react-query";
22 import { describe, expect, it, vi } from "vitest";
33
4−vi.mock("../nativeApi", () => ({
5− ensureNativeApi: vi.fn(),
4+vi.mock("../environmentApi", () => ({
5+ ensureEnvironmentApi: vi.fn(),
66 }));
77
88 vi.mock("../wsRpcClient", () => ({
99 getWsRpcClient: vi.fn(),
10+ getWsRpcClientForEnvironment: vi.fn(),
1011 }));
1112
1213 import type { InfiniteData } from "@tanstack/react-query";
13−import type { GitListBranchesResult } from "@t3tools/contracts";
14+import { EnvironmentId, type GitListBranchesResult } from "@t3tools/contracts";
1415
1516 import {
1617 gitBranchSearchInfiniteQueryOptions,
@@ -33,21 +34,25 @@ const BRANCH_SEARCH_RESULT: InfiniteData<GitListBranchesResult, number> = { · 16 unmodified lines
3334 pages: [BRANCH_QUERY_RESULT],
3435 pageParams: [0],
3536 };
37+const ENVIRONMENT_A = EnvironmentId.makeUnsafe("environment-a");
38+const ENVIRONMENT_B = EnvironmentId.makeUnsafe("environment-b");
3639
3740 describe("gitMutationKeys", () => {
3841 it("scopes stacked action keys by cwd", () => {
39− expect(gitMutationKeys.runStackedAction("/repo/a")).not.toEqual(
40− gitMutationKeys.runStackedAction("/repo/b"),
42+ expect(gitMutationKeys.runStackedAction(ENVIRONMENT_A, "/repo/a")).not.toEqual(
43+ gitMutationKeys.runStackedAction(ENVIRONMENT_A, "/repo/b"),
4144 );
4245 });
4346
4447 it("scopes pull keys by cwd", () => {
45− expect(gitMutationKeys.pull("/repo/a")).not.toEqual(gitMutationKeys.pull("/repo/b"));
48+ expect(gitMutationKeys.pull(ENVIRONMENT_A, "/repo/a")).not.toEqual(
49+ gitMutationKeys.pull(ENVIRONMENT_A, "/repo/b"),
50+ );
4651 });
4752
4853 it("scopes pull request thread preparation keys by cwd", () => {
49− expect(gitMutationKeys.preparePullRequestThread("/repo/a")).not.toEqual(
50− gitMutationKeys.preparePullRequestThread("/repo/b"),
54+ expect(gitMutationKeys.preparePullRequestThread(ENVIRONMENT_A, "/repo/a")).not.toEqual(
55+ gitMutationKeys.preparePullRequestThread(ENVIRONMENT_A, "/repo/b"),
5156 );
5257 });
5358 });
@@ -57,23 +62,31 @@ describe("git mutation options", () => { · 3 unmodified lines
5762
5863 it("attaches cwd-scoped mutation key for runStackedAction", () => {
5964 const options = gitRunStackedActionMutationOptions({
65+ environmentId: ENVIRONMENT_A,
6066 cwd: "/repo/a",
6167 queryClient,
6268 });
63− expect(options.mutationKey).toEqual(gitMutationKeys.runStackedAction("/repo/a"));
69+ expect(options.mutationKey).toEqual(gitMutationKeys.runStackedAction(ENVIRONMENT_A, "/repo/a"));
6470 });
6571
6672 it("attaches cwd-scoped mutation key for pull", () => {
67− const options = gitPullMutationOptions({ cwd: "/repo/a", queryClient });
68− expect(options.mutationKey).toEqual(gitMutationKeys.pull("/repo/a"));
73+ const options = gitPullMutationOptions({
74+ environmentId: ENVIRONMENT_A,
75+ cwd: "/repo/a",
76+ queryClient,
77+ });
78+ expect(options.mutationKey).toEqual(gitMutationKeys.pull(ENVIRONMENT_A, "/repo/a"));
6979 });
7080
7181 it("attaches cwd-scoped mutation key for preparePullRequestThread", () => {
7282 const options = gitPreparePullRequestThreadMutationOptions({
83+ environmentId: ENVIRONMENT_A,
7384 cwd: "/repo/a",
7485 queryClient,
7586 });
76− expect(options.mutationKey).toEqual(gitMutationKeys.preparePullRequestThread("/repo/a"));
87+ expect(options.mutationKey).toEqual(
88+ gitMutationKeys.preparePullRequestThread(ENVIRONMENT_A, "/repo/a"),
89+ );
7790 });
7891 });
7992
@@ -83,6 +96,7 @@ describe("invalidateGitQueries", () => { · 3 unmodified lines
8396
8497 queryClient.setQueryData(
8598 gitBranchSearchInfiniteQueryOptions({
99+ environmentId: ENVIRONMENT_A,
86100 cwd: "/repo/a",
87101 query: "feature",
88102 }).queryKey,
@@ -90,17 +104,19 @@ describe("invalidateGitQueries", () => { · 1 unmodified line
90104 );
91105 queryClient.setQueryData(
92106 gitBranchSearchInfiniteQueryOptions({
107+ environmentId: ENVIRONMENT_B,
93108 cwd: "/repo/b",
94109 query: "feature",
95110 }).queryKey,
96111 BRANCH_SEARCH_RESULT,
97112 );
98113
99− await invalidateGitQueries(queryClient, { cwd: "/repo/a" });
114+ await invalidateGitQueries(queryClient, { environmentId: ENVIRONMENT_A, cwd: "/repo/a" });
100115
101116 expect(
102117 queryClient.getQueryState(
103118 gitBranchSearchInfiniteQueryOptions({
119+ environmentId: ENVIRONMENT_A,
104120 cwd: "/repo/a",
105121 query: "feature",
106122 }).queryKey,
@@ -109,6 +125,7 @@ describe("invalidateGitQueries", () => { · 2 unmodified lines
109125 expect(
110126 queryClient.getQueryState(
111127 gitBranchSearchInfiniteQueryOptions({
128+ environmentId: ENVIRONMENT_B,
112129 cwd: "/repo/b",
113130 query: "feature",
114131 }).queryKey,