aboutsummaryrefslogtreecommitdiffstats
path: root/packages/web/server/api/routers/users.test.ts
diff options
context:
space:
mode:
Diffstat (limited to 'packages/web/server/api/routers/users.test.ts')
-rw-r--r--packages/web/server/api/routers/users.test.ts99
1 files changed, 0 insertions, 99 deletions
diff --git a/packages/web/server/api/routers/users.test.ts b/packages/web/server/api/routers/users.test.ts
deleted file mode 100644
index 1ee04f99..00000000
--- a/packages/web/server/api/routers/users.test.ts
+++ /dev/null
@@ -1,99 +0,0 @@
-import {
- CustomTestContext,
- defaultBeforeEach,
- getApiCaller,
-} from "@/lib/testUtils";
-import { expect, describe, test, beforeEach, assert } from "vitest";
-
-beforeEach<CustomTestContext>(defaultBeforeEach(false));
-
-describe("User Routes", () => {
- test<CustomTestContext>("create user", async ({ unauthedAPICaller }) => {
- const user = await unauthedAPICaller.users.create({
- name: "Test User",
- email: "test123@test.com",
- password: "pass1234",
- confirmPassword: "pass1234",
- });
-
- expect(user.name).toEqual("Test User");
- expect(user.email).toEqual("test123@test.com");
- });
-
- test<CustomTestContext>("first user is admin", async ({
- unauthedAPICaller,
- }) => {
- const user1 = await unauthedAPICaller.users.create({
- name: "Test User",
- email: "test123@test.com",
- password: "pass1234",
- confirmPassword: "pass1234",
- });
-
- const user2 = await unauthedAPICaller.users.create({
- name: "Test User",
- email: "test124@test.com",
- password: "pass1234",
- confirmPassword: "pass1234",
- });
-
- expect(user1.role).toEqual("admin");
- expect(user2.role).toEqual("user");
- });
-
- test<CustomTestContext>("unique emails", async ({ unauthedAPICaller }) => {
- await unauthedAPICaller.users.create({
- name: "Test User",
- email: "test123@test.com",
- password: "pass1234",
- confirmPassword: "pass1234",
- });
-
- await expect(() =>
- unauthedAPICaller.users.create({
- name: "Test User",
- email: "test123@test.com",
- password: "pass1234",
- confirmPassword: "pass1234",
- }),
- ).rejects.toThrow(/Email is already taken/);
- });
-
- test<CustomTestContext>("privacy checks", async ({
- db,
- unauthedAPICaller,
- }) => {
- const adminUser = await unauthedAPICaller.users.create({
- name: "Test User",
- email: "test123@test.com",
- password: "pass1234",
- confirmPassword: "pass1234",
- });
- const [user1, user2] = await Promise.all(
- ["test1234@test.com", "test12345@test.com"].map((e) =>
- unauthedAPICaller.users.create({
- name: "Test User",
- email: e,
- password: "pass1234",
- confirmPassword: "pass1234",
- }),
- ),
- );
-
- assert(adminUser.role == "admin");
- assert(user1.role == "user");
- assert(user2.role == "user");
-
- const user2Caller = getApiCaller(db, user2.id);
-
- // A normal user can't delete other users
- await expect(() =>
- user2Caller.users.delete({
- userId: user1.id,
- }),
- ).rejects.toThrow(/FORBIDDEN/);
-
- // A normal user can't list all users
- await expect(() => user2Caller.users.list()).rejects.toThrow(/FORBIDDEN/);
- });
-});