Skip to content

Commit 3d1ddf7

Browse files
authored
Merge pull request #61 from reynaldichernando/test-subdomains
Add subdomains test
2 parents bc4fd18 + e5d879d commit 3d1ddf7

File tree

1 file changed

+90
-0
lines changed

1 file changed

+90
-0
lines changed

tests/subdomains.test.js

Lines changed: 90 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,90 @@
1+
import { vi } from "vitest";
2+
import { it } from "vitest";
3+
import { describe } from "vitest";
4+
import { createSubdomain, deleteSubdomain, getSubdomains, updateSubdomain } from "../src/commands/subdomains";
5+
import { expect } from "vitest";
6+
import { getPuter } from "../src/modules/PuterModule";
7+
8+
vi.mock("../src/modules/PuterModule")
9+
vi.mock("conf", () => {
10+
const Conf = vi.fn(() => ({
11+
get: vi.fn(),
12+
set: vi.fn(),
13+
clear: vi.fn(),
14+
}));
15+
return { default: Conf };
16+
});
17+
18+
vi.spyOn(console, "log").mockImplementation(() => { });
19+
20+
describe("getSubdomains", () => {
21+
it("should get subdomains successfully", async () => {
22+
const mockHostingList = vi.fn().mockResolvedValue([{
23+
uid: "123",
24+
subdomain: "hehe.puter.site",
25+
root_dir: { path: "/some/path" },
26+
}]);
27+
vi.mocked(getPuter).mockReturnValue({
28+
hosting: {
29+
list: mockHostingList
30+
}
31+
})
32+
const result = await getSubdomains();
33+
expect(getPuter).toHaveBeenCalled();
34+
expect(result).toHaveLength(1)
35+
})
36+
})
37+
38+
describe("deleteSubdomain", () => {
39+
it("should delete subdomain successfully", async () => {
40+
const mockHostingDelete = vi.fn().mockResolvedValue(true);
41+
vi.mocked(getPuter).mockReturnValue({
42+
hosting: {
43+
delete: mockHostingDelete
44+
}
45+
})
46+
const result = await deleteSubdomain(["hehe.puter.site"]);
47+
expect(result).toBe(true);
48+
expect(console.log).toHaveBeenCalledWith(expect.stringContaining("Subdomain deleted successfully"));
49+
})
50+
})
51+
52+
describe("createSubdomain", () => {
53+
it("should create subdomain successfully", async () => {
54+
const mockHostingCreate = vi.fn().mockResolvedValue({
55+
uid: "123",
56+
subdomain: "hehe.puter.site",
57+
root_dir: { path: "/some/path" },
58+
});
59+
vi.mocked(getPuter).mockReturnValue({
60+
hosting: {
61+
create: mockHostingCreate
62+
}
63+
})
64+
const result = await createSubdomain("hehe", "/mydir")
65+
expect(result).toMatchObject({
66+
subdomain: "hehe.puter.site"
67+
})
68+
})
69+
})
70+
71+
describe("updateSubdomain", () => {
72+
it("should update subdomain successfully", async () => {
73+
const mockHostingUpdate = vi.fn().mockResolvedValue({
74+
uid: "123",
75+
subdomain: "hehe.puter.site",
76+
root_dir: { path: "/newdir" },
77+
});
78+
vi.mocked(getPuter).mockReturnValue({
79+
hosting: {
80+
update: mockHostingUpdate
81+
}
82+
})
83+
const result = await updateSubdomain("hehe", "/newdir")
84+
expect(result).toMatchObject({
85+
root_dir: {
86+
path: "/newdir"
87+
}
88+
})
89+
})
90+
})

0 commit comments

Comments
 (0)