1717 * limitations under the License.
1818 */
1919
20- var Pool = require ( '../../lib /v1/internal/pool' ) . default ;
20+ import Pool from '../../src /v1/internal/pool' ;
2121
22- describe ( 'Pool' , function ( ) {
23- it ( 'allocates if pool is empty' , function ( ) {
22+ describe ( 'Pool' , ( ) => {
23+
24+ it ( 'allocates if pool is empty' , ( ) => {
2425 // 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 ) ) ;
2829
2930 // 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 ) ;
3233
3334 // Then
3435 expect ( r0 . id ) . toBe ( 0 ) ;
3536 expect ( r1 . id ) . toBe ( 1 ) ;
3637 } ) ;
3738
38- it ( 'pools if resources are returned' , function ( ) {
39+ it ( 'pools if resources are returned' , ( ) => {
3940 // 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 ) ) ;
4344
4445 // When
45- var r0 = pool . acquire ( key ) ;
46+ const r0 = pool . acquire ( key ) ;
4647 r0 . close ( ) ;
47- var r1 = pool . acquire ( key ) ;
48+ const r1 = pool . acquire ( key ) ;
4849
4950 // Then
5051 expect ( r0 . id ) . toBe ( 0 ) ;
5152 expect ( r1 . id ) . toBe ( 0 ) ;
5253 } ) ;
5354
54- it ( 'handles multiple keys' , function ( ) {
55+ it ( 'handles multiple keys' , ( ) => {
5556 // 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 ) ) ;
6061
6162 // 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 ) ;
6465 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 ) ;
6768
6869 // Then
6970 expect ( r0 . id ) . toBe ( 0 ) ;
@@ -72,22 +73,24 @@ describe('Pool', function() {
7273 expect ( r3 . id ) . toBe ( 2 ) ;
7374 } ) ;
7475
75- it ( 'frees if pool reaches max size' , function ( ) {
76+ it ( 'frees if pool reaches max size' , ( ) => {
7677 // 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 ,
8487 2 // maxIdle
8588 ) ;
8689
8790 // 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 ) ;
9194 r0 . close ( ) ;
9295 r1 . close ( ) ;
9396 r2 . close ( ) ;
@@ -97,21 +100,23 @@ describe('Pool', function() {
97100 expect ( destroyed [ 0 ] . id ) . toBe ( r2 . id ) ;
98101 } ) ;
99102
100- it ( 'frees if validate returns false' , function ( ) {
103+ it ( 'frees if validate returns false' , ( ) => {
101104 // 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 ,
109114 1000 // maxIdle
110115 ) ;
111116
112117 // 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 ) ;
115120 r0 . close ( ) ;
116121 r1 . close ( ) ;
117122
@@ -122,18 +127,21 @@ describe('Pool', function() {
122127 } ) ;
123128
124129
125- it ( 'purges keys' , function ( ) {
130+ it ( 'purges keys' , ( ) => {
126131 // 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+ }
132140 ) ;
133141
134142 // 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 ) ;
137145 r0 . close ( ) ;
138146 r1 . close ( ) ;
139147 expect ( pool . has ( key1 ) ) . toBe ( true ) ;
@@ -142,8 +150,8 @@ describe('Pool', function() {
142150 expect ( pool . has ( key1 ) ) . toBe ( false ) ;
143151 expect ( pool . has ( key2 ) ) . toBe ( true ) ;
144152
145- var r2 = pool . acquire ( key1 ) ;
146- var r3 = pool . acquire ( key2 ) ;
153+ const r2 = pool . acquire ( key1 ) ;
154+ const r3 = pool . acquire ( key2 ) ;
147155
148156 // Then
149157 expect ( r0 . id ) . toBe ( 0 ) ;
@@ -154,8 +162,15 @@ describe('Pool', function() {
154162 } ) ;
155163} ) ;
156164
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+ }
161176}
0 commit comments