17
17
* limitations under the License.
18
18
*/
19
19
20
- var Pool = require ( '../../lib /v1/internal/pool' ) . default ;
20
+ import Pool from '../../src /v1/internal/pool' ;
21
21
22
- describe ( 'Pool' , function ( ) {
23
- it ( 'allocates if pool is empty' , function ( ) {
22
+ describe ( 'Pool' , ( ) => {
23
+
24
+ it ( 'allocates if pool is empty' , ( ) => {
24
25
// Given
25
- var counter = 0 ;
26
- var key = " bolt://localhost:7687" ;
27
- var pool = new Pool ( function ( url , release ) { return new Resource ( url , counter ++ , release ) } ) ;
26
+ let counter = 0 ;
27
+ const key = ' bolt://localhost:7687' ;
28
+ const pool = new Pool ( ( url , release ) => new Resource ( url , counter ++ , release ) ) ;
28
29
29
30
// When
30
- var r0 = pool . acquire ( key ) ;
31
- var r1 = pool . acquire ( key ) ;
31
+ const r0 = pool . acquire ( key ) ;
32
+ const r1 = pool . acquire ( key ) ;
32
33
33
34
// Then
34
35
expect ( r0 . id ) . toBe ( 0 ) ;
35
36
expect ( r1 . id ) . toBe ( 1 ) ;
36
37
} ) ;
37
38
38
- it ( 'pools if resources are returned' , function ( ) {
39
+ it ( 'pools if resources are returned' , ( ) => {
39
40
// Given a pool that allocates
40
- var counter = 0 ;
41
- var key = " bolt://localhost:7687" ;
42
- var pool = new Pool ( function ( url , release ) { return new Resource ( url , counter ++ , release ) } ) ;
41
+ let counter = 0 ;
42
+ const key = ' bolt://localhost:7687' ;
43
+ const pool = new Pool ( ( url , release ) => new Resource ( url , counter ++ , release ) ) ;
43
44
44
45
// When
45
- var r0 = pool . acquire ( key ) ;
46
+ const r0 = pool . acquire ( key ) ;
46
47
r0 . close ( ) ;
47
- var r1 = pool . acquire ( key ) ;
48
+ const r1 = pool . acquire ( key ) ;
48
49
49
50
// Then
50
51
expect ( r0 . id ) . toBe ( 0 ) ;
51
52
expect ( r1 . id ) . toBe ( 0 ) ;
52
53
} ) ;
53
54
54
- it ( 'handles multiple keys' , function ( ) {
55
+ it ( 'handles multiple keys' , ( ) => {
55
56
// Given a pool that allocates
56
- var counter = 0 ;
57
- var key1 = " bolt://localhost:7687" ;
58
- var key2 = " bolt://localhost:7688" ;
59
- var pool = new Pool ( function ( url , release ) { return new Resource ( url , counter ++ , release ) } ) ;
57
+ let counter = 0 ;
58
+ const key1 = ' bolt://localhost:7687' ;
59
+ const key2 = ' bolt://localhost:7688' ;
60
+ const pool = new Pool ( ( url , release ) => new Resource ( url , counter ++ , release ) ) ;
60
61
61
62
// When
62
- var r0 = pool . acquire ( key1 ) ;
63
- var r1 = pool . acquire ( key2 ) ;
63
+ const r0 = pool . acquire ( key1 ) ;
64
+ const r1 = pool . acquire ( key2 ) ;
64
65
r0 . close ( ) ;
65
- var r2 = pool . acquire ( key1 ) ;
66
- var r3 = pool . acquire ( key2 ) ;
66
+ const r2 = pool . acquire ( key1 ) ;
67
+ const r3 = pool . acquire ( key2 ) ;
67
68
68
69
// Then
69
70
expect ( r0 . id ) . toBe ( 0 ) ;
@@ -72,22 +73,24 @@ describe('Pool', function() {
72
73
expect ( r3 . id ) . toBe ( 2 ) ;
73
74
} ) ;
74
75
75
- it ( 'frees if pool reaches max size' , function ( ) {
76
+ it ( 'frees if pool reaches max size' , ( ) => {
76
77
// Given a pool that tracks destroyed resources
77
- var counter = 0 ,
78
- destroyed = [ ] ;
79
- var key = "bolt://localhost:7687" ;
80
- var pool = new Pool (
81
- function ( url , release ) { return new Resource ( url , counter ++ , release ) } ,
82
- function ( resource ) { destroyed . push ( resource ) ; } ,
83
- function ( resource ) { return true ; } ,
78
+ let counter = 0 ;
79
+ let destroyed = [ ] ;
80
+ const key = 'bolt://localhost:7687' ;
81
+ const pool = new Pool (
82
+ ( url , release ) => new Resource ( url , counter ++ , release ) ,
83
+ resource => {
84
+ destroyed . push ( resource ) ;
85
+ } ,
86
+ resource => true ,
84
87
2 // maxIdle
85
88
) ;
86
89
87
90
// When
88
- var r0 = pool . acquire ( key ) ;
89
- var r1 = pool . acquire ( key ) ;
90
- var r2 = pool . acquire ( key ) ;
91
+ const r0 = pool . acquire ( key ) ;
92
+ const r1 = pool . acquire ( key ) ;
93
+ const r2 = pool . acquire ( key ) ;
91
94
r0 . close ( ) ;
92
95
r1 . close ( ) ;
93
96
r2 . close ( ) ;
@@ -97,21 +100,23 @@ describe('Pool', function() {
97
100
expect ( destroyed [ 0 ] . id ) . toBe ( r2 . id ) ;
98
101
} ) ;
99
102
100
- it ( 'frees if validate returns false' , function ( ) {
103
+ it ( 'frees if validate returns false' , ( ) => {
101
104
// Given a pool that allocates
102
- var counter = 0 ,
103
- destroyed = [ ] ;
104
- var key = "bolt://localhost:7687" ;
105
- var pool = new Pool (
106
- function ( url , release ) { return new Resource ( url , counter ++ , release ) } ,
107
- function ( resource ) { destroyed . push ( resource ) ; } ,
108
- function ( resource ) { return false ; } ,
105
+ let counter = 0 ;
106
+ let destroyed = [ ] ;
107
+ const key = 'bolt://localhost:7687' ;
108
+ const pool = new Pool (
109
+ ( url , release ) => new Resource ( url , counter ++ , release ) ,
110
+ resource => {
111
+ destroyed . push ( resource ) ;
112
+ } ,
113
+ resource => false ,
109
114
1000 // maxIdle
110
115
) ;
111
116
112
117
// When
113
- var r0 = pool . acquire ( key ) ;
114
- var r1 = pool . acquire ( key ) ;
118
+ const r0 = pool . acquire ( key ) ;
119
+ const r1 = pool . acquire ( key ) ;
115
120
r0 . close ( ) ;
116
121
r1 . close ( ) ;
117
122
@@ -122,18 +127,21 @@ describe('Pool', function() {
122
127
} ) ;
123
128
124
129
125
- it ( 'purges keys' , function ( ) {
130
+ it ( 'purges keys' , ( ) => {
126
131
// Given a pool that allocates
127
- var counter = 0 ;
128
- var key1 = "bolt://localhost:7687" ;
129
- var key2 = "bolt://localhost:7688" ;
130
- var pool = new Pool ( function ( url , release ) { return new Resource ( url , counter ++ , release ) } ,
131
- function ( res ) { res . destroyed = true ; return true }
132
+ let counter = 0 ;
133
+ const key1 = 'bolt://localhost:7687' ;
134
+ const key2 = 'bolt://localhost:7688' ;
135
+ const pool = new Pool ( ( url , release ) => new Resource ( url , counter ++ , release ) ,
136
+ res => {
137
+ res . destroyed = true ;
138
+ return true ;
139
+ }
132
140
) ;
133
141
134
142
// When
135
- var r0 = pool . acquire ( key1 ) ;
136
- var r1 = pool . acquire ( key2 ) ;
143
+ const r0 = pool . acquire ( key1 ) ;
144
+ const r1 = pool . acquire ( key2 ) ;
137
145
r0 . close ( ) ;
138
146
r1 . close ( ) ;
139
147
expect ( pool . has ( key1 ) ) . toBe ( true ) ;
@@ -142,8 +150,8 @@ describe('Pool', function() {
142
150
expect ( pool . has ( key1 ) ) . toBe ( false ) ;
143
151
expect ( pool . has ( key2 ) ) . toBe ( true ) ;
144
152
145
- var r2 = pool . acquire ( key1 ) ;
146
- var r3 = pool . acquire ( key2 ) ;
153
+ const r2 = pool . acquire ( key1 ) ;
154
+ const r3 = pool . acquire ( key2 ) ;
147
155
148
156
// Then
149
157
expect ( r0 . id ) . toBe ( 0 ) ;
@@ -154,8 +162,15 @@ describe('Pool', function() {
154
162
} ) ;
155
163
} ) ;
156
164
157
- function Resource ( key , id , release ) {
158
- var self = this ;
159
- this . id = id ;
160
- this . close = function ( ) { release ( key , self ) ; } ;
165
+ class Resource {
166
+
167
+ constructor ( key , id , release ) {
168
+ this . id = id ;
169
+ this . key = key ;
170
+ this . release = release ;
171
+ }
172
+
173
+ close ( ) {
174
+ this . release ( key , self ) ;
175
+ }
161
176
}
0 commit comments