From 11f9925cef16a40d03f3b7c367c29cb6efa8750e Mon Sep 17 00:00:00 2001
From: Yoan VALLET <ext.sopra.yvallet@grandlyon.com>
Date: Thu, 12 Nov 2020 21:17:41 +0100
Subject: [PATCH] feat: review account service test

---
 src/services/account.service.spec.ts | 26 ++++++++++++++------------
 src/services/account.service.ts      |  3 ++-
 2 files changed, 16 insertions(+), 13 deletions(-)

diff --git a/src/services/account.service.spec.ts b/src/services/account.service.spec.ts
index 895ff3aad..5c9dc6b0e 100644
--- a/src/services/account.service.spec.ts
+++ b/src/services/account.service.spec.ts
@@ -63,31 +63,27 @@ describe('Account service', () => {
 
   describe('getAccountByType method', () => {
     it('should return account with account_type equals to eglgrandlyon', async () => {
-      const mockType = 'eglgrandlyon'
       const mockQueryResult: QueryResult<Account[]> = {
         data: [mockAccounts[2]],
         bookmark: '',
         next: false,
         skip: 0,
       }
-      mockClient.query.mockImplementation(() =>
-        Promise.resolve(mockQueryResult)
-      )
+      mockClient.query.mockResolvedValueOnce(mockQueryResult)
+      const mockType = 'eglgrandlyon'
       const result = await accountService.getAccountByType(mockType)
       expect(result).toEqual(mockAccounts[2])
     })
 
     it('should return null when no account find', async () => {
-      const mockType = 'eglgrandlyon'
       const mockQueryResult: QueryResult<Account[]> = {
         data: [],
         bookmark: '',
         next: false,
         skip: 0,
       }
-      mockClient.query.mockImplementation(() =>
-        Promise.resolve(mockQueryResult)
-      )
+      mockClient.query.mockResolvedValueOnce(mockQueryResult)
+      const mockType = 'eglgrandlyon'
       const result = await accountService.getAccountByType(mockType)
       expect(result).toBe(null)
     })
@@ -128,10 +124,16 @@ describe('Account service', () => {
   })
 
   describe('createIndexAccount method', () => {
-    it('should return empty value', async () => {
-      mockHavestLibAccounts.deleteAccount.mockResolvedValueOnce(mockAccounts[2])
-      const result = await accountService.deleteAccount(mockAccounts[2])
-      expect(result).toBe(true)
+    it('should return empty array', async () => {
+      const mockQueryResult: QueryResult<Account[]> = {
+        data: [],
+        bookmark: '',
+        next: false,
+        skip: 0,
+      }
+      mockClient.query.mockResolvedValueOnce(mockQueryResult)
+      const result = await accountService.createIndexAccount()
+      expect(result).toEqual([])
     })
   })
 })
diff --git a/src/services/account.service.ts b/src/services/account.service.ts
index 6eb2f3f3a..24571792d 100644
--- a/src/services/account.service.ts
+++ b/src/services/account.service.ts
@@ -85,6 +85,7 @@ export default class AccountService {
       // eslint-disable-next-line @typescript-eslint/camelcase
       .where({ account_type: 'index' })
       .limitBy(1)
-    return await this._client.query(query)
+    const { data: result } = await this._client.query(query)
+    return result
   }
 }
-- 
GitLab