@@ -13,8 +13,8 @@ suite('Map', () => {
13
13
let map = new LinkedMap < string , string > ( ) ;
14
14
map . set ( 'ak' , 'av' ) ;
15
15
map . set ( 'bk' , 'bv' ) ;
16
- assert . deepStrictEqual ( map . keys ( ) , [ 'ak' , 'bk' ] ) ;
17
- assert . deepStrictEqual ( map . values ( ) , [ 'av' , 'bv' ] ) ;
16
+ assert . deepStrictEqual ( [ ... map . keys ( ) ] , [ 'ak' , 'bk' ] ) ;
17
+ assert . deepStrictEqual ( [ ... map . values ( ) ] , [ 'av' , 'bv' ] ) ;
18
18
assert . equal ( map . first , 'av' ) ;
19
19
assert . equal ( map . last , 'bv' ) ;
20
20
} ) ;
@@ -23,34 +23,34 @@ suite('Map', () => {
23
23
let map = new LinkedMap < string , string > ( ) ;
24
24
map . set ( 'ak' , 'av' ) ;
25
25
map . set ( 'ak' , 'av' , Touch . AsOld ) ;
26
- assert . deepStrictEqual ( map . keys ( ) , [ 'ak' ] ) ;
27
- assert . deepStrictEqual ( map . values ( ) , [ 'av' ] ) ;
26
+ assert . deepStrictEqual ( [ ... map . keys ( ) ] , [ 'ak' ] ) ;
27
+ assert . deepStrictEqual ( [ ... map . values ( ) ] , [ 'av' ] ) ;
28
28
} ) ;
29
29
30
30
test ( 'LinkedMap - Touch New one' , ( ) => {
31
31
let map = new LinkedMap < string , string > ( ) ;
32
32
map . set ( 'ak' , 'av' ) ;
33
33
map . set ( 'ak' , 'av' , Touch . AsNew ) ;
34
- assert . deepStrictEqual ( map . keys ( ) , [ 'ak' ] ) ;
35
- assert . deepStrictEqual ( map . values ( ) , [ 'av' ] ) ;
34
+ assert . deepStrictEqual ( [ ... map . keys ( ) ] , [ 'ak' ] ) ;
35
+ assert . deepStrictEqual ( [ ... map . values ( ) ] , [ 'av' ] ) ;
36
36
} ) ;
37
37
38
38
test ( 'LinkedMap - Touch Old two' , ( ) => {
39
39
let map = new LinkedMap < string , string > ( ) ;
40
40
map . set ( 'ak' , 'av' ) ;
41
41
map . set ( 'bk' , 'bv' ) ;
42
42
map . set ( 'bk' , 'bv' , Touch . AsOld ) ;
43
- assert . deepStrictEqual ( map . keys ( ) , [ 'bk' , 'ak' ] ) ;
44
- assert . deepStrictEqual ( map . values ( ) , [ 'bv' , 'av' ] ) ;
43
+ assert . deepStrictEqual ( [ ... map . keys ( ) ] , [ 'bk' , 'ak' ] ) ;
44
+ assert . deepStrictEqual ( [ ... map . values ( ) ] , [ 'bv' , 'av' ] ) ;
45
45
} ) ;
46
46
47
47
test ( 'LinkedMap - Touch New two' , ( ) => {
48
48
let map = new LinkedMap < string , string > ( ) ;
49
49
map . set ( 'ak' , 'av' ) ;
50
50
map . set ( 'bk' , 'bv' ) ;
51
51
map . set ( 'ak' , 'av' , Touch . AsNew ) ;
52
- assert . deepStrictEqual ( map . keys ( ) , [ 'bk' , 'ak' ] ) ;
53
- assert . deepStrictEqual ( map . values ( ) , [ 'bv' , 'av' ] ) ;
52
+ assert . deepStrictEqual ( [ ... map . keys ( ) ] , [ 'bk' , 'ak' ] ) ;
53
+ assert . deepStrictEqual ( [ ... map . values ( ) ] , [ 'bv' , 'av' ] ) ;
54
54
} ) ;
55
55
56
56
test ( 'LinkedMap - Touch Old from middle' , ( ) => {
@@ -59,8 +59,8 @@ suite('Map', () => {
59
59
map . set ( 'bk' , 'bv' ) ;
60
60
map . set ( 'ck' , 'cv' ) ;
61
61
map . set ( 'bk' , 'bv' , Touch . AsOld ) ;
62
- assert . deepStrictEqual ( map . keys ( ) , [ 'bk' , 'ak' , 'ck' ] ) ;
63
- assert . deepStrictEqual ( map . values ( ) , [ 'bv' , 'av' , 'cv' ] ) ;
62
+ assert . deepStrictEqual ( [ ... map . keys ( ) ] , [ 'bk' , 'ak' , 'ck' ] ) ;
63
+ assert . deepStrictEqual ( [ ... map . values ( ) ] , [ 'bv' , 'av' , 'cv' ] ) ;
64
64
} ) ;
65
65
66
66
test ( 'LinkedMap - Touch New from middle' , ( ) => {
@@ -69,8 +69,8 @@ suite('Map', () => {
69
69
map . set ( 'bk' , 'bv' ) ;
70
70
map . set ( 'ck' , 'cv' ) ;
71
71
map . set ( 'bk' , 'bv' , Touch . AsNew ) ;
72
- assert . deepStrictEqual ( map . keys ( ) , [ 'ak' , 'ck' , 'bk' ] ) ;
73
- assert . deepStrictEqual ( map . values ( ) , [ 'av' , 'cv' , 'bv' ] ) ;
72
+ assert . deepStrictEqual ( [ ... map . keys ( ) ] , [ 'ak' , 'ck' , 'bk' ] ) ;
73
+ assert . deepStrictEqual ( [ ... map . values ( ) ] , [ 'av' , 'cv' , 'bv' ] ) ;
74
74
} ) ;
75
75
76
76
test ( 'LinkedMap - basics' , function ( ) {
@@ -136,25 +136,27 @@ suite('Map', () => {
136
136
assert . strictEqual ( cache . size , 5 ) ;
137
137
cache . set ( 6 , 6 ) ;
138
138
assert . strictEqual ( cache . size , 5 ) ;
139
- assert . deepStrictEqual ( cache . keys ( ) , [ 2 , 3 , 4 , 5 , 6 ] ) ;
139
+ assert . deepStrictEqual ( [ ... cache . keys ( ) ] , [ 2 , 3 , 4 , 5 , 6 ] ) ;
140
140
cache . set ( 7 , 7 ) ;
141
141
assert . strictEqual ( cache . size , 5 ) ;
142
- assert . deepStrictEqual ( cache . keys ( ) , [ 3 , 4 , 5 , 6 , 7 ] ) ;
142
+ assert . deepStrictEqual ( [ ... cache . keys ( ) ] , [ 3 , 4 , 5 , 6 , 7 ] ) ;
143
143
let values : number [ ] = [ ] ;
144
144
[ 3 , 4 , 5 , 6 , 7 ] . forEach ( key => values . push ( cache . get ( key ) ! ) ) ;
145
145
assert . deepStrictEqual ( values , [ 3 , 4 , 5 , 6 , 7 ] ) ;
146
+
147
+ assert . deepEqual ( [ ...cache . entries ( ) ] , [ [ 3 , 3 ] , [ 4 , 4 ] , [ 5 , 5 ] , [ 6 , 6 ] , [ 7 , 7 ] ] ) ;
146
148
} ) ;
147
149
148
150
test ( 'LinkedMap - LRU Cache get' , ( ) => {
149
151
const cache = new LRUCache < number , number > ( 5 ) ;
150
152
151
153
[ 1 , 2 , 3 , 4 , 5 ] . forEach ( value => cache . set ( value , value ) ) ;
152
154
assert . strictEqual ( cache . size , 5 ) ;
153
- assert . deepStrictEqual ( cache . keys ( ) , [ 1 , 2 , 3 , 4 , 5 ] ) ;
155
+ assert . deepStrictEqual ( [ ... cache . keys ( ) ] , [ 1 , 2 , 3 , 4 , 5 ] ) ;
154
156
cache . get ( 3 ) ;
155
- assert . deepStrictEqual ( cache . keys ( ) , [ 1 , 2 , 4 , 5 , 3 ] ) ;
157
+ assert . deepStrictEqual ( [ ... cache . keys ( ) ] , [ 1 , 2 , 4 , 5 , 3 ] ) ;
156
158
cache . peek ( 4 ) ;
157
- assert . deepStrictEqual ( cache . keys ( ) , [ 1 , 2 , 4 , 5 , 3 ] ) ;
159
+ assert . deepStrictEqual ( [ ... cache . keys ( ) ] , [ 1 , 2 , 4 , 5 , 3 ] ) ;
158
160
let values : number [ ] = [ ] ;
159
161
[ 1 , 2 , 3 , 4 , 5 ] . forEach ( key => values . push ( cache . get ( key ) ! ) ) ;
160
162
assert . deepStrictEqual ( values , [ 1 , 2 , 3 , 4 , 5 ] ) ;
@@ -169,7 +171,7 @@ suite('Map', () => {
169
171
assert . strictEqual ( cache . size , 10 ) ;
170
172
cache . limit = 5 ;
171
173
assert . strictEqual ( cache . size , 5 ) ;
172
- assert . deepStrictEqual ( cache . keys ( ) , [ 6 , 7 , 8 , 9 , 10 ] ) ;
174
+ assert . deepStrictEqual ( [ ... cache . keys ( ) ] , [ 6 , 7 , 8 , 9 , 10 ] ) ;
173
175
cache . limit = 20 ;
174
176
assert . strictEqual ( cache . size , 5 ) ;
175
177
for ( let i = 11 ; i <= 20 ; i ++ ) {
@@ -181,7 +183,7 @@ suite('Map', () => {
181
183
values . push ( cache . get ( i ) ! ) ;
182
184
assert . strictEqual ( cache . get ( i ) , i ) ;
183
185
}
184
- assert . deepStrictEqual ( cache . values ( ) , values ) ;
186
+ assert . deepStrictEqual ( [ ... cache . values ( ) ] , values ) ;
185
187
} ) ;
186
188
187
189
test ( 'LinkedMap - LRU Cache limit with ratio' , ( ) => {
@@ -193,11 +195,11 @@ suite('Map', () => {
193
195
assert . strictEqual ( cache . size , 10 ) ;
194
196
cache . set ( 11 , 11 ) ;
195
197
assert . strictEqual ( cache . size , 5 ) ;
196
- assert . deepStrictEqual ( cache . keys ( ) , [ 7 , 8 , 9 , 10 , 11 ] ) ;
198
+ assert . deepStrictEqual ( [ ... cache . keys ( ) ] , [ 7 , 8 , 9 , 10 , 11 ] ) ;
197
199
let values : number [ ] = [ ] ;
198
- cache . keys ( ) . forEach ( key => values . push ( cache . get ( key ) ! ) ) ;
200
+ [ ... cache . keys ( ) ] . forEach ( key => values . push ( cache . get ( key ) ! ) ) ;
199
201
assert . deepStrictEqual ( values , [ 7 , 8 , 9 , 10 , 11 ] ) ;
200
- assert . deepStrictEqual ( cache . values ( ) , values ) ;
202
+ assert . deepStrictEqual ( [ ... cache . values ( ) ] , values ) ;
201
203
} ) ;
202
204
203
205
test ( 'LinkedMap - toJSON / fromJSON' , ( ) => {
@@ -237,7 +239,7 @@ suite('Map', () => {
237
239
map . delete ( '1' ) ;
238
240
assert . equal ( map . get ( '1' ) , undefined ) ;
239
241
assert . equal ( map . size , 0 ) ;
240
- assert . equal ( map . keys ( ) . length , 0 ) ;
242
+ assert . equal ( [ ... map . keys ( ) ] . length , 0 ) ;
241
243
} ) ;
242
244
243
245
test ( 'LinkedMap - delete Head' , function ( ) {
@@ -251,8 +253,8 @@ suite('Map', () => {
251
253
map . delete ( '1' ) ;
252
254
assert . equal ( map . get ( '2' ) , 2 ) ;
253
255
assert . equal ( map . size , 1 ) ;
254
- assert . equal ( map . keys ( ) . length , 1 ) ;
255
- assert . equal ( map . keys ( ) [ 0 ] , 2 ) ;
256
+ assert . equal ( [ ... map . keys ( ) ] . length , 1 ) ;
257
+ assert . equal ( [ ... map . keys ( ) ] [ 0 ] , 2 ) ;
256
258
} ) ;
257
259
258
260
test ( 'LinkedMap - delete Tail' , function ( ) {
@@ -266,8 +268,8 @@ suite('Map', () => {
266
268
map . delete ( '2' ) ;
267
269
assert . equal ( map . get ( '1' ) , 1 ) ;
268
270
assert . equal ( map . size , 1 ) ;
269
- assert . equal ( map . keys ( ) . length , 1 ) ;
270
- assert . equal ( map . keys ( ) [ 0 ] , 1 ) ;
271
+ assert . equal ( [ ... map . keys ( ) ] . length , 1 ) ;
272
+ assert . equal ( [ ... map . keys ( ) ] [ 0 ] , 1 ) ;
271
273
} ) ;
272
274
273
275
0 commit comments