def test_registered(self): is_registered = self.builder.name in load.list_builders( with_community_datasets=False, ) self.assertTrue( is_registered, f"Dataset {self.builder.name} was not registered.", )
def test_custom_name(): """Tests that builder can have custom names.""" class SomeCustomNameBuilder(registered.RegisteredDataset): name = "custom_name" assert "custom_name" == SomeCustomNameBuilder.name assert "custom_name" in load.list_builders()
def test_registered(self): is_registered = self.builder.name in load.list_builders() exceptions = self.builder.IN_DEVELOPMENT self.assertTrue( is_registered or exceptions, "Dataset {} was not registered and is " "not `IN_DEVELOPMENT`.".format(self.builder.name))
def test_abstract(self): name = "unregistered_builder" self.assertEqual(name, UnregisteredBuilder.name) self.assertNotIn(name, load.list_builders()) with self.assertRaisesWithPredicateMatch(ValueError, "an abstract class"): load.builder(name)
def test_skip_regitration_kwarg(): """Test `class Dataset(..., skip_registration=True)`.""" class SkipDataset(registered.RegisteredDataset, skip_registration=True): pass name = "skip_dataset" assert name == SkipDataset.name assert name not in load.list_builders()
def test_in_development(self): name = "in_development_dataset_builder" self.assertEqual(name, InDevelopmentDatasetBuilder.name) self.assertNotIn(name, load.list_builders()) with self.assertRaisesWithPredicateMatch( ValueError, ("Dataset %s is under active development and is not available yet." ) % name): load.builder(name)
def test_notebook_overwrite_dataset(self): """Redefining the same builder twice is possible on colab.""" with mock.patch.object(py_utils, "is_notebook", lambda: True): name = "colab_builder" self.assertNotIn(name, load.list_builders()) class ColabBuilder(registered.RegisteredDataset): pass self.assertIn(name, load.list_builders()) self.assertIsInstance(load.builder(name), ColabBuilder) old_colab_class = ColabBuilder class ColabBuilder(registered.RegisteredDataset): # pylint: disable=function-redefined pass self.assertIsInstance(load.builder(name), ColabBuilder) self.assertNotIsInstance(load.builder(name), old_colab_class)
def test_skip_regitration(): """Test `skip_registration()`.""" with registered.skip_registration(): class SkipRegisteredDataset(registered.RegisteredDataset): pass name = "skip_registered_dataset" assert name == SkipRegisteredDataset.name assert name not in load.list_builders()
def test_registered(self): name = "empty_dataset_builder" self.assertEqual(name, EmptyDatasetBuilder.name) self.assertIsInstance(load.builder(name), EmptyDatasetBuilder) self.assertIn(name, load.list_builders()) nonexistent = "nonexistent_foobar_dataset" with self.assertRaisesWithPredicateMatch(ValueError, "not found"): load.builder(nonexistent) # Prints registered datasets with self.assertRaisesWithPredicateMatch(ValueError, name): load.builder(nonexistent)
def test_skip_regitration(self): """Test `skip_registration()`.""" with registered.skip_registration(): @six.add_metaclass(registered.RegisteredDataset) class SkipRegisteredDataset(object): pass name = "skip_registered_dataset" self.assertEqual(name, SkipRegisteredDataset.name) self.assertNotIn(name, load.list_builders())
def test_community_public_load(): with mock.patch( 'tensorflow_datasets.core.community.community_register.list_builders', return_value=['ns:ds'], ), mock.patch( 'tensorflow_datasets.core.community.community_register.builder_cls', return_value=testing.DummyDataset, ): assert load.list_builders() == ['ns:ds'] # Builder is correctly returned assert load.builder_cls('ns:ds') is testing.DummyDataset assert isinstance(load.builder('ns:ds'), testing.DummyDataset)
def test_import(): builder_cls = load.builder_cls_from_module( 'tensorflow_datasets.testing.dummy_dataset.dummy_dataset') assert builder_cls.__name__ == 'DummyDataset' # Module should have been cached builder_cls_2 = load.builder_cls_from_module( 'tensorflow_datasets.testing.dummy_dataset.dummy_dataset') assert builder_cls is builder_cls_2 from tensorflow_datasets.testing.dummy_dataset import dummy_dataset # pylint: disable=g-import-not-at-top assert builder_cls is dummy_dataset.DummyDataset assert builder_cls.__name__ not in core_load.list_builders()
def test_registered(self): self.assertIn(self.builder.name, load.list_builders(with_community_datasets=False, ))
def test_registered(self): is_registered = self.builder.name in load.list_builders() self.assertTrue( is_registered, f"Dataset {self.builder.name} was not registered.", )
def test_not_registered(): """Ensure the ReadOnlyBuilder is not registered.""" assert read_only_builder.ReadOnlyBuilder.name not in load.list_builders()