@@ -1000,6 +1000,48 @@ describe('LevelStorage', function () {
10001000
10011001 } ) ;
10021002
1003+ describe ( '#List Groups' , function ( ) {
1004+
1005+ it ( 'should resolve with an empty array when there are no groups' , function ( done ) {
1006+ var storage = createLevelStorage ( ) ;
1007+
1008+ storage . listGroups ( )
1009+ . then ( function ( result ) {
1010+ if ( result . length === 0 ) {
1011+ storage . cleanDb ( done ) ;
1012+ }
1013+ } , function reject ( error ) {
1014+ throw Error ( "should not fail but return an empty array" ) ;
1015+
1016+ } ) ;
1017+ } ) ;
1018+ it ( 'should return all groups' , function ( done ) {
1019+ var storage = createLevelStorage ( ) ;
1020+ var owner = "1" ;
1021+ var group1 ;
1022+ var group2 ;
1023+ var group_name = "mygroup" ;
1024+ var group_name2 = "mygroup2" ;
1025+ Promise . all ( [ storage . createGroupPromise ( group_name , owner ) , storage . createGroupPromise ( group_name2 , owner ) ] )
1026+ . then ( function ( array ) {
1027+ return storage . listGroups ( ) ;
1028+ } )
1029+ . then ( function ( groups ) {
1030+ if ( groups [ 0 ] . owner === owner && groups [ 1 ] . owner === owner ) {
1031+ var b = true ;
1032+ groups . forEach ( function ( v ) {
1033+ b = b && ( v . group_name === group_name || v . group_name === group_name2 ) ;
1034+ } )
1035+ if ( b )
1036+ storage . cleanDb ( done ) ;
1037+ }
1038+
1039+ } , function reject ( error ) {
1040+ throw error ;
1041+ } ) ;
1042+ } ) ;
1043+ } ) ;
1044+
10031045 describe ( '#List entities in a Group' , function ( ) {
10041046 //called after each test to delete the database
10051047 afterEach ( function ( ) {
0 commit comments