@@ -51,6 +51,15 @@ test.it("Async Iterator single element test", async (t) => {
5151 }
5252} ) ;
5353
54+ test . it ( "Async Keys single element test" , async ( t ) => {
55+ await sqliteKeyv . set ( "foo" , "bar" ) ;
56+ const keys = sqliteKeyv . keys ( ) ;
57+
58+ for await ( const key of keys ) {
59+ t . expect ( key ) . toBe ( "foo" ) ;
60+ }
61+ } ) ;
62+
5463test . it ( "Async Iterator multiple element test" , async ( t ) => {
5564 await sqliteKeyv . set ( "foo" , "bar" ) ;
5665 await sqliteKeyv . set ( "foo1" , "bar1" ) ;
@@ -70,6 +79,20 @@ test.it("Async Iterator multiple element test", async (t) => {
7079 }
7180} ) ;
7281
82+ test . it ( "Async Keys multiple element test" , async ( t ) => {
83+ await sqliteKeyv . set ( "foo" , "bar" ) ;
84+ await sqliteKeyv . set ( "foo1" , "bar1" ) ;
85+ await sqliteKeyv . set ( "foo2" , "bar2" ) ;
86+
87+ const expectedKeys = [ "foo" , "foo1" , "foo2" ] ;
88+ const keys = sqliteKeyv . keys ( ) ;
89+ let i = 0 ;
90+ for await ( const key of keys ) {
91+ const expectedKey = expectedKeys [ i ++ ] ;
92+ t . expect ( key ) . toBe ( expectedKey ) ;
93+ }
94+ } ) ;
95+
7396test . it ( "Async Iterator multiple elements with limit=1 test" , async ( t ) => {
7497 await sqliteKeyv . set ( "foo" , "bar" ) ;
7598 await sqliteKeyv . set ( "foo1" , "bar1" ) ;
@@ -89,12 +112,45 @@ test.it("Async Iterator multiple elements with limit=1 test", async (t) => {
89112 t . expect ( v ) . toBe ( "bar2" ) ;
90113} ) ;
91114
115+ test . it ( "Async Keys multiple elements with limit=1 test" , async ( t ) => {
116+ await sqliteKeyv . set ( "foo" , "bar" ) ;
117+ await sqliteKeyv . set ( "foo1" , "bar1" ) ;
118+ await sqliteKeyv . set ( "foo2" , "bar2" ) ;
119+ const keys = sqliteKeyv . keys ( ) ;
120+ let key = await keys . next ( ) ;
121+ let k = key . value
122+ t . expect ( k ) . toBe ( "foo" ) ;
123+ key = await keys . next ( ) ;
124+ k = key . value
125+ t . expect ( k ) . toBe ( "foo1" ) ;
126+ key = await keys . next ( ) ;
127+ k = key . value
128+ t . expect ( k ) . toBe ( "foo2" ) ;
129+ } ) ;
130+
92131test . it ( "Async Iterator 0 element test" , async ( t ) => {
93132 const iterator = sqliteKeyv . iterator ( "keyv" ) ;
94133 const key = await iterator . next ( ) ;
95134 t . expect ( key . value ) . toBe ( undefined ) ;
96135} ) ;
97136
137+ test . it ( "Async Keys 0 element test" , async ( t ) => {
138+ const keys = sqliteKeyv . keys ( "keyv" ) ;
139+ const key = await keys . next ( ) ;
140+ t . expect ( key . value ) . toBe ( undefined ) ;
141+ } ) ;
142+
143+ test . it ( "Async Keys with pattern test" , async ( t ) => {
144+ await sqliteKeyv . set ( "other" , "bar" ) ;
145+ await sqliteKeyv . set ( "foo1" , "bar" ) ;
146+ await sqliteKeyv . set ( "foo2" , "bar1" ) ;
147+ await sqliteKeyv . set ( "foo3" , "bar2" ) ;
148+
149+ for await ( const key of sqliteKeyv . keys ( "foo*" ) ) {
150+ t . expect ( key ) . not . toBe ( "other" ) ;
151+ }
152+ } ) ;
153+
98154test . it ( "close connection successfully" , async ( t ) => {
99155 t . expect ( await sqliteKeyv . get ( "foo" ) ) . toBe ( undefined ) ;
100156 await sqliteKeyv . set ( "foo" , "bar" ) ;
0 commit comments