From 2cfec1644c540b65207fbd19aa24a48b6ea314d6 Mon Sep 17 00:00:00 2001 From: vrolland Date: Mon, 6 Apr 2020 15:51:46 +0200 Subject: [PATCH] add test unit for data access --- packages/data-access/src/data-access.ts | 2 +- packages/data-access/test/data-access.test.ts | 46 ++++++++++++++++++- 2 files changed, 46 insertions(+), 2 deletions(-) diff --git a/packages/data-access/src/data-access.ts b/packages/data-access/src/data-access.ts index 0e0f9d7acb..8c352c8d74 100644 --- a/packages/data-access/src/data-access.ts +++ b/packages/data-access/src/data-access.ts @@ -457,7 +457,7 @@ export default class DataAccess implements DataAccessTypes.IDataAccess { this.checkInitialized(); // last transaction timestamp retrieved - const lastLocationTimestamp = this.transactionIndex.getLastTransactionTimestamp(); + const lastLocationTimestamp = await this.transactionIndex.getLastTransactionTimestamp(); const listIndexedLocation = await this.transactionIndex.getIndexedLocation(); const listIgnoredLocation = await this.ignoredLocation.getIgnoredLocation(); diff --git a/packages/data-access/test/data-access.test.ts b/packages/data-access/test/data-access.test.ts index 6b48b26ddf..a032aacbfa 100644 --- a/packages/data-access/test/data-access.test.ts +++ b/packages/data-access/test/data-access.test.ts @@ -139,7 +139,7 @@ let clock: sinon.SinonFakeTimers; // tslint:disable:no-magic-numbers /* tslint:disable:no-unused-expression */ -describe.only('data-access', () => { +describe('data-access', () => { beforeEach(async () => { clock = sinon.useFakeTimers(); }); @@ -546,6 +546,50 @@ describe.only('data-access', () => { }); }); + describe('_getInformation', () => { + let dataAccess: any; + + beforeEach(async () => { + const fakeStorage = { + ...defaultFakeStorage, + read: (param: string): any => { + const dataIdBlock2txFake: StorageTypes.IEntry = { + content: JSON.stringify(blockWith2tx), + id: '1', + meta: { state: StorageTypes.ContentState.CONFIRMED, timestamp: 10 }, + }; + const result: any = { + dataIdBlock2tx: dataIdBlock2txFake, + }; + return result[param]; + }, + }; + + dataAccess = new DataAccess(fakeStorage); + await dataAccess.initialize(); + }); + + it('can _getInformation()', async () => { + expect(await dataAccess._getInformation(), 'result with arbitraryTopic1 wrong').to.deep.equal( + { + filesIgnored: { count: 0, list: undefined }, + filesRetrieved: { count: 1, lastTimestamp: 10, list: undefined }, + lastSynchronizationTimestamp: 0, + }, + ); + }); + it('can _getInformation() with details', async () => { + expect( + await dataAccess._getInformation(true), + 'result with arbitraryTopic1 wrong', + ).to.deep.equal({ + filesIgnored: { count: 0, list: {} }, + filesRetrieved: { count: 1, lastTimestamp: 10, list: ['dataIdBlock2tx'] }, + lastSynchronizationTimestamp: 0, + }); + }); + }); + it('synchronizeNewDataId() should throw an error if not initialized', async () => { const dataAccess = new DataAccess(defaultFakeStorage);