1
1
import { expect } from 'chai'
2
2
import { describe , it } from 'mocha'
3
- import {
4
- before ,
5
- after ,
6
- afterEach ,
7
- EditorView ,
8
- } from 'vscode-extension-tester'
3
+ import { before , after , afterEach , EditorView } from 'vscode-extension-tester'
9
4
import {
10
5
HashKeyDetailsView ,
11
6
TreeView ,
@@ -16,9 +11,13 @@ import {
16
11
AddStringKeyView ,
17
12
JsonKeyDetailsView ,
18
13
AddJsonKeyView ,
14
+ CliViewPanel ,
19
15
} from '@e2eSrc/page-objects/components'
20
16
import { Common } from '@e2eSrc/helpers/Common'
21
- import { DatabaseAPIRequests , KeyAPIRequests } from '@e2eSrc/helpers/api'
17
+ import {
18
+ DatabaseAPIRequests ,
19
+ KeyAPIRequests ,
20
+ } from '@e2eSrc/helpers/api'
22
21
import { Config } from '@e2eSrc/helpers/Conf'
23
22
import {
24
23
HashKeyParameters ,
@@ -36,6 +35,7 @@ import {
36
35
} from '@e2eSrc/helpers/common-actions'
37
36
import { InnerViews } from '@e2eSrc/page-objects/components/WebView'
38
37
import { KeyTypesShort } from '@e2eSrc/helpers/constants'
38
+ import { CommonDriverExtension } from '@e2eSrc/helpers/CommonDriverExtension'
39
39
40
40
let keyName : string
41
41
const keyValueBefore = 'ValueBeforeEdit!'
@@ -51,6 +51,9 @@ describe('Edit Key values verification', () => {
51
51
let keyDetailsView : KeyDetailsView
52
52
let addStringKeyView : AddStringKeyView
53
53
let addJsonKeyView : AddJsonKeyView
54
+ let cliViewPanel : CliViewPanel
55
+
56
+ let keyNames : string [ ] = [ ]
54
57
55
58
before ( async ( ) => {
56
59
hashKeyDetailsView = new HashKeyDetailsView ( )
@@ -62,6 +65,7 @@ describe('Edit Key values verification', () => {
62
65
keyDetailsView = new KeyDetailsView ( )
63
66
addStringKeyView = new AddStringKeyView ( )
64
67
addJsonKeyView = new AddJsonKeyView ( )
68
+ cliViewPanel = new CliViewPanel ( )
65
69
66
70
await DatabasesActions . acceptLicenseTermsAndAddDatabaseApi (
67
71
Config . ossStandaloneConfig ,
@@ -77,6 +81,12 @@ describe('Edit Key values verification', () => {
77
81
keyName ,
78
82
Config . ossStandaloneConfig . databaseName ,
79
83
)
84
+ for ( const key of keyNames ) {
85
+ await KeyAPIRequests . deleteKeyIfExistsApi (
86
+ key ,
87
+ Config . ossStandaloneConfig . databaseName ,
88
+ )
89
+ }
80
90
await new EditorView ( ) . closeAllEditors ( )
81
91
await NotificationActions . closeAllNotifications ( )
82
92
await keyDetailsView . switchToInnerViewFrame ( InnerViews . TreeInnerView )
@@ -142,10 +152,7 @@ describe('Edit Key values verification', () => {
142
152
// Open key details iframe
143
153
await KeyDetailsActions . openKeyDetailsByKeyNameInIframe ( keyName )
144
154
145
- await sortedSetKeyDetailsView . editSortedSetKeyValue (
146
- scoreAfter ,
147
- '0' ,
148
- )
155
+ await sortedSetKeyDetailsView . editSortedSetKeyValue ( scoreAfter , '0' )
149
156
let resultValue = await (
150
157
await sortedSetKeyDetailsView . getElements (
151
158
sortedSetKeyDetailsView . scoreSortedSetFieldsList ,
@@ -271,4 +278,47 @@ describe('Edit Key values verification', () => {
271
278
) ,
272
279
) . eql ( jsonValueAfter , 'Edited JSON value is incorrect' )
273
280
} )
281
+
282
+ it ( 'Verify that user can see the message that data type not currently supported when open any of the unsupported data types' , async function ( ) {
283
+ keyNames = [
284
+ `stream-${ Common . generateWord ( 10 ) } ` ,
285
+ `graph-${ Common . generateWord ( 10 ) } ` ,
286
+ `timeSeries-${ Common . generateWord ( 10 ) } ` ,
287
+ `bloom-${ Common . generateWord ( 10 ) } ` ,
288
+ ]
289
+ const unsupportedTypeMessage = 'This data type is not currently supported.'
290
+
291
+ // Open CLI and create unsupported keys
292
+ await treeView . openCliByDatabaseName (
293
+ Config . ossStandaloneConfig . databaseName ,
294
+ )
295
+ await treeView . switchBack ( )
296
+ await CommonDriverExtension . driverSleep ( 1000 )
297
+ await cliViewPanel . switchToInnerViewFrame ( InnerViews . CliInnerView )
298
+ // Create Stream key
299
+ await cliViewPanel . executeCommand ( `XADD ${ keyNames [ 0 ] } * 'field' 'value'` )
300
+ // Create Graph key
301
+ await cliViewPanel . executeCommand ( `GRAPH.QUERY ${ keyNames [ 1 ] } "CREATE ()"` )
302
+ // Create TimeSeries key
303
+ await cliViewPanel . executeCommand ( `TS.CREATE ${ keyNames [ 2 ] } ` )
304
+ // Create BloomFilter key
305
+ await cliViewPanel . executeCommand ( `BF.RESERVE ${ keyNames [ 3 ] } 0.001 50` )
306
+
307
+ // Verify that unsupported key type message is displayed
308
+ for ( const key of keyNames ) {
309
+ await treeView . switchBack ( )
310
+ await keyDetailsView . switchToInnerViewFrame ( InnerViews . TreeInnerView )
311
+ // Refresh database
312
+ await treeView . refreshDatabaseByName (
313
+ Config . ossStandaloneConfig . databaseName ,
314
+ )
315
+ await KeyDetailsActions . openKeyDetailsByKeyNameInIframe ( key )
316
+ expect (
317
+ await keyDetailsView . getElementText ( keyDetailsView . unsupportedTypeMessage ) ,
318
+ ) . contains (
319
+ unsupportedTypeMessage ,
320
+ 'Unsupported key type message not displayed' ,
321
+ )
322
+ }
323
+ } )
274
324
} )
0 commit comments