Skip to content

Commit 56ec036

Browse files
Merge pull request #2595 from RedisInsight/e2e/bugfix/add_module_verification
E2e/bugfix/add module verification
2 parents bb30d7a + daa1d0f commit 56ec036

File tree

7 files changed

+53
-54
lines changed

7 files changed

+53
-54
lines changed

tests/e2e/common-actions/databases-actions.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
import { Selector, t } from 'testcafe';
21
import * as fs from 'fs';
2+
import { Selector, t } from 'testcafe';
33
import { MyRedisDatabasePage } from '../pageObjects';
44
import { DatabaseAPIRequests } from '../helpers/api/api-database';
55

tests/e2e/helpers/api/api-database.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -203,6 +203,7 @@ export class DatabaseAPIRequests {
203203
*/
204204
async deleteAllDatabasesApi(): Promise<void> {
205205
const allDatabases = await this.getAllDatabases();
206+
console.log(`common db count is "${allDatabases}"`);
206207
if (allDatabases.length > 0) {
207208
const databaseIds: string[] = [];
208209
for (let i = 0; i < allDatabases.length; i++) {

tests/e2e/tests/critical-path/database/export-databases.e2e.ts

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -38,10 +38,8 @@ test
3838
.after(async() => {
3939
// Delete all databases
4040
fs.unlinkSync(joinPath(fileDownloadPath, foundExportedFiles[0]));
41-
await databaseAPIRequests.deleteStandaloneDatabaseApi(ossStandaloneConfig);
42-
await databaseAPIRequests.deleteStandaloneDatabaseApi(ossStandaloneTlsConfig);
43-
await databaseAPIRequests.deleteOSSClusterDatabaseApi(ossClusterConfig);
44-
await databaseAPIRequests.deleteAllDatabasesByConnectionTypeApi('SENTINEL');
41+
await databaseAPIRequests.deleteAllDatabasesApi();
42+
// await databaseAPIRequests.deleteOSSClusterDatabaseApi(ossClusterConfig);
4543
// Delete exported file
4644
})('Exporting Standalone, OSS Cluster, and Sentinel connection types', async t => {
4745
const databaseNames = [
@@ -71,10 +69,7 @@ test
7169
await t.expect(foundExportedFiles.length).gt(0, 'The Exported file not saved');
7270

7371
// Delete databases
74-
await databaseAPIRequests.deleteStandaloneDatabaseApi(ossStandaloneConfig);
75-
await databaseAPIRequests.deleteStandaloneDatabaseApi(ossStandaloneTlsConfig);
76-
await databaseAPIRequests.deleteOSSClusterDatabaseApi(ossClusterConfig);
77-
await databaseAPIRequests.deleteAllDatabasesByConnectionTypeApi('SENTINEL');
72+
await databaseAPIRequests.deleteAllDatabasesApi();
7873
await myRedisDatabasePage.reloadPage();
7974

8075
const exportedData = {
@@ -90,6 +85,11 @@ test
9085
// Verify that user can import exported file with all datatypes and certificates
9186
await databasesActions.verifyDatabasesDisplayed(exportedData.dbImportedNames);
9287

88+
const modulesDbRedisStackIcon = myRedisDatabasePage.dbNameList.child('span').withExactText(ossStandaloneConfig.databaseName).parent('tr')
89+
.find(myRedisDatabasePage.cssRedisStackIcon);
90+
// Verify that db has redis stack icon
91+
await t.expect(modulesDbRedisStackIcon.exists).ok('module icon is displayed');
92+
9393
await databaseHelper.clickOnEditDatabaseByName(databaseNames[1]);
9494
await t.expect(myRedisDatabasePage.AddRedisDatabase.caCertField.textContent).contains('ca', 'CA certificate import incorrect');
9595
await t.expect(myRedisDatabasePage.AddRedisDatabase.clientCertField.textContent).contains('client', 'Client certificate import incorrect');

tests/e2e/tests/critical-path/database/import-databases.e2e.ts

Lines changed: 36 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -90,47 +90,46 @@ fixture `Import databases`
9090
// Delete all existing connections
9191
await databaseAPIRequests.deleteAllDatabasesApi();
9292
});
93-
test
94-
.before(async() => {
95-
await databaseAPIRequests.deleteAllDatabasesApi();
96-
await databaseHelper.acceptLicenseTerms();
97-
await databaseAPIRequests.addNewStandaloneDatabaseApi(ossStandaloneConfig);
98-
await myRedisDatabasePage.reloadPage();
99-
})('Connection import modal window', async t => {
100-
const tooltipText = 'Import Database Connections';
101-
const defaultText = 'Select or drag and drop a file';
102-
const parseFailedMsg = 'Failed to add database connections';
103-
const parseFailedMsg2 = `Unable to parse ${fileNames.racompassInvalidJson}`;
93+
test.before(async() => {
94+
await databaseAPIRequests.deleteAllDatabasesApi();
95+
await databaseHelper.acceptLicenseTerms();
96+
await databaseAPIRequests.addNewStandaloneDatabaseApi(ossStandaloneConfig);
97+
await myRedisDatabasePage.reloadPage();
98+
})('Connection import modal window', async t => {
99+
const tooltipText = 'Import Database Connections';
100+
const defaultText = 'Select or drag and drop a file';
101+
const parseFailedMsg = 'Failed to add database connections';
102+
const parseFailedMsg2 = `Unable to parse ${fileNames.racompassInvalidJson}`;
104103

105-
// Verify that user can see the “Import Database Connections” tooltip
106-
await t.expect(myRedisDatabasePage.importDatabasesBtn.visible).ok('The import databases button not displayed');
107-
await t.hover(myRedisDatabasePage.importDatabasesBtn);
108-
await t.expect(browserPage.tooltip.innerText).contains(tooltipText, 'The tooltip message not displayed/correct');
104+
// Verify that user can see the “Import Database Connections” tooltip
105+
await t.expect(myRedisDatabasePage.importDatabasesBtn.visible).ok('The import databases button not displayed');
106+
await t.hover(myRedisDatabasePage.importDatabasesBtn);
107+
await t.expect(browserPage.tooltip.innerText).contains(tooltipText, 'The tooltip message not displayed/correct');
109108

110-
// Verify that Import dialogue is not closed when clicking any area outside the box
111-
await t.click(myRedisDatabasePage.importDatabasesBtn);
112-
await t.expect(myRedisDatabasePage.importDbDialog.exists).ok('Import Database Connections dialog not opened');
113-
await t.click(myRedisDatabasePage.NavigationPanel.myRedisDBButton);
114-
await t.expect(myRedisDatabasePage.importDbDialog.exists).ok('Import Database Connections dialog not displayed');
109+
// Verify that Import dialogue is not closed when clicking any area outside the box
110+
await t.click(myRedisDatabasePage.importDatabasesBtn);
111+
await t.expect(myRedisDatabasePage.importDbDialog.exists).ok('Import Database Connections dialog not opened');
112+
await t.click(myRedisDatabasePage.NavigationPanel.myRedisDBButton);
113+
await t.expect(myRedisDatabasePage.importDbDialog.exists).ok('Import Database Connections dialog not displayed');
115114

116-
// Verify that user see the message when parse error appears
117-
await t
118-
.setFilesToUpload(myRedisDatabasePage.importDatabaseInput, [filePathes.racompassInvalidJsonPath])
119-
.click(myRedisDatabasePage.submitImportBtn)
120-
.expect(myRedisDatabasePage.failedImportMessage.exists).ok('Failed to add database message not displayed')
121-
.expect(myRedisDatabasePage.failedImportMessage.textContent).contains(parseFailedMsg)
122-
.expect(myRedisDatabasePage.failedImportMessage.textContent).contains(parseFailedMsg2);
115+
// Verify that user see the message when parse error appears
116+
await t
117+
.setFilesToUpload(myRedisDatabasePage.importDatabaseInput, [filePathes.racompassInvalidJsonPath])
118+
.click(myRedisDatabasePage.submitImportBtn)
119+
.expect(myRedisDatabasePage.failedImportMessage.exists).ok('Failed to add database message not displayed')
120+
.expect(myRedisDatabasePage.failedImportMessage.textContent).contains(parseFailedMsg)
121+
.expect(myRedisDatabasePage.failedImportMessage.textContent).contains(parseFailedMsg2);
123122

124-
// Verify that user can remove file from import input
125-
await t.click(myRedisDatabasePage.closeDialogBtn);
126-
await t.click(myRedisDatabasePage.importDatabasesBtn);
127-
await t.setFilesToUpload(myRedisDatabasePage.importDatabaseInput, [rdmData.path]);
128-
// update after resolving testcafe Native Automation mode limitations
129-
// await t.expect(myRedisDatabasePage.importDbDialog.textContent).contains(fileNames.rdmFullJson, 'Filename not displayed in import input');
130-
// Click on remove button
131-
await t.click(myRedisDatabasePage.removeImportedFileBtn);
132-
await t.expect(myRedisDatabasePage.importDbDialog.textContent).contains(defaultText, 'File not removed from import input');
133-
});
123+
// Verify that user can remove file from import input
124+
await t.click(myRedisDatabasePage.closeDialogBtn);
125+
await t.click(myRedisDatabasePage.importDatabasesBtn);
126+
await t.setFilesToUpload(myRedisDatabasePage.importDatabaseInput, [rdmData.path]);
127+
// update after resolving testcafe Native Automation mode limitations
128+
// await t.expect(myRedisDatabasePage.importDbDialog.textContent).contains(fileNames.rdmFullJson, 'Filename not displayed in import input');
129+
// Click on remove button
130+
await t.click(myRedisDatabasePage.removeImportedFileBtn);
131+
await t.expect(myRedisDatabasePage.importDbDialog.textContent).contains(defaultText, 'File not removed from import input');
132+
});
134133
test('Connection import from JSON', async t => {
135134
// Verify that user can import database with mandatory/optional fields
136135
await databasesActions.importDatabase(rdmData);

tests/e2e/tests/critical-path/memory-efficiency/recommendations.e2e.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -159,7 +159,7 @@ test
159159
await recommendationsActions.voteForRecommendation(redisVersionRecommendation, usefulVoteOption);
160160
await recommendationsActions.verifyVoteIsSelected(redisVersionRecommendation, usefulVoteOption);
161161
});
162-
test
162+
test.skip
163163
.before(async t => {
164164
await databaseHelper.acceptLicenseTermsAndAddDatabaseApi(ossStandaloneConfig);
165165
keyName = `recomKey-${Common.generateWord(10)}`;

tests/e2e/tests/critical-path/url-handling/url-handling.e2e.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { commonUrl, ossStandaloneConfig, ossStandaloneRedisGears } from '../../../helpers/conf';
1+
import { commonUrl, ossStandaloneRedisGears } from '../../../helpers/conf';
22
import { rte } from '../../../helpers/constants';
33
import { DatabaseAPIRequests } from '../../../helpers/api/api-database';
44
import { Common } from '../../../helpers/common';
@@ -17,7 +17,6 @@ let { host, port, databaseName, databaseUsername = '', databasePassword = '' } =
1717
const redisConnect = 'redisinsight://databases/connect';
1818

1919
fixture `Add DB from SM`
20-
.only
2120
.meta({ type: 'critical_path', rte: rte.none })
2221
.afterEach(async() => {
2322
// Delete all existing connections

tests/e2e/tests/smoke/database/autodiscover-db.e2e.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -40,11 +40,11 @@ test
4040
await t.expect(myRedisDatabasePage.redisStackIcon.visible).ok('Redis Stack icon not found for RE Cloud db with all 5 modules');
4141
});
4242
test
43-
.meta({ rte: rte.reCloud })
44-
.after(async() => {
45-
// await deleteDatabase(databaseName);
46-
})('Verify that user can add a subscription via auto-discover flow', async t => {
47-
// Verify that user can see the Cloud auto-discovery option selected by default when switching to the auto-discovery of databases
43+
.meta({ rte: rte.reCloud })('Verify that user can add a subscription via auto-discover flow', async t => {
44+
await myRedisDatabasePage.AddRedisDatabase.addAutodiscoverRECloudDatabase(
45+
cloudDatabaseConfig.accessKey,
46+
cloudDatabaseConfig.secretKey
47+
);
4848
await t.click(
4949
myRedisDatabasePage.AddRedisDatabase.addRedisDatabaseButton);
5050
await t.expect(autoDiscoverREDatabases.title.withExactText('Redis Enterprise Cloud Subscriptions').exists)

0 commit comments

Comments
 (0)