def test_2(self): invoker = FunctionInvoker() invoker.provide_object('5') with self.assertRaises(TypeNotFoundError): invoker.invoke(func2) # abc has no type invoker.provide_object(8, provide_name='abce') self.assertEqual(invoker.invoke(func2), 8)
def test_4(self): invoker = FunctionInvoker() invoker.provide_object('4', provide_name="abc") invoker.provide_object('5') invoker2 = invoker.create_transient() invoker2.provide_object('6') self.assertEqual(invoker.invoke(func1), '4') self.assertEqual(invoker2.invoke(func1), '4') # because match name and type, so return '4' invoker3 = invoker.create_transient() invoker3.provide_object('7', provide_name="abc") self.assertEqual(invoker.invoke(func1), '4') self.assertEqual(invoker2.invoke(func1), '4') self.assertEqual(invoker3.invoke(func1), '7')
def test_3(self): invoker = FunctionInvoker() invoker.provide_object(3) self.assertEqual(invoker.invoke(func3), 3) invoker2 = FunctionInvoker() invoker2.provide_object(3) invoker2.provide_object('4') self.assertEqual(invoker2.invoke(func3), 3) # should match first type (int) invoker3 = FunctionInvoker() invoker3.provide_object('4') invoker3.provide_object(3) self.assertEqual(invoker3.invoke(func3), 3) # should match first type (int) invoker4 = FunctionInvoker() invoker4.provide_object('4', provide_name='abc') invoker4.provide_object(3) self.assertEqual(invoker4.invoke(func3), '4')
def test_3(self): invoker = FunctionInvoker() invoker.provide_object('4', provide_name="abc") invoker.provide_object('5') self.assertEqual(invoker.invoke(func1), '4')
def test_2(self): invoker = FunctionInvoker() invoker.provide_object('4') invoker.provide_object('5') self.assertEqual(invoker.invoke(func1), '5')