public void ArrayItem() { var context = new ObjectQueryContext(typeof(ArrayItemTestClass)); Assert.IsFalse(context.PropertyExists("Foo", new ArrayItemTestClass())); Assert.IsFalse(context.PropertyExists("Foo", new ArrayItemTestClass { Foo = new string[0] })); var foos = new[] { "foo", "bar", "bat", "baz" }; var test = new ArrayItemTestClass { Foo = foos }; Assert.IsTrue(context.PropertyExists("Foo", test)); var i = 0; var inequality = false; context.VisitProperty("Foo", test, value => inequality |= !value.Equals(foos[i++])); Assert.IsFalse(inequality); }
public void ArrayItem () { var context = new ObjectQueryContext (typeof (ArrayItemTestClass)); Assert.IsFalse (context.PropertyExists ("Foo", new ArrayItemTestClass ())); Assert.IsFalse (context.PropertyExists ("Foo", new ArrayItemTestClass { Foo = new string[0] })); var foos = new[] { "foo", "bar", "bat", "baz" }; var test = new ArrayItemTestClass { Foo = foos }; Assert.IsTrue (context.PropertyExists ("Foo", test)); var i = 0; var inequality = false; context.VisitProperty ("Foo", test, value => inequality |= !value.Equals (foos[i++])); Assert.IsFalse (inequality); }