fix(core): update
This commit is contained in:
		| @@ -11,10 +11,6 @@ tap.test('first test', async () => { | ||||
|   expect(testWebstore).to.be.instanceOf(webstore.WebStore); | ||||
| }); | ||||
|  | ||||
| tap.test('should init the database', async () => { | ||||
|   await testWebstore.init(); | ||||
| }); | ||||
|  | ||||
| tap.test('should allow storing a string', async () => { | ||||
|   await testWebstore.set('mystring', 'heythere'); | ||||
|   expect(await testWebstore.get('mystring')).to.equal('heythere'); | ||||
|   | ||||
| @@ -18,7 +18,8 @@ export class WebStore<T = any> { | ||||
|  | ||||
|   public async init() { | ||||
|     if (this.initCalled) { | ||||
|       return this.readyDeferred.promise; | ||||
|       await this.readyDeferred.promise; | ||||
|       return; | ||||
|     } | ||||
|     this.initCalled = true; | ||||
|     this.db = await plugins.idb.openDB(this.options.dbName, 1, { | ||||
| @@ -27,6 +28,7 @@ export class WebStore<T = any> { | ||||
|       }, | ||||
|     }); | ||||
|     this.readyDeferred.resolve(); | ||||
|     return; | ||||
|   } | ||||
|  | ||||
|   async get(key: string): Promise<T> { | ||||
| @@ -41,6 +43,7 @@ export class WebStore<T = any> { | ||||
|   } | ||||
|  | ||||
|   async set(key: string, val: T) { | ||||
|     await this.init(); | ||||
|     return this.db.put(this.options.storeName, val, key); | ||||
|   } | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user