X Tutup
using System; using System.Collections.Generic; using System.Linq; using NUnit.Framework; using Python.Runtime; namespace Python.EmbeddingTest { public class TestPyObject { [OneTimeSetUp] public void SetUp() { PythonEngine.Initialize(); } [OneTimeTearDown] public void Dispose() { PythonEngine.Shutdown(); } [Test] public void TestGetDynamicMemberNames() { List expectedMemberNames = new List { "add", "getNumber", "member1", "member2" }; PyDict locals = new PyDict(); PythonEngine.Exec(@" class MemberNamesTest(object): def __init__(self): self.member1 = 123 self.member2 = 'Test string' def getNumber(self): return 123 def add(self, x, y): return x + y a = MemberNamesTest() ", null, locals.Handle); PyObject a = locals.GetItem("a"); IEnumerable memberNames = a.GetDynamicMemberNames(); foreach (string expectedName in expectedMemberNames) { Assert.IsTrue(memberNames.Contains(expectedName), "Could not find member '{0}'.", expectedName); } } } }
X Tutup