diff --git a/importer/config.py b/importer/config.py new file mode 100644 index 00000000..e69de29b diff --git a/importer/test_main.py b/importer/test_main.py new file mode 100644 index 00000000..0af0ec9a --- /dev/null +++ b/importer/test_main.py @@ -0,0 +1,43 @@ +import json +import unittest +from main import ( + read_csv, + build_payload, + build_org_affiliation, + extract_matches +) + + +class TestMain(unittest.TestCase): + def test_read_csv(self): + csv_file = "csv/users.csv" + records = read_csv(csv_file) + self.assertIsInstance(records, list) + self.assertEqual(len(records), 3) + + def test_build_payload_organizations(self): + csv_file = "csv/organizations/organizations_full.csv" + resource_list = read_csv(csv_file) + payload = build_payload( + "organizations", + resource_list, + "json_payloads/organizations_payload.json" + ) + payload_obj = json.loads(payload) + self.assertIsInstance(payload_obj, dict) + self.assertEqual(payload_obj["resourceType"], "Bundle") + self.assertEqual(len(payload_obj['entry']), 3) + + def test_build_org_affiliation(self): + csv_file = "csv/organizations/organization_locations.csv" + resource_list = read_csv(csv_file) + resources = extract_matches(resource_list) + payload = build_org_affiliation(resources, resource_list) + payload_obj = json.loads(payload) + self.assertIsInstance(payload_obj, dict) + self.assertEqual(payload_obj["resourceType"], "Bundle") + self.assertEqual(len(payload_obj['entry']), 2) + + +if __name__ == "__main__": + unittest.main()