示例#1
0
文件: base.py 项目: napix/NapixServer
    def _cast_managed_class(self):
        if self.managed_class is None:
            return []

        if isinstance(self.managed_class, (basestring, ManagerType)):
            raise ImproperlyConfigured(
                'Depreciation Error, direct_plug=True of {0}.'
                '{1} are not supported anymore'.format(self.__module__,
                                                       self.__name__))

        if not isinstance(self.managed_class, collections.Iterable):
            raise ImproperlyConfigured(
                'managed_class attribute of {0} is not an list'.format(
                    self.__name__))

        managed_classes = list(self.managed_class)
        for i, managed_class in enumerate(managed_classes):
            if isinstance(managed_class, ManagedClass):
                continue
            managed_classes[i] = ManagedClass(managed_class)
        return managed_classes
示例#2
0
 def test_rewrite_extractor(self):
     extractor = mock.Mock()
     mc = ManagedClass(self.manager, extractor=extractor)
     self.assertEqual(mc.extractor, extractor)
示例#3
0
 def test_rewrite_name(self):
     mc = ManagedClass(self.manager, name='other')
     self.assertEqual(mc.get_name(), 'other')
示例#4
0
 def test_name(self):
     mc = ManagedClass(self.manager)
     self.assertEqual(mc.get_name(), self.manager.get_name())
示例#5
0
 def test_name_not_resolved(self):
     mc = ManagedClass('a.b.C')
     self.assertRaises(ValueError, mc.get_name)
示例#6
0
 def test_resovle(self):
     mc = ManagedClass('a.b.C')
     mc.resolve(self.manager)
     self.assertTrue(mc.is_resolved())
示例#7
0
 def test_is_resolved(self):
     mc = ManagedClass('a.b.C')
     self.assertFalse(mc.is_resolved())
示例#8
0
 def testTrueManagedClass(self):
     self.assertRaises(ImproperlyConfigured, ManagerType,
                       'Manager', (Manager,), {
                           'managed_class': ManagedClass('abc', 'ploc')
                       })
示例#9
0
 def testFalseString(self):
     m = ManagerType('Manager', (Manager,), {
         'managed_class': ['abc']
     })
     self.assertEqual(m.get_managed_classes(), [ManagedClass('abc')])
示例#10
0
 def testFalseManagedClass(self):
     m = ManagerType('Manager', (Manager,), {
         'managed_class': [ManagedClass(self.SubManager, 'ploc')]
     })
     self.assertEqual(m.get_managed_classes(), [
                      ManagedClass(self.SubManager, 'ploc')])