Skip to content

Commit ba375d1

Browse files
committed
[tests] Use gql input types & fix problems
1 parent bd8f03a commit ba375d1

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

46 files changed

+1106
-1382
lines changed

test/engagement-changeset-aware.e2e-spec.ts

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { CalendarDate, type ID, Role } from '~/common';
1+
import { type ID, Role } from '~/common';
22
import { graphql } from '~/graphql';
33
import { EngagementStatus } from '../src/components/engagement/dto';
44
import { ProjectChangeRequestType } from '../src/components/project-change-request/dto';
@@ -22,7 +22,7 @@ import {
2222
} from './utility';
2323
import { forceProjectTo } from './utility/transition-project';
2424

25-
const readEngagements = (app: TestApp, id: string, changeset?: string) =>
25+
const readEngagements = (app: TestApp, id: ID, changeset?: ID) =>
2626
app.graphql.query(
2727
graphql(
2828
`
@@ -48,7 +48,7 @@ const readEngagements = (app: TestApp, id: string, changeset?: string) =>
4848
},
4949
);
5050

51-
const readLanguageEngagement = (app: TestApp, id: string, changeset?: string) =>
51+
const readLanguageEngagement = (app: TestApp, id: ID, changeset?: ID) =>
5252
app.graphql.query(
5353
graphql(
5454
`
@@ -85,7 +85,7 @@ const readLanguageEngagement = (app: TestApp, id: string, changeset?: string) =>
8585
},
8686
);
8787

