Skip to content

Commit 3926c9e

Browse files
Fixed e2e test cases
1 parent 4844424 commit 3926c9e

File tree

6 files changed

+84
-6
lines changed

6 files changed

+84
-6
lines changed

packages/manager/cypress/e2e/core/general/gdpr-agreement.spec.ts

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,12 @@
11
import { linodeFactory, regionFactory } from '@linode/utilities';
2+
import { firewallFactory } from '@src/factories';
23
import { mockGetAccountAgreements } from 'support/intercepts/account';
4+
import { mockGetFirewalls } from 'support/intercepts/firewalls';
35
import { mockCreateLinode } from 'support/intercepts/linodes';
46
import { mockGetRegions } from 'support/intercepts/regions';
57
import { ui } from 'support/ui';
6-
import { randomLabel, randomString } from 'support/util/random';
8+
import { linodeCreatePage } from 'support/ui/pages';
9+
import { randomLabel, randomNumber, randomString } from 'support/util/random';
710

811
import type { Region } from '@linode/api-v4';
912

@@ -100,6 +103,11 @@ describe('GDPR agreement', () => {
100103
});
101104

102105
it('needs the agreement checked to submit the form', () => {
106+
const mockFirewall = firewallFactory.build({
107+
id: randomNumber(),
108+
label: randomLabel(),
109+
});
110+
mockGetFirewalls([mockFirewall]).as('getFirewalls');
103111
mockGetRegions(mockRegions).as('getRegions');
104112
mockGetAccountAgreements({
105113
billing_agreement: false,
@@ -127,6 +135,12 @@ describe('GDPR agreement', () => {
127135

128136
cy.findByLabelText('Root Password').type(rootpass);
129137

138+
// Select a firewall
139+
linodeCreatePage.selectFirewall(
140+
mockFirewall.label,
141+
'Public Interface Firewall'
142+
);
143+
130144
cy.get('[data-testid="eu-agreement-checkbox"]')
131145
.as('euAgreement')
132146
.scrollIntoView();

packages/manager/cypress/e2e/core/helpAndSupport/open-support-ticket.spec.ts

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ import 'cypress-file-upload';
66
import { mockGetAccount } from 'support/intercepts/account';
77
import { mockGetDomains } from 'support/intercepts/domains';
88
import { mockAppendFeatureFlags } from 'support/intercepts/feature-flags';
9+
import { mockGetFirewalls } from 'support/intercepts/firewalls';
910
import {
1011
mockCreateLinodeAccountLimitError,
1112
mockGetLinodeDetails,
@@ -31,6 +32,7 @@ import {
3132
} from 'support/util/random';
3233
import { chooseRegion } from 'support/util/regions';
3334

35+
import { firewallFactory } from 'src/factories';
3436
import {
3537
accountFactory,
3638
domainFactory,
@@ -378,6 +380,10 @@ describe('open support tickets', () => {
378380
planLabel: 'Nanode 1 GB',
379381
planId: 'g6-nanode-1',
380382
};
383+
const mockFirewall = firewallFactory.build({
384+
id: randomNumber(),
385+
label: randomLabel(),
386+
});
381387

382388
const mockLinode = linodeFactory.build();
383389

@@ -393,6 +399,7 @@ describe('open support tickets', () => {
393399
mockGetSupportTicket(mockAccountLimitTicket);
394400
mockGetSupportTicketReplies(mockAccountLimitTicket.id, []);
395401
mockGetLinodes([mockLinode]);
402+
mockGetFirewalls([mockFirewall]).as('getFirewalls');
396403

397404
cy.visitWithLogin('/linodes/create');
398405

@@ -401,6 +408,8 @@ describe('open support tickets', () => {
401408
linodeCreatePage.selectRegionById(mockRegion.id);
402409
linodeCreatePage.selectPlan(mockPlan.planType, mockPlan.planLabel);
403410
linodeCreatePage.setRootPassword(randomString(32));
411+
// Select a firewall
412+
linodeCreatePage.selectFirewall(mockFirewall.label, 'Assign Firewall');
404413

405414
// Attempt to create Linode and confirm mocked account limit error with support link is present.
406415
ui.button

packages/manager/cypress/e2e/core/linodes/create-linode.spec.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,12 @@ describe('Create Linode', () => {
6262
describe('End-to-end', () => {
6363
// Run an end-to-end test to create a basic Linode for each plan type described below.
6464
describe('By plan type', () => {
65+
beforeEach(() => {
66+
mockAppendFeatureFlags({
67+
linodeInterfaces: { enabled: false },
68+
iam: { enabled: false },
69+
});
70+
});
6571
[
6672
{
6773
planId: 'g6-nanode-1',

packages/manager/cypress/e2e/core/oneClickApps/one-click-apps.spec.ts

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import { linodeFactory } from '@linode/utilities';
2+
import { mockGetFirewalls } from 'support/intercepts/firewalls';
23
import { mockGetAllImages } from 'support/intercepts/images';
34
import { mockCreateLinode } from 'support/intercepts/linodes';
45
import {
@@ -7,11 +8,12 @@ import {
78
mockGetStackScripts,
89
} from 'support/intercepts/stackscripts';
910
import { ui } from 'support/ui';
11+
import { linodeCreatePage } from 'support/ui/pages';
1012
import { getRandomOCAId } from 'support/util/one-click-apps';
11-
import { randomLabel, randomString } from 'support/util/random';
13+
import { randomLabel, randomNumber, randomString } from 'support/util/random';
1214
import { chooseRegion } from 'support/util/regions';
1315

14-
import { imageFactory } from 'src/factories';
16+
import { firewallFactory, imageFactory } from 'src/factories';
1517
import { stackScriptFactory } from 'src/factories/stackscripts';
1618
import { getMarketplaceAppLabel } from 'src/features/Linodes/LinodeCreate/Tabs/Marketplace/utilities';
1719
import { oneClickApps } from 'src/features/OneClickApps/oneClickApps';
@@ -166,10 +168,15 @@ describe('OneClick Apps (OCA)', () => {
166168
const linode = linodeFactory.build({
167169
label: linodeLabel,
168170
});
171+
const mockFirewall = firewallFactory.build({
172+
id: randomNumber(),
173+
label: randomLabel(),
174+
});
169175

170176
mockGetAllImages(images);
171177
mockGetStackScripts([stackscript]).as('getStackScripts');
172178
mockGetStackScript(stackscript.id, stackscript);
179+
mockGetFirewalls([mockFirewall]).as('getFirewalls');
173180

174181
cy.visitWithLogin(`/linodes/create/marketplace`);
175182

@@ -242,6 +249,12 @@ describe('OneClick Apps (OCA)', () => {
242249
// Create the Linode
243250
mockCreateLinode(linode).as('createLinode');
244251

252+
// Select a firewall
253+
linodeCreatePage.selectFirewall(
254+
mockFirewall.label,
255+
'Public Interface Firewall'
256+
);
257+
245258
ui.button
246259
.findByTitle('Create Linode')
247260
.should('be.visible')

packages/manager/cypress/e2e/core/stackscripts/create-stackscripts.spec.ts

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,15 @@ import { createImage, getLinodeDisks, resizeLinodeDisk } from '@linode/api-v4';
22
import { createLinodeRequestFactory } from '@linode/utilities';
33
import { authenticate } from 'support/api/authentication';
44
import { interceptGetAccountAvailability } from 'support/intercepts/account';
5+
import { mockGetFirewalls } from 'support/intercepts/firewalls';
56
import { interceptGetAllImages } from 'support/intercepts/images';
67
import { interceptCreateLinode } from 'support/intercepts/linodes';
78
import {
89
interceptCreateStackScript,
910
interceptGetStackScripts,
1011
} from 'support/intercepts/stackscripts';
1112
import { ui } from 'support/ui';
13+
import { linodeCreatePage } from 'support/ui/pages';
1214
import { SimpleBackoffMethod } from 'support/util/backoff';
1315
import { cleanUp } from 'support/util/cleanup';
1416
import { chooseImage } from 'support/util/images';
@@ -18,10 +20,16 @@ import {
1820
pollLinodeDiskSize,
1921
pollLinodeStatus,
2022
} from 'support/util/polling';
21-
import { randomLabel, randomPhrase, randomString } from 'support/util/random';
23+
import {
24+
randomLabel,
25+
randomNumber,
26+
randomPhrase,
27+
randomString,
28+
} from 'support/util/random';
2229
import { chooseRegion, getRegionByLabel } from 'support/util/regions';
2330

2431
import { getFilteredImagesForImageSelect } from 'src/components/ImageSelect/utilities';
32+
import { firewallFactory } from 'src/factories';
2533

2634
import type { Image } from '@linode/api-v4';
2735

@@ -179,13 +187,19 @@ const createLinodeAndImage = async () => {
179187
return image;
180188
};
181189

190+
const mockFirewall = firewallFactory.build({
191+
id: randomNumber(),
192+
label: randomLabel(),
193+
});
194+
182195
authenticate();
183196
describe('Create stackscripts', () => {
184197
before(() => {
185198
cleanUp(['linodes', 'images', 'stackscripts']);
186199
});
187200
beforeEach(() => {
188201
cy.tag('method:e2e', 'purpose:dcTesting');
202+
mockGetFirewalls([mockFirewall]).as('getFirewalls');
189203
});
190204

191205
/*
@@ -288,6 +302,11 @@ describe('Create stackscripts', () => {
288302
cy.findByLabelText('Example Title').should('be.visible').click();
289303
cy.focused().type('{selectall}{backspace}');
290304
cy.focused().type(randomString(12));
305+
// Select a firewall
306+
linodeCreatePage.selectFirewall(
307+
mockFirewall.label,
308+
'Public Interface Firewall'
309+
);
291310

292311
ui.button
293312
.findByTitle('Create Linode')
@@ -389,6 +408,11 @@ describe('Create stackscripts', () => {
389408
cy.findByText(privateImage.label).as('qaPrivateImage').scrollIntoView();
390409
cy.get('@qaPrivateImage').should('be.visible').click();
391410

411+
// Select a firewall
412+
linodeCreatePage.selectFirewall(
413+
mockFirewall.label,
414+
'Public Interface Firewall'
415+
);
392416
interceptCreateLinode().as('createLinode');
393417
fillOutLinodeForm(
394418
linodeLabel,

packages/manager/cypress/e2e/core/stackscripts/smoke-community-stackscripts.spec.ts

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import { getProfile } from '@linode/api-v4';
22
import { authenticate } from 'support/api/authentication';
3+
import { mockGetFirewalls } from 'support/intercepts/firewalls';
34
import { interceptCreateLinode } from 'support/intercepts/linodes';
45
import { mockGetUserPreferences } from 'support/intercepts/profile';
56
import {
@@ -8,11 +9,12 @@ import {
89
mockGetStackScripts,
910
} from 'support/intercepts/stackscripts';
1011
import { ui } from 'support/ui';
12+
import { linodeCreatePage } from 'support/ui/pages';
1113
import { cleanUp } from 'support/util/cleanup';
12-
import { randomLabel, randomString } from 'support/util/random';
14+
import { randomLabel, randomNumber, randomString } from 'support/util/random';
1315
import { chooseRegion } from 'support/util/regions';
1416

15-
import { stackScriptFactory } from 'src/factories';
17+
import { firewallFactory, stackScriptFactory } from 'src/factories';
1618
import { formatDate } from 'src/utilities/formatDate';
1719

1820
import type { Profile, StackScript } from '@linode/api-v4';
@@ -284,11 +286,16 @@ describe('Community Stackscripts integration tests', () => {
284286
const image = 'AlmaLinux 9';
285287
const region = chooseRegion({ capabilities: ['Linodes', 'Vlans'] });
286288
const linodeLabel = randomLabel();
289+
const mockFirewall = firewallFactory.build({
290+
id: randomNumber(),
291+
label: randomLabel(),
292+
});
287293

288294
// Ensure that the Primary Nav is open
289295
mockGetUserPreferences({ desktop_sidebar_open: false }).as(
290296
'getPreferences'
291297
);
298+
mockGetFirewalls([mockFirewall]).as('getFirewalls');
292299
interceptGetStackScripts().as('getStackScripts');
293300
cy.visitWithLogin('/stackscripts/community');
294301
cy.wait(['@getStackScripts', '@getPreferences']);
@@ -422,6 +429,11 @@ describe('Community Stackscripts integration tests', () => {
422429
cy.get('[id="root-password"]').type(rootPassword);
423430
interceptCreateLinode().as('createLinode');
424431

432+
// Select a firewall
433+
linodeCreatePage.selectFirewall(
434+
mockFirewall.label,
435+
'Public Interface Firewall'
436+
);
425437
ui.button
426438
.findByTitle('Create Linode')
427439
.should('be.visible')

0 commit comments

Comments
 (0)