@@ -2,6 +2,7 @@ import { t } from 'testcafe';
2
2
import { AddNewDatabaseParameters } from '../../pageObjects/components/myRedisDatabase/add-redis-database' ;
3
3
import {
4
4
HashKeyParameters ,
5
+ StringKeyParameters ,
5
6
ListKeyParameters ,
6
7
SetKeyParameters ,
7
8
SortedSetKeyParameters ,
@@ -28,8 +29,11 @@ export class APIKeyRequests {
28
29
databaseParameters . databaseName
29
30
) ;
30
31
const requestBody = {
31
- keyName : keyParameters . keyName ,
32
+ keyName : Buffer . from ( keyParameters . keyName , 'utf-8' ) ,
32
33
fields : keyParameters . fields
34
+ . map ( ( fields ) => ( { ...fields ,
35
+ field : Buffer . from ( fields . field , 'utf-8' ) ,
36
+ value : Buffer . from ( fields . value , 'utf-8' ) } ) )
33
37
} ;
34
38
const response = await sendPostRequest (
35
39
`/databases/${ databaseId } /hash?encoding=buffer` ,
@@ -54,14 +58,21 @@ export class APIKeyRequests {
54
58
databaseParameters . databaseName
55
59
) ;
56
60
const requestBody = {
57
- keyName : keyParameters . keyName ,
61
+ keyName : Buffer . from ( keyParameters . keyName , 'utf-8' ) ,
58
62
entries : keyParameters . entries
63
+ . map ( ( member ) =>
64
+ ( {
65
+ ...member ,
66
+ fields : member . fields . map ( ( { name, value } ) => ( {
67
+ name : Buffer . from ( name , 'utf-8' ) ,
68
+ value : Buffer . from ( value , 'utf-8' )
69
+ } ) )
70
+ } ) )
59
71
} ;
60
72
const response = await sendPostRequest (
61
73
`/databases/${ databaseId } /streams?encoding=buffer` ,
62
74
requestBody
63
75
) ;
64
-
65
76
await t
66
77
. expect ( response . status )
67
78
. eql ( 201 , 'The creation of new Stream key request failed' ) ;
@@ -80,8 +91,9 @@ export class APIKeyRequests {
80
91
databaseParameters . databaseName
81
92
) ;
82
93
const requestBody = {
83
- keyName : keyParameters . keyName ,
94
+ keyName : Buffer . from ( keyParameters . keyName , 'utf-8' ) ,
84
95
members : keyParameters . members
96
+ . map ( ( member ) => ( Buffer . from ( member , 'utf-8' ) ) )
85
97
} ;
86
98
const response = await sendPostRequest (
87
99
`/databases/${ databaseId } /set?encoding=buffer` ,
@@ -106,8 +118,9 @@ export class APIKeyRequests {
106
118
databaseParameters . databaseName
107
119
) ;
108
120
const requestBody = {
109
- keyName : keyParameters . keyName ,
121
+ keyName : Buffer . from ( keyParameters . keyName , 'utf-8' ) ,
110
122
members : keyParameters . members
123
+ . map ( ( member ) => ( { ...member , name : Buffer . from ( member . name , 'utf-8' ) } ) )
111
124
} ;
112
125
const response = await sendPostRequest (
113
126
`/databases/${ databaseId } /zSet?encoding=buffer` ,
@@ -132,8 +145,8 @@ export class APIKeyRequests {
132
145
databaseParameters . databaseName
133
146
) ;
134
147
const requestBody = {
135
- keyName : keyParameters . keyName ,
136
- element : keyParameters . element
148
+ keyName : Buffer . from ( keyParameters . keyName , 'utf-8' ) ,
149
+ element : Buffer . from ( keyParameters . element , 'utf-8' )
137
150
} ;
138
151
const response = await sendPostRequest (
139
152
`/databases/${ databaseId } /list?encoding=buffer` ,
@@ -145,10 +158,36 @@ export class APIKeyRequests {
145
158
. eql ( 201 , 'The creation of new List key request failed' ) ;
146
159
}
147
160
161
+ /**
162
+ * Add String key
163
+ * @param keyParameters The key parameters
164
+ * @param databaseParameters The database parameters
165
+ */
166
+ async addStringKeyApi (
167
+ keyParameters : StringKeyParameters ,
168
+ databaseParameters : AddNewDatabaseParameters
169
+ ) : Promise < void > {
170
+ const databaseId = await databaseAPIRequests . getDatabaseIdByName (
171
+ databaseParameters . databaseName
172
+ ) ;
173
+ const requestBody = {
174
+ keyName : Buffer . from ( keyParameters . keyName , 'utf-8' ) ,
175
+ value : Buffer . from ( keyParameters . value , 'utf-8' )
176
+ } ;
177
+ const response = await sendPostRequest (
178
+ `/databases/${ databaseId } /string?encoding=buffer` ,
179
+ requestBody
180
+ ) ;
181
+
182
+ await t
183
+ . expect ( response . status )
184
+ . eql ( 201 , 'The creation of new string key request failed' ) ;
185
+ }
186
+
148
187
/**
149
188
* Search Key by name
150
189
* @param keyName The key name
151
- * @param databaseParameters The database parameters
190
+ * @param databaseName The database name
152
191
*/
153
192
async searchKeyByNameApi (
154
193
keyName : string ,
@@ -172,7 +211,7 @@ export class APIKeyRequests {
172
211
/**
173
212
* Delete Key by name if it exists
174
213
* @param keyName The key name
175
- * @param databaseParameters The database parameters
214
+ * @param databaseName The database name
176
215
*/
177
216
async deleteKeyByNameApi (
178
217
keyName : string ,
0 commit comments