From b7155d143ce2b7042ee81434f8333b0f389eb409 Mon Sep 17 00:00:00 2001
From: Hugo SUBTIL <ext.sopra.husubtil@grandlyon.com>
Date: Thu, 22 Sep 2022 12:01:39 +0200
Subject: [PATCH] fix(ondelete): local testing and variables

---
 src/helpers/account.js | 10 ++--------
 src/onDeleteAccount.js | 17 ++++++++++++++---
 2 files changed, 16 insertions(+), 11 deletions(-)

diff --git a/src/helpers/account.js b/src/helpers/account.js
index 5033e27..0982c13 100644
--- a/src/helpers/account.js
+++ b/src/helpers/account.js
@@ -24,18 +24,12 @@ function getAccountRev() {
 /**
  * Return account secrets.
  * For local testing, change value with values from your konnector-dev-config.json
+ * @returns {Fields}
  */
 function getAccountSecret() {
   try {
     return isLocal()
-      ? {
-          baseUrl: 'https://test.fr',
-          sgeLogin: 'test@test.com',
-          contractId: '134567',
-          boBaseUrl: 'https://botest.grandlyon.com/',
-          boToken: 'tok31n',
-          apiAuthKey: 'authkeYeasqqd56dsdq',
-        }
+      ? JSON.parse(process.env.COZY_FIELDS)
       : JSON.parse(process.env.COZY_PARAMETERS).secret
   } catch (err) {
     throw new Error(
diff --git a/src/onDeleteAccount.js b/src/onDeleteAccount.js
index cbf7f99..dd4acbe 100644
--- a/src/onDeleteAccount.js
+++ b/src/onDeleteAccount.js
@@ -14,12 +14,23 @@ const ACCOUNT_ID = isLocal() ? 'default_account_id' : 'enedis-sge-grandlyon'
 async function onDeleteAccount() {
   log('info', 'Deleting account ...')
   log('info', 'Getting secrets ...')
-  const secrets = getAccountSecret()
+
   const accountRev = getAccountRev()
 
   if (accountRev) {
     log('info', 'Account rev exist')
     const accountData = await getAccount(ACCOUNT_ID)
+    // Parse local info for deletion test
+    if (isLocal()) {
+      const fields = JSON.parse(
+        process.env.COZY_FIELDS ? process.env.COZY_FIELDS : '{}'
+      )
+      process.env.COZY_FIELDS = JSON.stringify({
+        ...fields,
+        ...accountData.auth,
+      })
+    }
+    const secrets = getAccountSecret()
     const userConsent = await getBoConsent(
       secrets.boBaseUrl,
       secrets.boToken,
@@ -35,8 +46,8 @@ async function onDeleteAccount() {
           userConsent.ID
         )
         await terminateContract(
-          secrets.baseUrl,
-          secrets.apiAuthKey,
+          secrets.wso2BaseUrl,
+          secrets.apiToken,
           secrets.sgeLogin,
           secrets.contractId,
           userConsent.pointID,
-- 
GitLab