88-
const readProjectChangeset = (app: TestApp, id: string, changeset?: string) =>
88+
const readProjectChangeset = (app: TestApp, id: ID, changeset?: ID) =>
8989
app.graphql.query(
9090
graphql(`
9191
query project($id: ID!, $changeset: ID) {
@@ -240,7 +240,7 @@ describe('Engagement Changeset Aware e2e', () => {
240240
input: {
241241
engagement: {
242242
id: languageEngagement.id,
243-
completeDate: CalendarDate.fromISO('2100-08-22'),
243+
completeDate: '2100-08-22',
244244
},
245245
changeset: changeset.id,
246246
},
@@ -290,7 +290,7 @@ describe('Engagement Changeset Aware e2e', () => {
290290
engagement: {
291291
languageId: language.id,
292292
projectId: project.id,
293-
completeDate: CalendarDate.fromISO('2021-09-22'),
293+
completeDate: '2021-09-22',
294294
},
295295
changeset: changeset.id,
296296
},
@@ -322,7 +322,7 @@ describe('Engagement Changeset Aware e2e', () => {
322322
input: {
323323
engagement: {
324324
id: engagementId,
325-
completeDate: CalendarDate.fromISO('2100-08-22'),
325+
completeDate: '2100-08-22',
326326
},
327327
changeset: changeset.id,
328328
},
@@ -368,7 +368,7 @@ describe('Engagement Changeset Aware e2e', () => {
368368
engagement: {
369369
languageId: language.id,
370370
projectId: project.id,
371-
completeDate: CalendarDate.fromISO('2021-09-22'),
371+
completeDate: '2021-09-22',
372372
},
373373
changeset: changeset.id,
374374
},
@@ -405,7 +405,7 @@ describe('Engagement Changeset Aware e2e', () => {
405405
project.id,
406406
changeset.id,
407407
);
408-
expect(projectChangeset.project.changeset.difference.removed[0].id).toBe(
408+
expect(projectChangeset.project.changeset!.difference.removed[0].id).toBe(
409409
le.createLanguageEngagement.engagement.id,
410410
);
411411
});

test/engagement.e2e-spec.ts

Lines changed: 13 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
11
import { faker } from '@faker-js/faker';
22
import { some } from 'lodash';
33
import { DateTime, Interval } from 'luxon';
4-
import { generateId, Role } from '~/common';
4+
import { generateId, type ID, Role } from '~/common';
55
import { graphql } from '~/graphql';
66
import {
7-
type CreateInternshipEngagement,
87
EngagementStatus,
98
InternshipPosition,
109
} from '../src/components/engagement/dto';
@@ -51,8 +50,8 @@ describe('Engagement e2e', () => {
5150
let language: fragments.language;
5251
let location: fragments.location;
5352
let user: TestUser;
54-
let intern: { id: string };
55-
let mentor: { id: string };
53+
let intern: { id: ID };
54+
let mentor: { id: ID };
5655

5756
beforeAll(async () => {
5857
app = await createTestApp();
@@ -169,18 +168,14 @@ describe('Engagement e2e', () => {
169168
internshipProject = await createProject(app, {
170169
type: ProjectType.Internship,
171170
});
172-
const internshipEngagement: CreateInternshipEngagement = {
173-
projectId: internshipProject.id,
174-
internId: user.id,
175-
};
176171

177172
const result = await app.graphql.mutate(
178173
graphql(
179174
`
180175
mutation createInternshipEngagement(
181-
$input: CreateInternshipEngagementInput!
176+
$input: CreateInternshipEngagement!
182177
) {
183-
createInternshipEngagement(input: $input) {
178+
createInternshipEngagement(input: { engagement: $input }) {
184179
engagement {
185180
...internshipEngagement
186181
}
@@ -191,7 +186,8 @@ describe('Engagement e2e', () => {
191186
),
192187
{
193188
input: {
194-
engagement: internshipEngagement,
189+
projectId: internshipProject.id,
190+
internId: user.id,
195191
},
196192
},
197193
);
@@ -417,8 +413,8 @@ describe('Engagement e2e', () => {
417413
const updated = result.updateInternshipEngagement.engagement;
418414
expect(updated).toBeTruthy();
419415
expect(updated.id).toBe(internshipEngagement.id);
420-
expect(updated.mentor.value.id).toBe(mentor.id);
421-
expect(updated.countryOfOrigin.value.id).toBe(location.id);
416+
expect(updated.mentor.value!.id).toBe(mentor.id);
417+
expect(updated.countryOfOrigin.value!.id).toBe(location.id);
422418
expect(updated.position.value).toBe(updatePosition);
423419
expect(updated.methodologies.value).toEqual(
424420
expect.arrayContaining(updateMethodologies),
@@ -573,7 +569,7 @@ describe('Engagement e2e', () => {
573569
id: languageEngagement.id,
574570
},
575571
);
576-
const ceremony = languageEngagementRead.engagement.ceremony.value;
572+
const ceremony = languageEngagementRead.engagement.ceremony.value!;
577573
expect(ceremony).toBeDefined();
578574

579575
await registerUser(app, { roles: [Role.FieldOperationsDirector] });
@@ -638,7 +634,7 @@ describe('Engagement e2e', () => {
638634
id: ie.id,
639635
},
640636
);
641-
const ceremony = internshipEngagementRead.engagement.ceremony.value;
637+
const ceremony = internshipEngagementRead.engagement.ceremony.value!;
642638
expect(ceremony).toBeDefined();
643639

644640
await registerUser(app, { roles: [Role.FieldOperationsDirector] });
@@ -733,7 +729,7 @@ describe('Engagement e2e', () => {
733729
[fragments.ceremony],
734730
),
735731
{
736-
id: ceremonyId,
732+
id: ceremonyId!,
737733
},
738734
)
739735
.expectError(errors.notFound());
@@ -1134,7 +1130,6 @@ describe('Engagement e2e', () => {
11341130
`),
11351131
{
11361132
id: project.id,
1137-
step: expectedNewStatus,
11381133
},
11391134
);
11401135
const actual = engagements.items.find((e) => e.id === engagement.id);
@@ -1169,7 +1164,7 @@ describe('Engagement e2e', () => {
11691164

11701165
const modAtMillis = DateTime.fromISO(actual.modifiedAt).toMillis();
11711166
const statusModMillis = DateTime.fromISO(
1172-
actual.statusModifiedAt.value,
1167+
actual.statusModifiedAt.value!,
11731168
).toMillis();
11741169
expect(modAtMillis).toBe(statusModMillis);
11751170
});

test/language-changeset-aware.e2e-spec.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import { faker } from '@faker-js/faker';
2+
import { type ID } from '~/common';
23
import { graphql } from '~/graphql';
34
import {
45
approveProjectChangeRequest,
@@ -17,7 +18,7 @@ import {
1718
} from './utility';
1819
import { forceProjectTo } from './utility/transition-project';
1920

20-
const readLanguage = (app: TestApp, id: string, changeset?: string) =>
21+
const readLanguage = (app: TestApp, id: ID, changeset?: ID) =>
2122
app.graphql.query(
2223
graphql(
2324
`

test/language.e2e-spec.ts

Lines changed: 19 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
import { faker } from '@faker-js/faker';
22
import { times } from 'lodash';
33
import { isValidId } from '~/common';
4-
import { graphql } from '~/graphql';
5-
import { type UpdateLanguage } from '../src/components/language/dto';
4+
import { graphql, type InputOf } from '~/graphql';
65
import {
76
createLanguage,
87
createLanguageEngagement,
@@ -388,27 +387,24 @@ describe('Language e2e', () => {
388387
});
389388
});
390389

391-
async function updateLanguage(app: TestApp, update: Partial<UpdateLanguage>) {
392-
const result = await app.graphql.mutate(
393-
graphql(
394-
`
395-
mutation updateLanguage($input: UpdateLanguageInput!) {
396-
updateLanguage(input: $input) {
397-
language {
398-
...language
399-
}
400-
}
401-
}
402-
`,
403-
[fragments.language],
404-
),
405-
{
406-
input: {
407-
language: update,
408-
},
409-
},
410-
);
390+
async function updateLanguage(
391+
app: TestApp,
392+
input: InputOf<typeof UpdateLanguageDoc>,
393+
) {
394+
const result = await app.graphql.mutate(UpdateLanguageDoc, { input });
411395
const updated = result.updateLanguage.language;
412-
expect(updated.id).toBe(update.id);
396+
expect(updated.id).toBe(input.id);
413397
return updated;
414398
}
399+
const UpdateLanguageDoc = graphql(
400+
`
401+
mutation updateLanguage($input: UpdateLanguage!) {
402+
updateLanguage(input: { language: $input }) {
403+
language {
404+
...language
405+
}
406+
}
407+
}
408+
`,
409+
[fragments.language],
410+
);

test/location.e2e-spec.ts

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -167,7 +167,7 @@ describe('Location e2e', () => {
167167
);
168168
const updated = result.updateLocation.location;
169169
expect(updated).toBeTruthy();
170-
expect(updated.defaultFieldRegion.value.id).toBe(newFieldRegion.id);
170+
expect(updated.defaultFieldRegion.value!.id).toBe(newFieldRegion.id);
171171
});
172172

173173
it('update location with defaultMarketingRegion', async () => {
@@ -201,7 +201,9 @@ describe('Location e2e', () => {
201201
);
202202
const updated = result.updateLocation.location;
203203
expect(updated).toBeTruthy();
204-
expect(updated.defaultMarketingRegion.value.id).toBe(newMarketingRegion.id);
204+
expect(updated.defaultMarketingRegion.value!.id).toBe(
205+
newMarketingRegion.id,
206+
);
205207
});
206208

207209
it('update location with funding account', async () => {
@@ -235,6 +237,6 @@ describe('Location e2e', () => {
235237
);
236238
const updated = result.updateLocation.location;
237239
expect(updated).toBeTruthy();
238-
expect(updated.fundingAccount.value.id).toBe(newFundingAccount.id);
240+
expect(updated.fundingAccount.value!.id).toBe(newFundingAccount.id);
239241
});
240242
});

0 commit comments

Comments
 (0)