Skip to content

Commit b5be220

Browse files
Merge pull request #2453 from RedisInsight/e2e/feature/RI-4617-sign-in-users/compressor
add api key adding
2 parents 52d3783 + e95fb9c commit b5be220

File tree

6 files changed

+44
-6
lines changed

6 files changed

+44
-6
lines changed

redisinsight/ui/src/pages/home/components/HomeHeader/HomeHeader.spec.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ describe('HomeHeader', () => {
3131
it('should open import dbs dialog', () => {
3232
render(<HomeHeader {...instance(mockedProps)} />)
3333

34-
fireEvent.click(screen.getByTestId('import-dbs-btn'))
34+
fireEvent.click(screen.getByTestId('import-from-file-btn'))
3535

3636
expect(screen.getByTestId('import-dbs-dialog')).toBeInTheDocument()
3737
})
@@ -42,7 +42,7 @@ describe('HomeHeader', () => {
4242

4343
render(<HomeHeader {...instance(mockedProps)} />)
4444

45-
fireEvent.click(screen.getByTestId('import-dbs-btn'))
45+
fireEvent.click(screen.getByTestId('import-from-file-btn'))
4646

4747
expect(sendEventTelemetry).toBeCalledWith({
4848
event: TelemetryEvent.CONFIG_DATABASES_REDIS_IMPORT_CLICKED

redisinsight/ui/src/pages/home/components/HomeHeader/HomeHeader.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -144,7 +144,7 @@ const HomeHeader = ({ onAddInstance, direction }: Props) => {
144144
onClick={handleClickImportDbBtn}
145145
className={styles.importDatabasesBtn}
146146
size="m"
147-
data-testid="import-dbs-btn"
147+
data-testid="import-from-file-btn"
148148
>
149149
<EuiIcon type="importAction" />
150150
</EuiButton>

tests/e2e/pageObjects/components/myRedisDatabase/add-redis-database.ts

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,11 +57,15 @@ export class AddRedisDatabase {
5757
// DROPDOWNS
5858
caCertField = Selector('[data-testid=select-ca-cert]', { timeout: 500 });
5959
clientCertField = Selector('[data-testid=select-cert]', { timeout: 500 });
60+
selectCompressor = Selector('[data-testid=select-compressor]', { timeout: 1000 });
6061
// CHECKBOXES
6162
useSSHCheckbox = Selector('[data-testid=use-ssh]~div', { timeout: 500 });
63+
dataCompressorCheckbox = Selector('[data-testid=showCompressor] ~ label');
6264
// RADIO BUTTONS
6365
sshPasswordRadioBtn = Selector('#password~div', { timeout: 500 });
6466
sshPrivateKeyRadioBtn = Selector('#privateKey~div', { timeout: 500 });
67+
// LABELS
68+
dataCompressorLabel = Selector('[data-testid=showCompressor] ~ label', { timeout: 1000 });
6569

6670
/**
6771
* Adding a new redis database
@@ -256,6 +260,20 @@ export class AddRedisDatabase {
256260
await t.typeText(this.databaseAliasInput, parameters.ossClusterDatabaseName, { replace: true, paste: true });
257261
}
258262
}
263+
264+
/**
265+
* set copressor value in dropdown
266+
* @param compressor - compressor value
267+
* @param value - checkbox value
268+
*/
269+
async setCompressorValue(compressor: string){
270+
271+
if(!await this.selectCompressor.exists) {
272+
await t.click(this.dataCompressorLabel);
273+
}
274+
await t.click(this.selectCompressor);
275+
await t.click(Selector(`[id="${compressor}"]`));
276+
}
259277
}
260278

261279
/**

tests/e2e/pageObjects/my-redis-databases-page.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ export class MyRedisDatabasePage extends BasePage {
3131
sortByHostAndPort = Selector('span').withAttribute('title', 'Host:Port');
3232
sortByConnectionType = Selector('span').withAttribute('title', 'Connection Type');
3333
sortByLastConnection = Selector('span').withAttribute('title', 'Last connection');
34-
importDatabasesBtn = Selector('[data-testid=import-dbs-btn]');
34+
importDatabasesBtn = Selector('[data-testid=import-from-file-btn]');
3535
submitImportBtn = Selector('[data-testid=submit-btn]');
3636
closeDialogBtn = Selector('[aria-label="Closes this modal window"]');
3737
okDialogBtn = Selector('[data-testid=ok-btn]');

tests/e2e/test-data/import-databases/rdm-full.json

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -189,6 +189,13 @@
189189
"db": "dsad",
190190
"result": "failed"
191191
},
192+
{
193+
"compressor": "Invalid",
194+
"host": "localhost",
195+
"port": 8102,
196+
"name": "rdmCompressorInvalid",
197+
"result": "partial"
198+
},
192199
{
193200
"host": "localhost",
194201
"port": 8102,

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

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ fixture `Export databases`
2828
test
2929
.before(async() => {
3030
await databaseHelper.acceptLicenseTerms();
31+
await databaseAPIRequests.deleteAllDatabasesApi();
3132
await databaseAPIRequests.addNewStandaloneDatabaseApi(ossStandaloneConfig);
3233
await databaseAPIRequests.addNewStandaloneDatabaseApi(ossStandaloneTlsConfig);
3334
await databaseAPIRequests.addNewOSSClusterDatabaseApi(ossClusterConfig);
@@ -36,12 +37,12 @@ test
3637
})
3738
.after(async() => {
3839
// Delete all databases
40+
fs.unlinkSync(joinPath(fileDownloadPath, foundExportedFiles[0]));
3941
await databaseAPIRequests.deleteStandaloneDatabaseApi(ossStandaloneConfig);
4042
await databaseAPIRequests.deleteStandaloneDatabaseApi(ossStandaloneTlsConfig);
4143
await databaseAPIRequests.deleteOSSClusterDatabaseApi(ossClusterConfig);
4244
await databaseAPIRequests.deleteAllDatabasesByConnectionTypeApi('SENTINEL');
4345
// Delete exported file
44-
fs.unlinkSync(joinPath(fileDownloadPath, foundExportedFiles[0]));
4546
})('Exporting Standalone, OSS Cluster, and Sentinel connection types', async t => {
4647
const databaseNames = [
4748
ossStandaloneConfig.databaseName,
@@ -50,6 +51,12 @@ test
5051
ossSentinelConfig.masters[1].alias
5152
];
5253

54+
const compressor = 'Brotli';
55+
56+
await databaseHelper.clickOnEditDatabaseByName(ossStandaloneConfig.databaseName);
57+
await myRedisDatabasePage.AddRedisDatabase.setCompressorValue(compressor);
58+
await t.click(myRedisDatabasePage.AddRedisDatabase.addRedisDatabaseButton);
59+
5360
// Select databases checkboxes
5461
await databasesActions.selectDatabasesByNames(databaseNames);
5562
// Export connections with passwords
@@ -72,7 +79,7 @@ test
7279

7380
const exportedData = {
7481
path: joinPath(fileDownloadPath, foundExportedFiles[0]),
75-
successNumber: 4,
82+
successNumber: databaseNames.length,
7683
dbImportedNames: databaseNames
7784
};
7885

@@ -82,9 +89,15 @@ test
8289
await t.click(myRedisDatabasePage.okDialogBtn);
8390
// Verify that user can import exported file with all datatypes and certificates
8491
await databasesActions.verifyDatabasesDisplayed(exportedData.dbImportedNames);
92+
8593
await databaseHelper.clickOnEditDatabaseByName(databaseNames[1]);
8694
await t.expect(myRedisDatabasePage.AddRedisDatabase.caCertField.textContent).contains('ca', 'CA certificate import incorrect');
8795
await t.expect(myRedisDatabasePage.AddRedisDatabase.clientCertField.textContent).contains('client', 'Client certificate import incorrect');
96+
await t.click(myRedisDatabasePage.AddRedisDatabase.cancelButton);
97+
98+
await databaseHelper.clickOnEditDatabaseByName(ossStandaloneConfig.databaseName);
99+
await t.expect(myRedisDatabasePage.AddRedisDatabase.selectCompressor.textContent).eql(compressor, 'Compressor import incorrect');
100+
88101
});
89102
test
90103
.before(async() => {

0 commit comments

Comments
 (0)