public void TestNonGenericIsUsedWhenAvailable() { // Run in C# var class1 = new TestGenericClass3(); TestGenericMethod(class1); Assert.AreEqual(10, class1.Value); // When available, should select non-generic method over generic method Assert.DoesNotThrow(() => PyModule.FromString("test", @" from clr import AddReference AddReference(""System"") AddReference(""Python.EmbeddingTest"") from Python.EmbeddingTest import * class1 = TestMethodBinder.TestGenericClass3() TestMethodBinder.TestGenericMethod(class1) if class1.Value != 10: raise AssertionError('Value was not updated') ")); }
// Used in test to verify non-generic is bound and used when generic option is also available public static void TestGenericMethod(TestGenericClass3 class3) { class3.Value = 10; }