Example #1
0
 def test_successful_uninstall(self):
     self.model = install("bar", orm="foo")(self.model)
     self.assertIn("foo", self.model.architect.__dict__)
     self.assertIn("bar", self.model.architect.__dict__)
     uninstall("bar")(self.model)
     self.assertNotIn("foo", self.model.architect.__dict__)
     self.assertNotIn("bar", self.model.architect.__dict__)
Example #2
0
 def test_successful_uninstall(self):
     self.model = install('bar', orm='foo')(self.model)
     self.assertIn('foo', self.model.architect.__dict__)
     self.assertIn('bar', self.model.architect.__dict__)
     uninstall('bar')(self.model)
     self.assertNotIn('foo', self.model.architect.__dict__)
     self.assertNotIn('bar', self.model.architect.__dict__)
Example #3
0
 def test_uninstall_restores_decorated_method(self):
     self.foo_feature.decorate = ("save",)
     self.foo_feature._decorate_save = staticmethod(lambda method: lambda *args, **kwargs: None)
     self.model = install("foo", orm="foo")(self.model)
     self.assertIsNone(self.model.save(self.model()))
     self.model = uninstall("foo")(self.model)
     self.assertEqual(self.model.save(self.model()), "save")
Example #4
0
 def test_uninstall_restores_decorated_method(self):
     self.foo_feature.decorate = ('save', )
     self.foo_feature._decorate_save = staticmethod(
         lambda method: lambda *args, **kwargs: None)
     self.model = install('foo', orm='foo')(self.model)
     self.assertIsNone(self.model.save(self.model()))
     self.model = uninstall('foo')(self.model)
     self.assertEqual(self.model.save(self.model()), 'save')
Example #5
0
    def test_raises_feature_uninstall_error(self):
        from architect.exceptions import FeatureUninstallError

        self.model = install("foo", orm="foo")(self.model)
        self.assertRaises(FeatureUninstallError, lambda: uninstall("bar")(self.model))
Example #6
0
 def test_merges_several_features(self):
     self.model = install("bar", orm="foo")(self.model)
     self.model = uninstall("foo")(self.model)
     self.model = install("foo", orm="foo")(self.model)
     self.assertIn("foo", self.model.architect.__dict__)
     self.assertIn("bar", self.model.architect.__dict__)
Example #7
0
 def test_merges_several_features(self):
     self.model = install('bar', orm='foo')(self.model)
     self.model = uninstall('foo')(self.model)
     self.model = install('foo', orm='foo')(self.model)
     self.assertIn('foo', self.model.architect.__dict__)
     self.assertIn('bar', self.model.architect.__dict__)
Example #8
0
 def test_raises_feature_uninstall_error(self):
     from architect.exceptions import FeatureUninstallError
     self.model = install('foo', orm='foo')(self.model)
     self.assertRaises(FeatureUninstallError, lambda: uninstall('bar')
                       (self.model))