(self, config, expected_ids, output_types)
| 166 | @parameterized.expand([TEST_CASE_1]) |
| 167 | @skipUnless(has_tv, "Requires torchvision >= 0.8.0.") |
| 168 | def test_parse(self, config, expected_ids, output_types): |
| 169 | parser = ConfigParser(config=config, globals={"monai": "monai"}) |
| 170 | # test lazy instantiation with original config content |
| 171 | parser["transform"]["transforms"][0]["keys"] = "label1" |
| 172 | trans = parser.get_parsed_content(id="transform#transforms#0") |
| 173 | self.assertEqual(trans.keys[0], "label1") |
| 174 | # test re-use the parsed content or not with the `lazy` option |
| 175 | self.assertEqual(trans, parser.get_parsed_content(id="transform#transforms#0")) |
| 176 | self.assertEqual(trans, parser.get_parsed_content(id="transform#transforms#0", lazy=True)) |
| 177 | self.assertNotEqual(trans, parser.get_parsed_content(id="transform#transforms#0", lazy=False)) |
| 178 | # test new nested id |
| 179 | parser.set("fake_key", "transform#other_transforms#keys", True) |
| 180 | self.assertEqual(parser.get(id="transform#other_transforms#keys"), "fake_key") |
| 181 | # remove temp fake data |
| 182 | parser["transform"].pop("other_transforms") |
| 183 | # test update nested id |
| 184 | parser["transform#transforms#0#keys"] = "label2" |
| 185 | self.assertEqual(parser.get_parsed_content(id="transform#transforms#0").keys[0], "label2") |
| 186 | |
| 187 | for id, cls in zip(expected_ids, output_types): |
| 188 | self.assertTrue(isinstance(parser.get_parsed_content(id), cls)) |
| 189 | # test root content |
| 190 | root = parser.get_parsed_content(id="") |
| 191 | for v, cls in zip(root.values(), [Compose, Dataset, DataLoader]): |
| 192 | self.assertTrue(isinstance(v, cls)) |
| 193 | # test default value |
| 194 | self.assertEqual(parser.get_parsed_content(id="abc", default=ConfigItem(12345, "abc")), 12345) |
| 195 | self.assertEqual(parser.get_parsed_content(id="abcd", default=1), 1) |
| 196 | |
| 197 | @parameterized.expand([TEST_CASE_2]) |
| 198 | def test_function(self, config): |
nothing calls this directly
no test coverage detected