Skip to content

Commit b393217

Browse files
committed
test(msteams): keep sso token store helper local
1 parent a424ea3 commit b393217

1 file changed

Lines changed: 21 additions & 2 deletions

File tree

extensions/msteams/src/sso.test.ts

Lines changed: 21 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,11 @@
77
// but it would NOT surface the "msteams.sso" label in the error message.
88
import http from "node:http";
99
import { afterEach, describe, expect, it, vi } from "vitest";
10-
import { createMSTeamsSsoTokenStoreMemory } from "./sso-token-store.js";
10+
import {
11+
makeMSTeamsSsoTokenStoreKey,
12+
type MSTeamsSsoStoredToken,
13+
type MSTeamsSsoTokenStore,
14+
} from "./sso-token-store.js";
1115
import { type MSTeamsSsoFetch, handleSigninTokenExchangeInvoke } from "./sso.js";
1216

1317
// ---------------------------------------------------------------------------
@@ -19,6 +23,21 @@ type FakeServer = {
1923
close: () => Promise<void>;
2024
};
2125

26+
function createMemorySsoTokenStore(): MSTeamsSsoTokenStore {
27+
const tokens = new Map<string, MSTeamsSsoStoredToken>();
28+
return {
29+
async get({ connectionName, userId }) {
30+
return tokens.get(makeMSTeamsSsoTokenStoreKey(connectionName, userId)) ?? null;
31+
},
32+
async save(token) {
33+
tokens.set(makeMSTeamsSsoTokenStoreKey(token.connectionName, token.userId), { ...token });
34+
},
35+
async remove({ connectionName, userId }) {
36+
return tokens.delete(makeMSTeamsSsoTokenStoreKey(connectionName, userId));
37+
},
38+
};
39+
}
40+
2241
/**
2342
* Starts a loopback HTTP server on a random port and returns its base URL.
2443
* The caller is responsible for closing it after each test.
@@ -43,7 +62,7 @@ function startFakeServer(
4362
}
4463

4564
function createSsoDepsForServer(baseUrl: string) {
46-
const tokenStore = createMSTeamsSsoTokenStoreMemory();
65+
const tokenStore = createMemorySsoTokenStore();
4766
const tokenProvider = {
4867
getAccessToken: vi.fn(async () => "fake-bearer-token"),
4968
};

0 commit comments

Comments
 (0)