public void SetSrceValue_Intrinsic() { var p = new Person(); var pm = new ODataPropertyMapper <Person, int>(x => x.Id); Assert.Throws <ArgumentNullException>(() => pm.SetSrceValue(p, null, OperationTypes.Get)); var json = JObject.Parse(Person.JsonData); pm.SetSrceValue(p, json["IdX"], OperationTypes.Get); Assert.AreEqual(1, p.Id); }
public void SetSrceValue_MapperCollection() { var p = new Person(); var pm = new ODataPropertyMapper <Person, List <Address> >(x => x.Addresses); pm.SetMapper(new AddressMapper()); var json = JObject.Parse(Person.JsonData); pm.SetSrceValue(p, json["AddressesX"], OperationTypes.Get); Assert.IsNotNull(p.Addresses); Assert.AreEqual(2, p.Addresses.Count); Assert.AreEqual(456, p.Addresses[0].StreetNumber); Assert.AreEqual("Simpsons", p.Addresses[0].StreetName); Assert.AreEqual(789, p.Addresses[1].StreetNumber); Assert.AreEqual("Park", p.Addresses[1].StreetName); var pm2 = new ODataPropertyMapper <Person, string[]>(x => x.Nicknames); pm2.SetSrceValue(p, json["NicknamesX"], OperationTypes.Get); Assert.IsNotNull(p.Nicknames); Assert.AreEqual(2, p.Nicknames.Length); Assert.AreEqual("Bro", p.Nicknames[0]); Assert.AreEqual("Mate", p.Nicknames[1]); }
public void SetSrceValue_Converter() { var p = new Person(); var pm = new ODataPropertyMapper <Person, bool>(x => x.IsDeceased); pm.SetConverter(BooleanToYesNoConverter.Default); var json = JObject.Parse(Person.JsonData); pm.SetSrceValue(p, json["IsDeceasedX"], OperationTypes.Get); Assert.AreEqual(true, p.IsDeceased); }
public void SetSrceValue_MapperObject() { var p = new Person(); var pm = new ODataPropertyMapper <Person, Address>(x => x.Address); pm.SetMapper(new AddressMapper()); var json = JObject.Parse(Person.JsonData); pm.SetSrceValue(p, json["AddressX"], OperationTypes.Get); Assert.IsNotNull(p.Address); Assert.AreEqual(123, p.Address.StreetNumber); Assert.AreEqual("Petherick", p.Address.StreetName); }