diff --git a/datatest/__init__.py b/datatest/__init__.py index fc66512..4534218 100644 --- a/datatest/__init__.py +++ b/datatest/__init__.py @@ -9,7 +9,6 @@ from .difference import * # Difference classes. from .allowance import * # Allowance context mangers. from ._required import group_requirement -from ._required import required from ._predicate import Predicate # Unittest-style API diff --git a/datatest/_required.py b/datatest/_required.py index 32a4ace..0b403c1 100644 --- a/datatest/_required.py +++ b/datatest/_required.py @@ -887,38 +887,3 @@ def check_group(self, group): differences = (Extra(element) for element in extras) description = 'may contain only elements of given superset' return differences, description - - -class required(abc.ABC): - """:class:`required` is an abstract factory class that returns - requirement objects. It contains several factory methods that can - be called directly to instantiate specific requirement types. - """ - def __new__(cls, *args, **kwds): - msg = ("Can't instantiate abstract class required, use factory " - "methods like required.unique(), required.subset(), etc.") - raise TypeError(msg) - - @classmethod - def unique(cls): - """Requires that elements are unique. - - .. code-block:: python - :emphasize-lines: 6 - - from datatest import validate - from datatest import required - - data = [1, 2, 3, ...] - - validate(data, required.unique()) - """ - return RequiredUnique() - - @classmethod - def subset(cls, set): - pass - - @classmethod - def superset(cls, set): - pass diff --git a/tests/test_required.py b/tests/test_required.py index 27cba3e..45129d1 100644 --- a/tests/test_required.py +++ b/tests/test_required.py @@ -31,7 +31,6 @@ from datatest._required import RequiredUnique from datatest._required import RequiredSubset from datatest._required import RequiredSuperset -from datatest._required import required from datatest.difference import NOTFOUND @@ -1669,22 +1668,3 @@ def test_single_element_handling(self): diff, desc = requirement((3, 4)) # <- Tuple is single element. diff = sorted(diff, key=lambda x: x.args) self.assertEqual(diff, [Extra((3, 4))]) - - -class TestRequiredFactory(unittest.TestCase): - def test_bad_init(self): - """The `required` factory should not be instantiated directly.""" - with self.assertRaises(TypeError): - required('foo') - - def test_unique(self): - requirement = required.unique() - self.assertIsInstance(requirement, RequiredUnique) - - @unittest.skip('not yet implemented') - def test_subset(self): - pass - - @unittest.skip('not yet implemented') - def test_superset(self): - pass