pokerogue/test/testUtils/mocks/mockFetch.ts
Sirz Benjie a51a504155
[Test] Move test folder out of src (#5398)
* move test folder

* Update vitest files

* rename test/utils to test/testUtils

* Remove stray utils/gameManager

Got put back from a rebase
2025-02-22 22:52:07 -06:00

36 lines
902 B
TypeScript

export const MockFetch = (input, init) => {
const url = typeof input === "string" ? input : input.url;
let responseHandler;
let responseText;
const handlers = {
"account/info": { "username":"greenlamp", "lastSessionSlot":0 },
"savedata/session": {},
"savedata/system": {},
"savedata/updateall": "",
"daily/rankingpagecount": { data: 0 },
"game/titlestats": { "playerCount":0, "battleCount":5 },
"daily/rankings": [],
};
for (const key of Object.keys(handlers)) {
if (url.includes(key)) {
responseHandler = async() => handlers[key];
responseText = async() => handlers[key] ? JSON.stringify(handlers[key]) : handlers[key];
break;
}
}
const response: Partial<Response> = {
ok: true,
status: 200,
json: responseHandler,
text: responseText,
headers: new Headers({}),
};
return Promise.resolve(response);
};