summaryrefslogtreecommitdiff
path: root/tests/test_base.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/test_base.py')
-rw-r--r--tests/test_base.py59
1 files changed, 13 insertions, 46 deletions
diff --git a/tests/test_base.py b/tests/test_base.py
index 7ec3d0e..7575ee2 100644
--- a/tests/test_base.py
+++ b/tests/test_base.py
@@ -35,25 +35,19 @@ class TestObject(object):
self.four = four
class FakeDjangoModel(object):
- @classmethod
- def create(cls, **kwargs):
- instance = cls(**kwargs)
- instance.id = 1
- return instance
+ class FakeDjangoManager(object):
+ def create(self, **kwargs):
+ fake_model = FakeDjangoModel(**kwargs)
+ fake_model.id = 1
+ return fake_model
+
+ objects = FakeDjangoManager()
def __init__(self, **kwargs):
for name, value in kwargs.iteritems():
setattr(self, name, value)
self.id = None
-class FakeModelFactory(base.Factory):
- ABSTRACT_FACTORY = True
-
- @classmethod
- def _create(cls, target_class, *args, **kwargs):
- return target_class.create(**kwargs)
-
-
class TestModel(FakeDjangoModel):
pass
@@ -73,8 +67,6 @@ class FactoryTestCase(unittest.TestCase):
def testLazyAttributeNonExistentParam(self):
class TestObjectFactory(base.Factory):
- FACTORY_FOR = TestObject
-
one = declarations.LazyAttribute(lambda a: a.does_not_exist )
self.assertRaises(AttributeError, TestObjectFactory)
@@ -82,13 +74,9 @@ class FactoryTestCase(unittest.TestCase):
def testInheritanceWithSequence(self):
"""Tests that sequence IDs are shared between parent and son."""
class TestObjectFactory(base.Factory):
- FACTORY_FOR = TestObject
-
one = declarations.Sequence(lambda a: a)
class TestSubFactory(TestObjectFactory):
- FACTORY_FOR = TestObject
-
pass
parent = TestObjectFactory.build()
@@ -109,8 +97,6 @@ class FactoryDefaultStrategyTestCase(unittest.TestCase):
base.Factory.default_strategy = base.BUILD_STRATEGY
class TestModelFactory(base.Factory):
- FACTORY_FOR = TestModel
-
one = 'one'
test_model = TestModelFactory()
@@ -120,9 +106,7 @@ class FactoryDefaultStrategyTestCase(unittest.TestCase):
def testCreateStrategy(self):
# Default default_strategy
- class TestModelFactory(FakeModelFactory):
- FACTORY_FOR = TestModel
-
+ class TestModelFactory(base.Factory):
one = 'one'
test_model = TestModelFactory()
@@ -133,8 +117,6 @@ class FactoryDefaultStrategyTestCase(unittest.TestCase):
base.Factory.default_strategy = base.STUB_STRATEGY
class TestModelFactory(base.Factory):
- FACTORY_FOR = TestModel
-
one = 'one'
test_model = TestModelFactory()
@@ -145,16 +127,12 @@ class FactoryDefaultStrategyTestCase(unittest.TestCase):
base.Factory.default_strategy = 'unknown'
class TestModelFactory(base.Factory):
- FACTORY_FOR = TestModel
-
one = 'one'
self.assertRaises(base.Factory.UnknownStrategy, TestModelFactory)
def testStubWithNonStubStrategy(self):
class TestModelFactory(base.StubFactory):
- FACTORY_FOR = TestModel
-
one = 'one'
TestModelFactory.default_strategy = base.CREATE_STRATEGY
@@ -167,8 +145,6 @@ class FactoryDefaultStrategyTestCase(unittest.TestCase):
def test_change_strategy(self):
@base.use_strategy(base.CREATE_STRATEGY)
class TestModelFactory(base.StubFactory):
- FACTORY_FOR = TestModel
-
one = 'one'
self.assertEqual(base.CREATE_STRATEGY, TestModelFactory.default_strategy)
@@ -182,10 +158,8 @@ class FactoryCreationTestCase(unittest.TestCase):
self.assertTrue(isinstance(TestFactory.build(), TestObject))
def testAutomaticAssociatedClassDiscovery(self):
- with warnings.catch_warnings():
- warnings.simplefilter('ignore')
- class TestObjectFactory(base.Factory):
- pass
+ class TestObjectFactory(base.Factory):
+ pass
self.assertTrue(isinstance(TestObjectFactory.build(), TestObject))
@@ -194,7 +168,8 @@ class FactoryCreationTestCase(unittest.TestCase):
with warnings.catch_warnings(record=True) as w:
# Clear the warning registry.
- __warningregistry__.clear()
+ if hasattr(base, '__warningregistry__'):
+ base.__warningregistry__.clear()
warnings.simplefilter('always')
class TestObjectFactory(base.Factory):
@@ -211,8 +186,6 @@ class FactoryCreationTestCase(unittest.TestCase):
def testInheritanceWithStub(self):
class TestObjectFactory(base.StubFactory):
- FACTORY_FOR = TestObject
-
pass
class TestFactory(TestObjectFactory):
@@ -221,9 +194,7 @@ class FactoryCreationTestCase(unittest.TestCase):
self.assertEqual(TestFactory.default_strategy, base.STUB_STRATEGY)
def testCustomCreation(self):
- class TestModelFactory(FakeModelFactory):
- FACTORY_FOR = TestModel
-
+ class TestModelFactory(base.Factory):
@classmethod
def _prepare(cls, create, **kwargs):
kwargs['four'] = 4
@@ -262,16 +233,12 @@ class PostGenerationParsingTestCase(unittest.TestCase):
def test_extraction(self):
class TestObjectFactory(base.Factory):
- FACTORY_FOR = TestObject
-
foo = declarations.PostGenerationDeclaration()
self.assertIn('foo', TestObjectFactory._postgen_declarations)
def test_classlevel_extraction(self):
class TestObjectFactory(base.Factory):
- FACTORY_FOR = TestObject
-
foo = declarations.PostGenerationDeclaration()
foo__bar = 42