@@ -31,26 +31,41 @@ function random(min, max) {
3131 return Math . floor ( Math . random ( ) * ( max - min ) ) + min ;
3232}
3333
34- for ( const memory of [ false , true ] ) {
35- describe ( `Urkel (${ memory ? 'MemTree' : 'Tree' } )` , function ( ) {
34+ const treeCreateOptions = {
35+ 'nurkel' : { } ,
36+ // use legacy tree
37+ 'urkel' : {
38+ urkel : true
39+ } ,
40+ // legacy tree as in memory tree
41+ 'memory' : {
42+ memory : true
43+ }
44+ } ;
45+
46+ for ( const [ name , treeTestOptions ] of Object . entries ( treeCreateOptions ) ) {
47+ describe ( `Urkel (${ name } )` , function ( ) {
3648 this . timeout ( 20000 ) ;
3749
38- const Tree = memory ? nurkel . MemTree : nurkel . Tree ;
39- let prefix , tree ;
50+ const Tree = name === 'nurkel' ? nurkel . Tree : nurkel . UrkelTree ;
51+
52+ let prefix , prefix2 ;
4053
4154 beforeEach ( async ( ) => {
4255 prefix = testdir ( 'tree' ) ;
43- if ( ! memory )
44- fs . mkdirSync ( prefix ) ;
56+ prefix2 = testdir ( 'tree2' ) ;
4557 } ) ;
4658
4759 afterEach ( async ( ) => {
48- if ( ! memory && isTreeDir ( prefix ) )
60+ if ( name !== ' memory' && isTreeDir ( prefix ) )
4961 rmTreeDir ( prefix ) ;
62+
63+ if ( name !== 'memory' && isTreeDir ( prefix2 ) )
64+ rmTreeDir ( prefix2 ) ;
5065 } ) ;
5166
5267 it ( 'should test tree' , async ( ) => {
53- const tree = nurkel . create ( { prefix, memory } ) ;
68+ const tree = nurkel . create ( { prefix, ... treeTestOptions } ) ;
5469 await tree . open ( ) ;
5570
5671 let batch = tree . batch ( ) ;
@@ -237,7 +252,7 @@ describe(`Urkel (${memory ? 'MemTree' : 'Tree'})`, function() {
237252
238253 it ( 'should test max value size' , async ( ) => {
239254 const MAX_VALUE = 0x3ff ;
240- const tree = nurkel . create ( { prefix, memory } ) ;
255+ const tree = nurkel . create ( { prefix, ... treeTestOptions } ) ;
241256
242257 await tree . open ( ) ;
243258
@@ -281,7 +296,7 @@ describe(`Urkel (${memory ? 'MemTree' : 'Tree'})`, function() {
281296 } ) ;
282297
283298 it ( 'should pummel tree' , async ( ) => {
284- const tree = nurkel . create ( { prefix, memory } ) ;
299+ const tree = nurkel . create ( { prefix, ... treeTestOptions } ) ;
285300
286301 const items = [ ] ;
287302 const set = new Set ( ) ;
@@ -477,7 +492,11 @@ describe(`Urkel (${memory ? 'MemTree' : 'Tree'})`, function() {
477492 } ) ;
478493
479494 it ( 'should test history independence' , async ( ) => {
480- const opts = { prefix, memory } ;
495+ const opts1 = { prefix, ...treeTestOptions } ;
496+ const opts2 = {
497+ prefix : prefix2 ,
498+ ...treeTestOptions
499+ } ;
481500
482501 const items = [ ] ;
483502 const removed = [ ] ;
@@ -489,10 +508,10 @@ describe(`Urkel (${memory ? 'MemTree' : 'Tree'})`, function() {
489508 items . push ( [ key , value ] ) ;
490509 }
491510
492- const tree1 = nurkel . create ( opts ) ;
511+ const tree1 = nurkel . create ( opts1 ) ;
493512 await tree1 . open ( ) ;
494513
495- const tree2 = nurkel . create ( opts ) ;
514+ const tree2 = nurkel . create ( opts2 ) ;
496515 await tree2 . open ( ) ;
497516
498517 let root = null ;
0 commit comments