From 72de8362de27d0380c2b164ae1b5452ba4227dd8 Mon Sep 17 00:00:00 2001
From: Hugo SUBTIL <ext.sopra.husubtil@grandlyon.com>
Date: Mon, 2 May 2022 10:36:18 +0200
Subject: [PATCH] fix: request refactor

---
 src/index.js   | 29 +----------------------------
 src/parsing.js | 35 +++++++++++++++++++++++++++++++++++
 2 files changed, 36 insertions(+), 28 deletions(-)
 create mode 100644 src/parsing.js

diff --git a/src/index.js b/src/index.js
index ab1d329..bef6f9c 100644
--- a/src/index.js
+++ b/src/index.js
@@ -10,6 +10,7 @@ const moment = require('moment')
 require('moment-timezone')
 const xml2js = require('xml2js')
 const { buildAgregatedData } = require('./aggregate')
+const { parseSgeXmlData, parseSgeXmlTechnicalData } = require('./parsing')
 const { userTechnicalData, userMesureDetailles } = require('./request')
 moment.locale('fr') // set the language
 moment.tz.setDefault('Europe/Paris') // set the timezone
@@ -279,34 +280,6 @@ function processStartDate() {
   }
 }
 
-/**
- * Return start date
- * @param {string} result
- * @returns {string}
- */
-function parseSgeXmlTechnicalData(result) {
-  log('info', 'Parsing technical data')
-  let json = JSON.stringify(result)
-  return JSON.parse(json)['Envelope']['Body'][
-    'consulterDonneesTechniquesContractuellesResponse'
-  ]['point']['donneesGenerales'][
-    'dateDerniereModificationFormuleTarifaireAcheminement'
-  ]
-}
-
-/**
- *
- * @param {string} result
- * @returns {SGEData[]}
- */
-function parseSgeXmlData(result) {
-  log('info', 'Parsing list of documents')
-  let json = JSON.stringify(result)
-  return JSON.parse(json)['Envelope']['Body'][
-    'consulterMesuresDetailleesResponse'
-  ]['grandeur']['mesure']
-}
-
 /**
  * Save data in the right doctype db and prevent duplicated keys
  * @param {EnedisKonnectorData[]} data
diff --git a/src/parsing.js b/src/parsing.js
new file mode 100644
index 0000000..f8c417e
--- /dev/null
+++ b/src/parsing.js
@@ -0,0 +1,35 @@
+// @ts-check
+const { log } = require('cozy-konnector-libs')
+
+/**
+ * Return start date
+ * @param {string} result
+ * @returns {string}
+ */
+function parseSgeXmlTechnicalData(result) {
+  log('info', 'Parsing technical data')
+  let json = JSON.stringify(result)
+  return JSON.parse(json)['Envelope']['Body'][
+    'consulterDonneesTechniquesContractuellesResponse'
+  ]['point']['donneesGenerales'][
+    'dateDerniereModificationFormuleTarifaireAcheminement'
+  ]
+}
+
+/**
+ *
+ * @param {string} result
+ * @returns {SGEData[]}
+ */
+function parseSgeXmlData(result) {
+  log('info', 'Parsing list of documents')
+  let json = JSON.stringify(result)
+  return JSON.parse(json)['Envelope']['Body'][
+    'consulterMesuresDetailleesResponse'
+  ]['grandeur']['mesure']
+}
+
+module.exports = {
+  parseSgeXmlData,
+  parseSgeXmlTechnicalData,
+}
-- 
GitLab