From f1f38c32dc515d48c8ac38f11cf227f6f7bb85c5 Mon Sep 17 00:00:00 2001 From: Frank Knoll Date: Thu, 11 Jul 2024 11:24:05 +0200 Subject: [PATCH] refining ProportionalReportingRatiosPersisterTest --- .../ProportionalReportingRatiosPersister.py | 11 ++++++++--- ...roportionalReportingRatiosPersisterTest.py | 19 ++++++++++++------- 2 files changed, 20 insertions(+), 10 deletions(-) diff --git a/src/SymptomsCausedByVaccines/ProportionalReportingRatiosPersister.py b/src/SymptomsCausedByVaccines/ProportionalReportingRatiosPersister.py index e8160e4cbf4..65b9c474eb9 100644 --- a/src/SymptomsCausedByVaccines/ProportionalReportingRatiosPersister.py +++ b/src/SymptomsCausedByVaccines/ProportionalReportingRatiosPersister.py @@ -1,7 +1,12 @@ import shutil from IOUtils import IOUtils -def saveProportionalReportingRatios(prrByVaccineBySymptom, directory): +def saveProportionalReportingRatios(prrBySymptomByDrug, directory): shutil.rmtree(directory, ignore_errors = True) - for symptom, prrByVaccine in prrByVaccineBySymptom.items(): - IOUtils.saveDictAsJson(prrByVaccine, f'{directory}/{symptom}.json') + drugByFilename = {} + i = 0 + for drug, prrBySymptom in prrBySymptomByDrug.items(): + i += 1 + drugByFilename[f'{i}.json'] = drug + IOUtils.saveDictAsJson(prrBySymptom, f'{directory}/{i}.json') + IOUtils.saveDictAsJson(drugByFilename, f'{directory}/drugByFilename.json') diff --git a/src/SymptomsCausedByVaccines/ProportionalReportingRatiosPersisterTest.py b/src/SymptomsCausedByVaccines/ProportionalReportingRatiosPersisterTest.py index cc94d01795b..18fc00dd39d 100644 --- a/src/SymptomsCausedByVaccines/ProportionalReportingRatiosPersisterTest.py +++ b/src/SymptomsCausedByVaccines/ProportionalReportingRatiosPersisterTest.py @@ -10,19 +10,24 @@ class ProportionalReportingRatiosPersisterTest(unittest.TestCase): def test_saveProportionalReportingRatios(self): # Given - prrBySymptom = {'Sepsis ': 366.3084378480811} + drug = '"GENERIC COLD ACID" ' + prrBySymptom = { 'Sepsis ': 366.3084378480811 } prrBySymptomByDrug = TestHelper.createSeries( indexName = 'DRUG', - data = { - '"GENERIC COLD ACID" ': prrBySymptom - }) + data = { drug: prrBySymptom }) + directory = 'src/tmp/vaccines' # When - saveProportionalReportingRatios(prrBySymptomByDrug, 'src/tmp/vaccines') + saveProportionalReportingRatios(prrBySymptomByDrug, directory) # Then - data = ProportionalReportingRatiosPersisterTest.readJsonFile('src/tmp/vaccines/"GENERIC COLD ACID" .json') - self.assertDictEqual(data, prrBySymptom) + drugFilename = '1.json' + self.assertDictEqual( + ProportionalReportingRatiosPersisterTest.readJsonFile(f'{directory}/{drugFilename}'), + prrBySymptom) + self.assertDictEqual( + ProportionalReportingRatiosPersisterTest.readJsonFile(f'{directory}/drugByFilename.json'), + { drugFilename: drug }) @staticmethod def readJsonFile(file):