Пример #1
0
 def test_dictionary(self):
     decorated = {os.path.join: {"A": 1}, Test.read.im_func: {"B": 2}, Test.write.im_func: {"C": 3}}
     collator = Collator()
     classes, functions = collator.collate(decorated)
     self.assertEqual(classes, {Test: [(Test.read, {"B": 2}), (Test.write, {"C": 3})]})
     self.assertEqual(len(functions), 1)
     self.assertEqual(functions.keys()[0].__name__, os.path.__name__)
     self.assertEqual(functions.values()[0], [(os.path.join, {"A": 1})])
Пример #2
0
 def test_list(self):
     decorated = [os.path.join, Test.read.im_func, Test.write.im_func]
     collator = Collator()
     classes, functions = collator.collate(decorated)
     self.assertEqual(classes, {Test: [(Test.read, None), (Test.write, None)]})
     self.assertEqual(len(functions), 1)
     self.assertEqual(functions.keys()[0].__name__, os.path.__name__)
     self.assertEqual(functions.values()[0], [(os.path.join, None)])
Пример #3
0
 def collated(cls):
     collated = []
     c = Collator()
     classes, functions = c.collate(cls.functions)
     for c in classes.keys():
         collated.append(c)
     for m in functions.keys():
         collated.append(m)
     return collated
Пример #4
0
 def collated():
     collated = []
     c = Collator()
     classes, functions = c.collate(Remote.functions)
     for c in classes.keys():
         collated.append(c)
     for m in functions.keys():
         m.__name__ = m.__name__.split('.')[-1]
         collated.append(m)
     return collated
Пример #5
0
 def test_dictionary(self):
     decorated = {
         os.path.join: {'A': 1},
         Test.read.im_func: {'B': 2},
         Test.write.im_func: {'C': 3},
     }
     collator = Collator()
     classes, functions = collator.collate(decorated)
     self.assertEqual(classes, {Test: [(Test.read, {'B': 2}), (Test.write, {'C': 3})]})
     self.assertEqual(len(functions), 1)
     self.assertEqual(functions.keys()[0].__name__, os.path.__name__)
     self.assertEqual(functions.values()[0], [(os.path.join, {'A': 1})])
Пример #6
0
 def test_list(self):
     decorated = [
         os.path.join,
         Test.read.im_func,
         Test.write.im_func,
     ]
     collator = Collator()
     classes, functions = collator.collate(decorated)
     self.assertEqual(classes, {Test: [(Test.read, None), (Test.write, None)]})
     self.assertEqual(len(functions), 1)
     self.assertEqual(functions.keys()[0].__name__, os.path.__name__)
     self.assertEqual(functions.values()[0], [(os.path.join, None)])
Пример #7
0
 def test_collate(self, _functions, _map):
     func_globals = {"A": 1}
     _fn1 = Mock()
     _fn1.func_globals = func_globals
     _fn2 = Mock()
     _fn2.func_globals = func_globals
     decorated = [_fn1, _fn2]
     collator = Collator()
     classes, functions = collator.collate(decorated)
     _functions.assert_called_with()
     _map.assert_called_with(func_globals)
     self.assertEqual(id(classes), id(collator.classes))
     self.assertEqual(functions, _functions())
Пример #8
0
 def test_collate(self, _functions, _map):
     func_globals = {'A': 1}
     _fn1 = Mock()
     _fn1.func_globals = func_globals
     _fn2 = Mock()
     _fn2.func_globals = func_globals
     decorated = [_fn1, _fn2]
     collator = Collator()
     classes, functions = collator.collate(decorated)
     _functions.assert_called_with()
     _map.assert_called_with(func_globals)
     self.assertEqual(id(classes), id(collator.classes))
     self.assertEqual(functions, _functions())
Пример #9
0
 def collated():
     collated = []
     collator = Collator()
     classes, functions = collator.collate(Actions.functions)
     for _class, methods in classes.items():
         inst = _class()
         for method, options in methods:
             method = getattr(inst, method.__name__)
             action = Action(method, **options)
             collated.append(action)
     for module, fn_list in functions.items():
         for function, options in fn_list:
             action = Action(function, **options)
             collated.append(action)
     return collated
Пример #10
0
 def collated():
     collated = []
     collator = Collator()
     classes, functions = collator.collate(Actions.functions)
     for _class, methods in classes.items():
         inst = _class()
         for method, options in methods:
             method = getattr(inst, method.__name__)
             action = Action(method, **options)
             collated.append(action)
     for module, fn_list in functions.items():
         for function, options in fn_list:
             action = Action(function, **options)
             collated.append(action)
     return collated
Пример #11
0
 def collated(cls):
     collated = []
     c = Collator()
     classes, functions = c.collate(cls.functions)
     for c, m in classes.items():
         inst = c()
         for m, d in m:
             m = getattr(inst, m.__name__)
             action = Action(m, **d)
             collated.append(action)
     for m, f in functions.items():
         for f, d in f:
             action = Action(f, **d)
             collated.append(action)
     return collated