def testCreateInstance(self): """Test derived instances can be created from managed code""" object = SubClassTest.create_instance(DerivedClass) self.assertEqual(object.foo(), "bar") self.assertEqual(SubClassTest.test_foo(object), "bar") self.assertEqual(object.bar("bar", 2), "bar_bar") self.assertEqual(SubClassTest.test_bar(object, "bar", 2), "bar_bar") self.assertEqual(object.not_overriden(), "not_overriden") x = SubClassTest.pass_through(object) self.assertEqual(id(x), id(object))
def testDerivedClass(self): """Test python class derived from managed type""" object = DerivedClass() self.assertEqual(object.foo(), "bar") self.assertEqual(object.base_foo(), "foo") self.assertEqual(object.super_foo(), "foo") self.assertEqual(SubClassTest.test_foo(object), "bar") self.assertEqual(object.bar("bar", 2), "bar_bar") self.assertEqual(SubClassTest.test_bar(object, "bar", 2), "bar_bar") self.assertEqual(object.not_overriden(), "not_overriden") self.assertEqual(list(object.return_list()), ["A", "B", "C"]) self.assertEqual(list(SubClassTest.test_list(object)), ["A", "B", "C"]) x = SubClassTest.pass_through(object) self.assertEqual(id(x), id(object))
def testBaseClass(self): """Test base class managed type""" object = SubClassTest() self.assertEqual(object.foo(), "foo") self.assertEqual(SubClassTest.test_foo(object), "foo") self.assertEqual(object.bar("bar", 2), "bar") self.assertEqual(SubClassTest.test_bar(object, "bar", 2), "bar") self.assertEqual(object.not_overriden(), "not_overriden") self.assertEqual(list(object.return_list()), ["a", "b", "c"]) self.assertEqual(list(SubClassTest.test_list(object)), ["a", "b", "c"])
def test_base_class(): """Test base class managed type""" ob = SubClassTest() assert ob.foo() == "foo" assert FunctionsTest.test_foo(ob) == "foo" assert ob.bar("bar", 2) == "bar" assert FunctionsTest.test_bar(ob, "bar", 2) == "bar" assert ob.not_overriden() == "not_overriden" assert list(ob.return_list()) == ["a", "b", "c"] assert list(SubClassTest.test_list(ob)) == ["a", "b", "c"]
def testBaseClass(self): """Test base class managed type""" object = SubClassTest() self.assertEqual(object.foo(), "foo") self.assertEqual(TestFunctions.test_foo(object), "foo") self.assertEqual(object.bar("bar", 2), "bar") self.assertEqual(TestFunctions.test_bar(object, "bar", 2), "bar") self.assertEqual(object.not_overriden(), "not_overriden") self.assertEqual(list(object.return_list()), ["a", "b", "c"]) self.assertEqual(list(SubClassTest.test_list(object)), ["a", "b", "c"])
def testDerivedClass(self): """Test python class derived from managed type""" object = DerivedClass() self.assertEqual(object.foo(), "DerivedClass") self.assertEqual(object.base_foo(), "foo") self.assertEqual(object.super_foo(), "foo") self.assertEqual(TestFunctions.test_foo(object), "DerivedClass") self.assertEqual(object.bar("bar", 2), "bar_bar") self.assertEqual(TestFunctions.test_bar(object, "bar", 2), "bar_bar") self.assertEqual(object.not_overriden(), "not_overriden") self.assertEqual(list(object.return_list()), ["A", "B", "C"]) self.assertEqual(list(SubClassTest.test_list(object)), ["A", "B", "C"]) x = TestFunctions.pass_through(object) self.assertEqual(id(x), id(object))
def test_derived_class(): """Test python class derived from managed type""" DerivedClass = derived_class_fixture(test_derived_class.__name__) ob = DerivedClass() assert ob.foo() == "DerivedClass" assert ob.base_foo() == "foo" assert ob.super_foo() == "foo" assert FunctionsTest.test_foo(ob) == "DerivedClass" assert ob.bar("bar", 2) == "bar_bar" assert FunctionsTest.test_bar(ob, "bar", 2) == "bar_bar" assert ob.not_overriden() == "not_overriden" assert list(ob.return_list()) == ["A", "B", "C"] assert list(SubClassTest.test_list(ob)) == ["A", "B", "C"] x = FunctionsTest.pass_through(ob) assert id(x) == id(ob)
def test_derived_class(): """Test python class derived from managed type""" DerivedClass = derived_class_fixture() ob = DerivedClass() assert ob.foo() == "DerivedClass" assert ob.base_foo() == "foo" assert ob.super_foo() == "foo" assert FunctionsTest.test_foo(ob) == "DerivedClass" assert ob.bar("bar", 2) == "bar_bar" assert FunctionsTest.test_bar(ob, "bar", 2) == "bar_bar" assert ob.not_overriden() == "not_overriden" assert list(ob.return_list()) == ["A", "B", "C"] assert list(SubClassTest.test_list(ob)) == ["A", "B", "C"] x = FunctionsTest.pass_through(ob) assert id(x) == id(ob)
def testEvents(self): class EventHandler: def handler(self, x, args): self.value = args.value event_handler = EventHandler() x = SubClassTest() x.TestEvent += event_handler.handler self.assertEqual(TestFunctions.test_event(x, 1), 1) self.assertEqual(event_handler.value, 1) i = InterfaceTestClass() self.assertRaises(NotImplementedException, TestFunctions.test_event, i, 2) d = DerivedEventTest() d.add_TestEvent(event_handler.handler) self.assertEqual(TestFunctions.test_event(d, 3), 3) self.assertEqual(event_handler.value, 3) self.assertEqual(len(d.event_handlers), 1)
def test_events(): class EventHandler(object): def handler(self, x, args): self.value = args.value event_handler = EventHandler() x = SubClassTest() x.TestEvent += event_handler.handler assert FunctionsTest.test_event(x, 1) == 1 assert event_handler.value == 1 InterfaceTestClass = interface_test_class_fixture(test_events.__name__) i = InterfaceTestClass() with pytest.raises(System.NotImplementedException): FunctionsTest.test_event(i, 2) DerivedEventTest = derived_event_test_class_fixture(test_events.__name__) d = DerivedEventTest() d.add_TestEvent(event_handler.handler) assert FunctionsTest.test_event(d, 3) == 3 assert event_handler.value == 3 assert len(d.event_handlers) == 1
def base_foo(self): return SubClassTest.foo(self)