aboutsummaryrefslogtreecommitdiff
path: root/webAO/__tests__/tryBackgroundUrls.test.ts
diff options
context:
space:
mode:
Diffstat (limited to 'webAO/__tests__/tryBackgroundUrls.test.ts')
-rw-r--r--webAO/__tests__/tryBackgroundUrls.test.ts28
1 files changed, 28 insertions, 0 deletions
diff --git a/webAO/__tests__/tryBackgroundUrls.test.ts b/webAO/__tests__/tryBackgroundUrls.test.ts
new file mode 100644
index 0000000..cfbf3f9
--- /dev/null
+++ b/webAO/__tests__/tryBackgroundUrls.test.ts
@@ -0,0 +1,28 @@
+import fileExists from "../utils/fileExists";
+import tryBackgroundUrls from "../utils/tryBackgroundUrls";
+import transparentPng from "../constants/transparentPng";
+jest.mock("../utils/fileExists");
+
+const mockFileExists = fileExists as jest.MockedFunction<typeof fileExists>;
+
+describe("tryBackgroundUrls", () => {
+ it("Should try multiple file extensions", async () => {
+ const url = "localhost/stoneddiscord/assets";
+ mockFileExists
+ .mockReturnValueOnce(Promise.resolve(false))
+ .mockReturnValueOnce(Promise.resolve(false))
+ .mockReturnValueOnce(Promise.resolve(false))
+ .mockReturnValueOnce(Promise.resolve(true));
+ const actual = await tryBackgroundUrls(url);
+ const expected = "localhost/stoneddiscord/assets.apng";
+ expect(actual).toBe(expected);
+ });
+
+ it("Should return a transparent png if it cant find any assets", async () => {
+ const url = "localhost/stoneddiscord/assets";
+ mockFileExists.mockReturnValue(Promise.resolve(false));
+ const actual = await tryBackgroundUrls(url);
+ const expected = transparentPng;
+ expect(actual).toBe(expected);
+ });
+});