diff --git a/tests/base/hash_test.py b/tests/base/hash_test.py new file mode 100644 index 00000000..318d39f8 --- /dev/null +++ b/tests/base/hash_test.py @@ -0,0 +1,18 @@ +import pytest + +from ._base import BaseTestClass + +@pytest.mark.hash +class BaseHashTest(BaseTestClass): + + def pytest_generate_tests(self, metafunc): + + object_instances = self.fixture_instances('valid') + + if "instance" in metafunc.fixturenames: + metafunc.parametrize("instance", object_instances) + + def test_generates_hash(self, instance): + """Test to check for bug introduced in Pydantic 1.8""" + + assert instance.__hash__ is not None diff --git a/tests/operator/operator_test.py b/tests/operator/operator_test.py index 1d007119..dc307312 100644 --- a/tests/operator/operator_test.py +++ b/tests/operator/operator_test.py @@ -2,6 +2,7 @@ from tests.base.io_test import BaseIOTest from tests.base.value_error import BaseValueErrorTest from tests.base.folder_test import BaseFolderTest +from tests.base.hash_test import BaseHashTest from queenbee.plugin import Plugin @@ -27,3 +28,10 @@ class TestFolder(BaseFolderTest): klass = Plugin asset_folder = ASSET_FOLDER + + +class TestHash(BaseHashTest): + + klass = Plugin + + asset_folder = ASSET_FOLDER diff --git a/tests/recipe/recipe_test.py b/tests/recipe/recipe_test.py index c44a6d24..47dd417a 100644 --- a/tests/recipe/recipe_test.py +++ b/tests/recipe/recipe_test.py @@ -1,6 +1,7 @@ from tests.base.io_test import BaseIOTest from tests.base.value_error import BaseValueErrorTest from tests.base.folder_test import BaseFolderTest +from tests.base.hash_test import BaseHashTest from queenbee.recipe import Recipe @@ -26,3 +27,10 @@ class TestFolder(BaseFolderTest): klass = Recipe asset_folder = ASSET_FOLDER + + +class TestHash(BaseHashTest): + + klass = Recipe + + asset_folder = ASSET_FOLDER