diff options
Diffstat (limited to 'tests/test_base.py')
-rw-r--r-- | tests/test_base.py | 59 |
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 |