changeset 4351:47aa3be2a7de

client: allow testing of Available FDLNW diagram * Change store/fairwayavailability.js to do the formatting in a mutation for loadAvailableFairwayDepthLNWLDiagram() and thus make it possible to set the data for testing.
author Bernhard Reiter <bernhard@intevation.de>
date Mon, 09 Sep 2019 14:42:55 +0200
parents e4e32c77ed83
children 6365466ead83
files client/src/store/fairwayavailability.js
diffstat 1 files changed, 33 insertions(+), 34 deletions(-) [+]
line wrap: on
line diff
--- a/client/src/store/fairwayavailability.js	Mon Sep 09 14:34:17 2019 +0200
+++ b/client/src/store/fairwayavailability.js	Mon Sep 09 14:42:55 2019 +0200
@@ -178,12 +178,6 @@
     setSelectedFairwayAvailability: (state, feature) => {
       state.selectedFairwayAvailabilityFeature = feature;
     },
-    setFwLNWLData: (state, fwLNWLData) => {
-      state.fwLNWLData = fwLNWLData;
-    },
-    setCSV: (state, csv) => {
-      state.csv = csv;
-    },
     addFwLNWLOverviewData: (state, data) => {
       let existingIndex = state.fwLNWLOverviewData.findIndex(
         d => d.feature.get("id") === data.feature.get("id")
@@ -212,6 +206,37 @@
       });
 
       state.fwData = transformAFD(csv);
+    },
+    // See docs/developers.md for an example how to directly
+    // call this method for testing.
+    setAvailableFairwayDepthLNWLData: (state, data) => {
+      state.csv = data;
+
+      data = data.split("\n").filter(d => d);
+      data.shift(); // remove header line
+      data = data.map(d => {
+        let columns = d.split(",");
+        let result;
+        if (columns.length === 6) {
+          result = {
+            date: columns[0],
+            ldc: Number(columns[2]),
+            below: Number(columns[3]),
+            between: Number(columns[4]),
+            above: Number(columns[5])
+          };
+        } else {
+          result = {
+            date: columns[0],
+            ldc: Number(columns[2]),
+            below: Number(columns[3]),
+            between: null,
+            above: Number(columns[4])
+          };
+        }
+        return result;
+      });
+      state.fwLNWLData = data;
     }
   },
   actions: {
@@ -306,34 +331,8 @@
       });
     },
     loadAvailableFairwayDepthLNWLDiagram: ({ commit, dispatch }, options) => {
-      dispatch("loadAvailableFairwayDepthLNWL", options).then(response => {
-        commit("setCSV", response);
-        let data = response.split("\n").filter(d => d);
-        data.shift(); // remove header line
-        data = data.map(d => {
-          let columns = d.split(",");
-          let result;
-          if (columns.length === 6) {
-            result = {
-              date: columns[0],
-              ldc: Number(columns[2]),
-              below: Number(columns[3]),
-              between: Number(columns[4]),
-              above: Number(columns[5])
-            };
-          } else {
-            result = {
-              date: columns[0],
-              ldc: Number(columns[2]),
-              below: Number(columns[3]),
-              between: null,
-              above: Number(columns[4])
-            };
-          }
-          return result;
-        });
-        commit("setFwLNWLData", data);
-        return data;
+      dispatch("loadAvailableFairwayDepthLNWL", options).then(data => {
+        commit("setAvailableFairwayDepthLNWLData", data);
       });
     },
     loadAvailableFairwayDepthLNWLForMap: ({ dispatch }, options) => {