e2e/tests/7.user.test.ts (view raw)
1import { USER, USER_ID } from "../constants";
2import { sdk } from "../lib/gqlSdk";
3import { getJwtToken } from "../lib/strapi-utils";
4
5test("profile returns logged user profile", async () => {
6 const jwt = await getJwtToken();
7 const request = sdk.profile(undefined, {
8 authorization: `Bearer ${jwt}`,
9 });
10
11 await expect(request).resolves.toMatchObject({
12 me: {
13 id: USER_ID,
14 profile: {
15 ...USER,
16 },
17 },
18 });
19});
20
21test("profile throws error if no auth", async () => {
22 const request = sdk.profile();
23 await expect(request).rejects.toThrow("no_user");
24});
25
26test("updateMe returns updated user", async () => {
27 const jwt = await getJwtToken();
28 const request = sdk.updateMe(
29 {
30 userUpdate: {
31 firstName: "Updated firstname",
32 },
33 },
34 {
35 authorization: `Bearer ${jwt}`,
36 }
37 );
38
39 await expect(request).resolves.toMatchObject({
40 updateMe: {
41 user: {
42 id: USER_ID,
43 firstName: "Updated firstname",
44 },
45 },
46 });
47});
48
49test("updateMe throws error if no auth", async () => {
50 const request = sdk.updateMe({
51 userUpdate: {
52 firstName: "Updated firstname",
53 },
54 });
55 await expect(request).rejects.toThrow("Forbidden");
56});