From 65698934fd9f49b6799e91adea26e21e7acd6cd7 Mon Sep 17 00:00:00 2001
From: Martin Bauer <martin.bauer@fau.de>
Date: Tue, 10 Apr 2018 13:37:46 +0200
Subject: [PATCH] Added test for pystencils ParameterStudy

---
 runhelper/parameterstudy.py | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/runhelper/parameterstudy.py b/runhelper/parameterstudy.py
index 716332f56..6a4089f16 100644
--- a/runhelper/parameterstudy.py
+++ b/runhelper/parameterstudy.py
@@ -35,6 +35,7 @@ class ParameterStudy:
           ...     ps.add_combinations( [('p1', [1, 2]),
           ...                           ('p3', ['x', 'y'])], constant_parameters={'p2': 5, 'p4': 'z' })
           ...     ps.run()
+          ...     ps.run_scenarios_not_in_database()
           ...     ps.run_from_command_line(argv=['local'])  # alternative to run - exposes a command line interface if
           ...                                               # no argv is passed. Does not run anything here, because
           ...                                               # configuration already in database are skipped
@@ -192,11 +193,11 @@ class ParameterStudy:
                 mapping = {'/next_scenario': self.next_scenario,
                            '/result': self.result}
                 if self.path in mapping.keys():
-                    data = self.rfile.read(int(self.headers['Content-Length']))
+                    data = self._read_contents()
                     self.send_response(200)
                     self.send_header("Content-type", "application/json")
                     self.end_headers()
-                    json_data = json.loads(data.decode())
+                    json_data = json.loads(data)
                     response = mapping[self.path](json_data)
                     self.wfile.write(json.dumps(response).encode())
                 else:
@@ -206,6 +207,9 @@ class ParameterStudy:
             def do_GET(self):
                 return self.do_POST()
 
+            def _read_contents(self):
+                return self.rfile.read(int(self.headers['Content-Length'])).decode()
+
             def log_message(self, fmt, *args):
                 return
 
-- 
GitLab