diff options
Diffstat (limited to 'ishtar_common')
| -rw-r--r-- | ishtar_common/tests.py | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/ishtar_common/tests.py b/ishtar_common/tests.py index b4b1bb16e..7dd687873 100644 --- a/ishtar_common/tests.py +++ b/ishtar_common/tests.py @@ -268,6 +268,36 @@ class SearchText: self.assertEqual(res["recordsTotal"], expected_result, msg=msg) +class StatisticsTest: + MODEL = None + SEARCH_URL = None + + def test_base_statistics(self): + if not self.MODEL: + raise NotImplementedError("MODEL attribute must be set on the class") + if not self.SEARCH_URL: + raise NotImplementedError("SEARCH_URL attribute must be set on the class") + c = Client() + + base_extra = "json-stats?submited=1" + response = c.get(reverse(self.SEARCH_URL) + base_extra) + # empty when not allowed + if response.status_code == 200: + self.assertEqual(response.status_code, 200) + content = json.loads(response.content.decode("utf-8")) + self.assertEqual(content, []) + c.login(username=self.username, password=self.password) + + base_extra += "&stats_sum_variable=pk&stats_modality_1=" + for modality in self.MODEL.STATISTIC_MODALITIES_OPTIONS: + response = c.get(reverse(self.SEARCH_URL) + base_extra + modality) + self.assertEqual(response.status_code, 200) + # only verify a response is sent + # TODO: check more + content = json.loads(response.content.decode("utf-8")) + self.assertTrue(len(content["data"]) > 0) + + class CommandsTestCase(TestCase): fixtures = [LIB_BASE_PATH + "ishtar_common/fixtures/test_towns.json"] |
