Skip to content

Commit fe8e74b

Browse files
Merge pull request #4113 from RedisInsight/e2e/feature/RI-6265_update-list-of-databases
update rdi tests
2 parents cbacef2 + 0c7ba56 commit fe8e74b

File tree

6 files changed

+43
-43
lines changed

6 files changed

+43
-43
lines changed

tests/e2e/helpers/database.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -351,7 +351,7 @@ export class DatabaseHelper {
351351
await userAgreementDialog.acceptLicenseTerms();
352352
await updateControlNumber(48.2);
353353
// Open default databases list tab if RDI opened
354-
if (await rdiInstancesListPage.rdiInstanceButton.exists) {
354+
if (await rdiInstancesListPage.addRdiInstanceButton.exists) {
355355
await myRedisDatabasePage.setActivePage(RedisOverviewPage.DataBase);
356356
}
357357
// TODO delete after releasing chatbot

tests/e2e/pageObjects/components/myRedisDatabase/add-rdi-instance.ts renamed to tests/e2e/pageObjects/dialogs/add-rdi-instance-dialog.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { Selector, t } from 'testcafe';
22

3-
export class AddRdiInstance {
3+
export class AddRdiInstanceDialog {
44
//INPUTS
55
rdiAliasInput = Selector('[data-testid=connection-form-name-input]');
66
urlInput = Selector('[data-testid=connection-form-url-input]');

tests/e2e/pageObjects/rdi-instances-list-page.ts

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
import { Selector, t } from 'testcafe';
2-
import { AddRdiInstance, RdiInstance } from './components/myRedisDatabase/add-rdi-instance';
32
import { BaseOverviewPage } from './base-overview-page';
43
import { RdiNavigationPanel } from './components/navigation/rdi-navigation-panel';
4+
import { AddRdiInstanceDialog, RdiInstance } from './dialogs/add-rdi-instance-dialog';
55

66
export class RdiInstancesListPage extends BaseOverviewPage {
77
NavigationPanel = new RdiNavigationPanel();
8-
AddRdiInstance = new AddRdiInstance();
8+
AddRdiInstanceDialog = new AddRdiInstanceDialog();
99

10-
rdiInstanceButton = Selector('[data-testid=rdi-instance]');
10+
addRdiInstanceButton = Selector('[data-testid=rdi-instance]');
1111
addRdiFromEmptyListBtn = Selector('[data-testid=empty-rdi-instance-button]');
1212

1313
quickstartBtn = Selector('[data-testid=empty-rdi-quickstart-button]');
@@ -30,13 +30,13 @@ export class RdiInstancesListPage extends BaseOverviewPage {
3030
* @param instanceValue rdi instance data
3131
*/
3232
async addRdi(instanceValue: RdiInstance): Promise<void> {
33-
await t.click(this.rdiInstanceButton);
33+
await t.click(this.addRdiInstanceButton);
3434
await t
35-
.typeText(this.AddRdiInstance.rdiAliasInput, instanceValue.alias)
36-
.typeText(this.AddRdiInstance.urlInput, instanceValue.url)
37-
.typeText(this.AddRdiInstance.usernameInput, instanceValue.username as string)
38-
.typeText(this.AddRdiInstance.passwordInput, instanceValue.password as string);
39-
await t.click(this.AddRdiInstance.addInstanceButton);
35+
.typeText(this.AddRdiInstanceDialog.rdiAliasInput, instanceValue.alias)
36+
.typeText(this.AddRdiInstanceDialog.urlInput, instanceValue.url)
37+
.typeText(this.AddRdiInstanceDialog.usernameInput, instanceValue.username as string)
38+
.typeText(this.AddRdiInstanceDialog.passwordInput, instanceValue.password as string);
39+
await t.click(this.AddRdiInstanceDialog.addInstanceButton);
4040
}
4141

4242
/**
@@ -81,7 +81,7 @@ export class RdiInstancesListPage extends BaseOverviewPage {
8181
* Edit Rdi by name
8282
* @param dbName The name of the rdi to be deleted
8383
*/
84-
async editRdiByName(dbName: string): Promise<void> {
84+
async clickEditRdiByName(dbName: string): Promise<void> {
8585
const rdiNames = this.rdiInstanceRow;
8686
const count = await rdiNames.count;
8787

tests/e2e/tests/web/critical-path/rdi/add-rdi-instance.e2e.ts

Lines changed: 29 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
import { t } from 'testcafe';
22

33
import { RdiInstancesListPage } from '../../../../pageObjects/rdi-instances-list-page';
4-
import { RdiInstance } from '../../../../pageObjects/components/myRedisDatabase/add-rdi-instance';
54
import { BrowserActions } from '../../../../common-actions/browser-actions';
65
import { RdiInstancePage } from '../../../../pageObjects/rdi-instance-page';
76
import { commonUrl } from '../../../../helpers/conf';
@@ -10,6 +9,7 @@ import { MyRedisDatabasePage } from '../../../../pageObjects';
109
import { Common, DatabaseHelper, Telemetry } from '../../../../helpers';
1110
import { RdiApiRequests } from '../../../../helpers/api/api-rdi';
1211
import { goBackHistory } from '../../../../helpers/utils';
12+
import { RdiInstance } from '../../../../pageObjects/dialogs/add-rdi-instance-dialog';
1313

1414
const rdiInstancesListPage = new RdiInstancesListPage();
1515
const browserActions = new BrowserActions();
@@ -75,34 +75,34 @@ fixture.skip `Rdi instance`
7575

7676
});
7777
test('Verify that user can add and remove RDI', async() => {
78-
await t.click(rdiInstancesListPage.rdiInstanceButton);
78+
await t.click(rdiInstancesListPage.addRdiInstanceButton);
7979
// Verify that URL input contains placeholder "Enter the RDI host IP as: https://[IP-Address]" on adding RDI panel
80-
await t.expect(rdiInstancesListPage.AddRdiInstance.urlInput.getAttribute('placeholder')).eql('Enter the RDI host IP as: https://[IP-Address]', 'Invalid placeholder for URL input');
80+
await t.expect(rdiInstancesListPage.AddRdiInstanceDialog.urlInput.getAttribute('placeholder')).eql('Enter the RDI host IP as: https://[IP-Address]', 'Invalid placeholder for URL input');
8181
// Verify that URL input contains icon with tooltip "The RDI machine servers REST API via port 443. Ensure that Redis Insight can access the RDI host over port 443." on adding RDI panel
82-
await t.hover(rdiInstancesListPage.AddRdiInstance.urlInputInfoIcon);
82+
await t.hover(rdiInstancesListPage.AddRdiInstanceDialog.urlInputInfoIcon);
8383
await browserActions.verifyTooltipContainsText(urlTooltipText, true);
8484

8585
// Verify that Username input default value prepopulated by "default" on adding RDI panel
86-
await t.expect(rdiInstancesListPage.AddRdiInstance.usernameInput.textContent).eql('default', 'No default value for username');
87-
await t.typeText(rdiInstancesListPage.AddRdiInstance.usernameInput, '');
86+
await t.expect(rdiInstancesListPage.AddRdiInstanceDialog.usernameInput.textContent).eql('default', 'No default value for username');
87+
await t.typeText(rdiInstancesListPage.AddRdiInstanceDialog.usernameInput, '');
8888
// Verify that Username input contains placeholder "Enter the RDI Redis username" on adding RDI panel
89-
await t.expect(rdiInstancesListPage.AddRdiInstance.usernameInput.getAttribute('placeholder')).eql('Enter the RDI Redis username', 'Invalid placeholder for Username input');
89+
await t.expect(rdiInstancesListPage.AddRdiInstanceDialog.usernameInput.getAttribute('placeholder')).eql('Enter the RDI Redis username', 'Invalid placeholder for Username input');
9090
// Verify that Username input contains icon with tooltip "The RDI REST API authentication is using the RDI REDIS username and password." on adding RDI panel
91-
await t.hover(rdiInstancesListPage.AddRdiInstance.usernameInputInfoIcon);
91+
await t.hover(rdiInstancesListPage.AddRdiInstanceDialog.usernameInputInfoIcon);
9292
await browserActions.verifyTooltipContainsText(usernameTooltipText, true);
9393

9494
// Verify that Password input contains placeholder "Enter the RDI Redis password" on adding RDI panel
95-
await t.expect(rdiInstancesListPage.AddRdiInstance.passwordInput.getAttribute('placeholder')).eql('Enter the RDI Redis password', 'Invalid placeholder for Password input');
95+
await t.expect(rdiInstancesListPage.AddRdiInstanceDialog.passwordInput.getAttribute('placeholder')).eql('Enter the RDI Redis password', 'Invalid placeholder for Password input');
9696
// Verify that Password input contains icon with tooltip "The RDI REST API authentication is using the RDI REDIS username and password." on adding RDI panel
97-
await t.hover(rdiInstancesListPage.AddRdiInstance.passwordInputInfoIcon);
97+
await t.hover(rdiInstancesListPage.AddRdiInstanceDialog.passwordInputInfoIcon);
9898
await browserActions.verifyTooltipContainsText(passwordTooltipText, true);
9999

100100
await t
101-
.typeText(rdiInstancesListPage.AddRdiInstance.rdiAliasInput, rdiInstance.alias)
102-
.typeText(rdiInstancesListPage.AddRdiInstance.urlInput, rdiInstance.url)
103-
.typeText(rdiInstancesListPage.AddRdiInstance.usernameInput, rdiInstance.username as string)
104-
.typeText(rdiInstancesListPage.AddRdiInstance.passwordInput, rdiInstance.password as string);
105-
await t.click(rdiInstancesListPage.AddRdiInstance.addInstanceButton);
101+
.typeText(rdiInstancesListPage.AddRdiInstanceDialog.rdiAliasInput, rdiInstance.alias)
102+
.typeText(rdiInstancesListPage.AddRdiInstanceDialog.urlInput, rdiInstance.url)
103+
.typeText(rdiInstancesListPage.AddRdiInstanceDialog.usernameInput, rdiInstance.username as string)
104+
.typeText(rdiInstancesListPage.AddRdiInstanceDialog.passwordInput, rdiInstance.password as string);
105+
await t.click(rdiInstancesListPage.AddRdiInstanceDialog.addInstanceButton);
106106
const addRdiInstance = await rdiInstancesListPage.getRdiInstanceValuesByIndex(0);
107107

108108
await t.expect(addRdiInstance.alias).eql(rdiInstance.alias, 'added alias is not corrected');
@@ -170,20 +170,20 @@ test('Verify that user has the same sorting if db name is changed', async t => {
170170
let actualDatabaseList = await rdiInstancesListPage.getAllRdiNames();
171171
await rdiInstancesListPage.compareInstances(actualDatabaseList, sortedByAliasType);
172172
// Change DB name insides of sorted list
173-
await rdiInstancesListPage.editRdiByName(rdiInstance.alias);
173+
await rdiInstancesListPage.clickEditRdiByName(rdiInstance.alias);
174174
// Verify that inputs info is displayed on Edit RDI panel
175-
await t.expect(rdiInstancesListPage.AddRdiInstance.urlInput.getAttribute('placeholder')).eql('Enter the RDI host IP as: https://[IP-Address]', 'Invalid placeholder for URL input');
176-
await t.hover(rdiInstancesListPage.AddRdiInstance.urlInputInfoIcon);
175+
await t.expect(rdiInstancesListPage.AddRdiInstanceDialog.urlInput.getAttribute('placeholder')).eql('Enter the RDI host IP as: https://[IP-Address]', 'Invalid placeholder for URL input');
176+
await t.hover(rdiInstancesListPage.AddRdiInstanceDialog.urlInputInfoIcon);
177177
await browserActions.verifyTooltipContainsText(urlTooltipText, true);
178-
await t.expect(rdiInstancesListPage.AddRdiInstance.usernameInput.getAttribute('placeholder')).eql('Enter the RDI Redis username', 'Invalid placeholder for Username input');
179-
await t.hover(rdiInstancesListPage.AddRdiInstance.usernameInputInfoIcon);
178+
await t.expect(rdiInstancesListPage.AddRdiInstanceDialog.usernameInput.getAttribute('placeholder')).eql('Enter the RDI Redis username', 'Invalid placeholder for Username input');
179+
await t.hover(rdiInstancesListPage.AddRdiInstanceDialog.usernameInputInfoIcon);
180180
await browserActions.verifyTooltipContainsText(usernameTooltipText, true);
181-
await t.expect(rdiInstancesListPage.AddRdiInstance.passwordInput.getAttribute('placeholder')).eql('Enter the RDI Redis password', 'Invalid placeholder for Password input');
182-
await t.hover(rdiInstancesListPage.AddRdiInstance.passwordInputInfoIcon);
181+
await t.expect(rdiInstancesListPage.AddRdiInstanceDialog.passwordInput.getAttribute('placeholder')).eql('Enter the RDI Redis password', 'Invalid placeholder for Password input');
182+
await t.hover(rdiInstancesListPage.AddRdiInstanceDialog.passwordInputInfoIcon);
183183
await browserActions.verifyTooltipContainsText(passwordTooltipText, true);
184184

185-
await t.typeText(rdiInstancesListPage.AddRdiInstance.rdiAliasInput, newAliasName, { replace: true });
186-
await t.click(rdiInstancesListPage.AddRdiInstance.addInstanceButton);
185+
await t.typeText(rdiInstancesListPage.AddRdiInstanceDialog.rdiAliasInput, newAliasName, { replace: true });
186+
await t.click(rdiInstancesListPage.AddRdiInstanceDialog.addInstanceButton);
187187

188188
rdiInstance.alias = newAliasName;
189189
const addRdiInstance = await rdiInstancesListPage.getRdiInstanceValuesByIndex(1);
@@ -203,10 +203,10 @@ test('Verify that button is displayed if user does not enter all mandatory infor
203203
'URL'
204204
];
205205

206-
await t.click(rdiInstancesListPage.rdiInstanceButton);
207-
await t.typeText(rdiInstancesListPage.AddRdiInstance.rdiAliasInput, rdiInstance.alias);
206+
await t.click(rdiInstancesListPage.addRdiInstanceButton);
207+
await t.typeText(rdiInstancesListPage.AddRdiInstanceDialog.rdiAliasInput, rdiInstance.alias);
208208

209-
await t.click(rdiInstancesListPage.AddRdiInstance.addInstanceButton);
209+
await t.click(rdiInstancesListPage.AddRdiInstanceDialog.addInstanceButton);
210210

211211
for (const text of tooltipText) {
212212
await browserActions.verifyTooltipContainsText(text, true);
@@ -219,8 +219,8 @@ test('Verify that user can see the Redis Data Integration message on the empty R
219219
await t.expect(rdiInstancesListPage.emptyRdiList.withText(noInstancesMessage).exists).ok('Empty RDI page message not displayed');
220220

221221
await t.click(rdiInstancesListPage.addRdiFromEmptyListBtn);
222-
await t.expect(rdiInstancesListPage.AddRdiInstance.connectToRdiForm.exists).ok('Add rdi form not opened');
223-
await t.click(rdiInstancesListPage.AddRdiInstance.cancelInstanceBtn);
222+
await t.expect(rdiInstancesListPage.AddRdiInstanceDialog.connectToRdiForm.exists).ok('Add rdi form not opened');
223+
await t.click(rdiInstancesListPage.AddRdiInstanceDialog.cancelInstanceBtn);
224224

225225
await t.click(rdiInstancesListPage.quickstartBtn);
226226
await Common.checkURL(externalPageLink);

tests/e2e/tests/web/critical-path/rdi/navigation.e2e.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -105,5 +105,5 @@ test('Verify that confirmation message is displayed, if there are unsaved change
105105
await rdiInstancePage.setTemplateDropdownValue(RdiTemplateDatabaseType.MySql);
106106
await t.click(rdiInstancePage.NavigationPanel.myRedisDBButton);
107107
await t.click(rdiInstancePage.proceedNavigateDialog);
108-
await t.expect(rdiInstancesListPage.rdiInstanceButton.exists).ok('the user is not navigated to the panel');
108+
await t.expect(rdiInstancesListPage.addRdiInstanceButton.exists).ok('the user is not navigated to the panel');
109109
});

tests/e2e/tests/web/critical-path/rdi/rdi-recommendation.e2e.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,5 +33,5 @@ test('Verify that rdi recommendation is displayed for oss cluster', async() => {
3333
await t.expect(tab.getRecommendationByName(rdiRecommendation).exists).ok('Redis Version recommendation not displayed');
3434
await tab.clickOnNavigationButton(rdiRecommendation);
3535

36-
await t.expect(rdiInstancesListPage.rdiInstanceButton.exists).ok('Navigation for recommendation is not correct');
36+
await t.expect(rdiInstancesListPage.addRdiInstanceButton.exists).ok('Navigation for recommendation is not correct');
3737
});

0 commit comments

Comments
 (0)