all repos — caroster @ 6ad764e65d75cde2a61b7efce05d44cb90a6395c

[Octree] Group carpool to your event https://caroster.io

e2e/tests/6.travel.test.ts (view raw)

 1import { EVENT_ID, TRAVEL, TRAVEL_ID } from "../constants";
 2import { TravelInput } from "../graphql";
 3import { sdk } from "../lib/gqlSdk";
 4import { getJwtToken } from "../lib/strapi-utils";
 5
 6test("createTravel returns created travel", async () => {
 7  const travel: TravelInput = {
 8    vehicleName: "Test travel car",
 9    departureDate: "2023-08-12",
10    departureTime: "13:57",
11    meeting: "Test",
12    seats: 3,
13  };
14  const request = sdk.createTravel({ travel: { ...travel, event: EVENT_ID } });
15
16  await expect(request).resolves.toMatchObject({
17    createTravel: {
18      data: {
19        id: expect.any(String),
20        attributes: travel,
21      },
22    },
23  });
24});
25
26test("updateTravel returns updated travel", async () => {
27  const travelUpdate = {
28    vehicleName: "Updated travel car name",
29    seats: 12,
30  };
31  const request = sdk.updateTravel({ id: "1", travelUpdate });
32
33  await expect(request).resolves.toMatchObject({
34    updateTravel: {
35      data: {
36        id: expect.any(String),
37        attributes: {
38          ...travelUpdate,
39          meeting: TRAVEL.meeting,
40        },
41      },
42    },
43  });
44});
45
46test("deleteTravel returns ID of deleted travel", async () => {
47  const request = sdk.deleteTravel({ id: TRAVEL_ID });
48
49  await expect(request).resolves.toMatchObject({
50    deleteTravel: {
51      data: {
52        id: TRAVEL_ID,
53      },
54    },
55  });
56});
57
58test("createTravel creates a vehicle with 'createVehicle' param and logged user", async () => {
59  const jwt = await getJwtToken();
60
61  const travel = {
62    vehicleName: "My travel's car",
63    seats: 2,
64    phone_number: "12",
65  };
66  const request = sdk.createTravel(
67    {
68      createVehicle: true,
69      travel,
70    },
71    {
72      authorization: `Bearer ${jwt}`,
73    }
74  );
75
76  await expect(request).resolves.toMatchObject({
77    createTravel: {
78      data: {
79        attributes: travel,
80      },
81    },
82  });
83});