@@ -16,13 +16,25 @@ describe('Class: BaseProvider', () => {
16
16
} ) ;
17
17
18
18
class TestProvider extends BaseProvider {
19
+ public _add ( key : string , value : ExpirableValue ) : void {
20
+ this . store . set ( key , value ) ;
21
+ }
22
+
19
23
public _get ( _name : string ) : Promise < string > {
20
24
throw Error ( 'Not implemented.' ) ;
21
25
}
26
+
27
+ public _getKeyTest ( key : string ) : ExpirableValue | undefined {
28
+ return this . store . get ( key ) ;
29
+ }
22
30
23
31
public _getMultiple ( _path : string ) : Promise < Record < string , string | undefined > > {
24
32
throw Error ( 'Not implemented.' ) ;
25
33
}
34
+
35
+ public _getStoreSize ( ) : number {
36
+ return this . store . size ;
37
+ }
26
38
}
27
39
28
40
describe ( 'Method: addToCache' , ( ) => {
@@ -31,27 +43,27 @@ describe('Class: BaseProvider', () => {
31
43
32
44
// Prepare
33
45
const provider = new TestProvider ( ) ;
34
- const addSpy = jest . spyOn ( provider . store , 'set' ) ;
35
46
36
47
// Act
37
48
provider . addToCache ( 'my-key' , 'value' , 0 ) ;
38
49
39
50
// Assess
40
- expect ( addSpy ) . toBeCalledTimes ( 0 ) ;
51
+ expect ( provider . _getKeyTest ( 'my-key' ) ) . toBeUndefined ( ) ;
41
52
42
53
} ) ;
43
54
44
55
test ( 'when called with a value and maxAge, it places the value in the cache' , ( ) => {
45
56
46
57
// Prepare
47
58
const provider = new TestProvider ( ) ;
48
- const addSpy = jest . spyOn ( provider . store , 'set' ) ;
49
59
50
60
// Act
51
- provider . addToCache ( 'my-key' , 'value' , 5000 ) ;
61
+ provider . addToCache ( 'my-key' , 'my- value' , 5000 ) ;
52
62
53
63
// Assess
54
- expect ( addSpy ) . toBeCalledTimes ( 1 ) ;
64
+ expect ( provider . _getKeyTest ( 'my-key' ) ) . toEqual ( expect . objectContaining ( {
65
+ value : 'my-value'
66
+ } ) ) ;
55
67
56
68
} ) ;
57
69
@@ -73,7 +85,7 @@ describe('Class: BaseProvider', () => {
73
85
74
86
// Prepare
75
87
const provider = new TestProvider ( ) ;
76
- provider . store . set ( [ 'my-parameter' , undefined ] . toString ( ) , new ExpirableValue ( 'my-value' , 5000 ) ) ;
88
+ provider . _add ( [ 'my-parameter' , undefined ] . toString ( ) , new ExpirableValue ( 'my-value' , 5000 ) ) ;
77
89
78
90
// Act
79
91
const values = await provider . get ( 'my-parameter' ) ;
@@ -89,7 +101,7 @@ describe('Class: BaseProvider', () => {
89
101
const mockData = 'my-remote-value' ;
90
102
const provider = new TestProvider ( ) ;
91
103
jest . spyOn ( provider , '_get' ) . mockImplementation ( ( ) => new Promise ( ( resolve , _reject ) => resolve ( mockData ) ) ) ;
92
- provider . store . set ( [ 'my-parameter' , undefined ] . toString ( ) , new ExpirableValue ( 'my-value' , 5000 ) ) ;
104
+ provider . _add ( [ 'my-parameter' , undefined ] . toString ( ) , new ExpirableValue ( 'my-value' , 5000 ) ) ;
93
105
94
106
// Act
95
107
const values = await provider . get ( 'my-parameter' , { forceFetch : true } ) ;
@@ -107,7 +119,7 @@ describe('Class: BaseProvider', () => {
107
119
jest . spyOn ( provider , '_get' ) . mockImplementation ( ( ) => new Promise ( ( resolve , _reject ) => resolve ( mockData ) ) ) ;
108
120
const expirableValue = new ExpirableValue ( 'my-other-value' , 0 ) ;
109
121
jest . spyOn ( expirableValue , 'isExpired' ) . mockImplementation ( ( ) => true ) ;
110
- provider . store . set ( [ 'my-path' , undefined ] . toString ( ) , expirableValue ) ;
122
+ provider . _add ( [ 'my-path' , undefined ] . toString ( ) , expirableValue ) ;
111
123
112
124
// Act
113
125
const values = await provider . get ( 'my-parameter' ) ;
@@ -367,7 +379,7 @@ describe('Class: BaseProvider', () => {
367
379
368
380
// Prepare
369
381
const provider = new TestProvider ( ) ;
370
- provider . store . set ( [ 'my-path' , undefined ] . toString ( ) , new ExpirableValue ( { 'A' : 'my-value' } , 60000 ) ) ;
382
+ provider . _add ( [ 'my-path' , undefined ] . toString ( ) , new ExpirableValue ( { 'A' : 'my-value' } , 60000 ) ) ;
371
383
372
384
// Act
373
385
const values = await provider . getMultiple ( 'my-path' ) ;
@@ -388,7 +400,7 @@ describe('Class: BaseProvider', () => {
388
400
jest . spyOn ( provider , '_getMultiple' ) . mockImplementation ( ( ) => new Promise ( ( resolve , _reject ) => resolve ( mockData ) ) ) ;
389
401
const expirableValue = new ExpirableValue ( { 'B' : 'my-other-value' } , 0 ) ;
390
402
jest . spyOn ( expirableValue , 'isExpired' ) . mockImplementation ( ( ) => true ) ;
391
- provider . store . set ( [ 'my-path' , undefined ] . toString ( ) , expirableValue ) ;
403
+ provider . _add ( [ 'my-path' , undefined ] . toString ( ) , expirableValue ) ;
392
404
393
405
// Act
394
406
const values = await provider . getMultiple ( 'my-path' ) ;
@@ -409,13 +421,13 @@ describe('Class: BaseProvider', () => {
409
421
410
422
// Prepare
411
423
const provider = new TestProvider ( ) ;
412
- const clearSpy = jest . spyOn ( provider . store , 'clear' ) ;
424
+ provider . _add ( [ 'my-path' , undefined ] . toString ( ) , new ExpirableValue ( { 'B' : 'my-other-value' } , 0 ) ) ;
413
425
414
426
// Act
415
427
provider . clearCache ( ) ;
416
428
417
429
// Assess
418
- expect ( clearSpy ) . toBeCalledTimes ( 1 ) ;
430
+ expect ( provider . _getStoreSize ( ) ) . toBe ( 0 ) ;
419
431
420
432
} ) ;
421
433
0 commit comments