public virtual void TestShouldReturnAllPropertiesOfArg() { NativeObject @object = new NativeObject(); @object.DefineProperty("a", "1", ScriptableObject.EMPTY); @object.DefineProperty("b", "2", ScriptableObject.DONTENUM); object result = Evaluator.Eval("Object.getOwnPropertyNames(obj)", "obj", @object); NativeArray names = (NativeArray)result; NUnit.Framework.Assert.AreEqual(2, names.GetLength()); NUnit.Framework.Assert.AreEqual("a", names.Get(0, names)); NUnit.Framework.Assert.AreEqual("b", names.Get(1, names)); }
public virtual void ShouldReturnOnlyEnumerablePropertiesOfArg() { NativeObject @object = new NativeObject(); @object.DefineProperty("a", "1", ScriptableObject.EMPTY); @object.DefineProperty("b", "2", ScriptableObject.EMPTY); @object.DefineProperty("c", "3", ScriptableObject.DONTENUM); object result = Evaluator.Eval("Object.keys(obj)", "obj", @object); NativeArray keys = (NativeArray)result; NUnit.Framework.Assert.AreEqual(2, keys.GetLength()); NUnit.Framework.Assert.AreEqual("a", keys.Get(0, keys)); NUnit.Framework.Assert.AreEqual("b", keys.Get(1, keys)); }
public virtual void TestContentsOfPropertyDescriptorShouldReflectAttributesOfProperty() { NativeObject descriptor; NativeObject @object = new NativeObject(); @object.DefineProperty("a", "1", ScriptableObject.EMPTY); @object.DefineProperty("b", "2", ScriptableObject.DONTENUM | ScriptableObject.READONLY | ScriptableObject.PERMANENT); descriptor = (NativeObject)Evaluator.Eval("Object.getOwnPropertyDescriptor(obj, 'a')", "obj", @object); NUnit.Framework.Assert.AreEqual("1", descriptor.Get("value")); NUnit.Framework.Assert.AreEqual(true, descriptor.Get("enumerable")); NUnit.Framework.Assert.AreEqual(true, descriptor.Get("writable")); NUnit.Framework.Assert.AreEqual(true, descriptor.Get("configurable")); descriptor = (NativeObject)Evaluator.Eval("Object.getOwnPropertyDescriptor(obj, 'b')", "obj", @object); NUnit.Framework.Assert.AreEqual("2", descriptor.Get("value")); NUnit.Framework.Assert.AreEqual(false, descriptor.Get("enumerable")); NUnit.Framework.Assert.AreEqual(false, descriptor.Get("writable")); NUnit.Framework.Assert.AreEqual(false, descriptor.Get("configurable")); }