public void SetsElementFromComplexProperty() { var agencyMapper = new XmlMapper <Agency> { { "name", a => a.Name }, { "country", a => a.Country }, }; var mapper = new XmlMapper <Spaceship> { { "agency", o => o.Owner, agencyMapper }, }; var spaceship = new Spaceship { Owner = new Agency { Name = "NASA", Country = Country.USA } }; var actual = mapper.ToXml(spaceship, "spaceship"); var agency = actual.Element("agency"); Assert.NotNull(agency); Assert.Equal("NASA", agency.Attribute("name").Value); }
public void SetsAttributesFromCollectionItems() { var mapper = new XmlMapper <Spaceship> { { "captainName", o => o.Crew[0].Name }, { "pilotName", o => o.Crew[1].Name }, }; var spaceship = new Spaceship { Crew = new List <Astronaut> { new Astronaut { Name = "Neil Armstrong" }, new Astronaut { Name = "Michael Collins" }, } }; var actual = mapper.ToXml(spaceship, "spaceship"); Assert.Equal("Neil Armstrong", actual.Attribute("captainName").Value); Assert.Equal("Michael Collins", actual.Attribute("pilotName").Value); }
public void CreateElementFromNullObject() { var astronautMapper = new XmlMapper<Astronaut> { {"name", a => a.Name}, }; Astronaut astronaut = null; var actual = astronautMapper.ToXml(astronaut, "astronaut"); Assert.Equal("<astronaut />", actual.ToString()); }
public void CreateElementFromNullObject() { var astronautMapper = new XmlMapper <Astronaut> { { "name", a => a.Name }, }; Astronaut astronaut = null; var actual = astronautMapper.ToXml(astronaut, "astronaut"); Assert.Equal("<astronaut />", actual.ToString()); }
public void SetsDateTimeAttribute() { var mapper = new XmlMapper <Spaceship> { { "firstLaunch", o => o.FirstLaunch }, }; var obj = new Spaceship { FirstLaunch = new DateTime(1969, 7, 16) }; var actual = mapper.ToXml(obj, "spaceship"); Assert.Equal(obj.FirstLaunch.ToString(CultureInfo.CurrentCulture), actual.Attribute("firstLaunch").Value); }
public void SetsIntAttribute() { var mapper = new XmlMapper <Spaceship> { { "year", o => o.Year }, }; var obj = new Spaceship { Year = 1969 }; var actual = mapper.ToXml(obj, "spaceship"); Assert.Equal("1969", actual.Attribute("year").Value); }
public void SetsStringAttribute() { var mapper = new XmlMapper <Spaceship> { { "name", o => o.Name }, }; var obj = new Spaceship { Name = "Apollo 11" }; var actual = mapper.ToXml(obj, "spaceship"); Assert.Equal("Apollo 11", actual.Attribute("name").Value); }
public void SetsDateTimeAttributeWithJustCustomParser() { var mapper = new XmlMapper <Spaceship> { { "firstLaunch", o => o.FirstLaunch, s => DateTime.Parse(s), p => p.ToString("yyyy-MM-dd") }, }; var obj = new Spaceship { FirstLaunch = new DateTime(1969, 7, 16) }; var actual = mapper.ToXml(obj, "spaceship"); Assert.Equal("1969-07-16", actual.Attribute("firstLaunch").Value); }
public void CreatesRootElement() { var mapper = new XmlMapper <Spaceship> { { "name", o => o.Name }, }; var obj = new Spaceship { Name = "Apollo 11" }; var actual = mapper.ToXml(obj, "spaceship"); Assert.Equal("spaceship", actual.Name); }
public void SetsTwoAttributesFromProperty() { var mapper = new XmlMapper <Astronaut> { { "fname", "lname", a => a.Name, (f, l) => string.Format("{0} {1}", f, l), s => Split(s) }, }; var astronaut = new Astronaut { Name = "Michael Collins" }; var actual = mapper.ToXml(astronaut, "astronaut"); Assert.Equal("Michael", actual.Attribute("fname").Value); Assert.Equal("Collins", actual.Attribute("lname").Value); }
public void SetsAttributeFromIndirectStringProperty() { var mapper = new XmlMapper <Spaceship> { { "agencyName", o => o.Owner.Name }, }; var spaceship = new Spaceship { Owner = new Agency { Name = "NASA" } }; var actual = mapper.ToXml(spaceship, "spaceship"); Assert.Equal("NASA", actual.Attribute("agencyName").Value); }
public void CreateElementFromNullCollection() { var astronautMapper = new XmlMapper<Astronaut> { {"name", a => a.Name}, }; var mapper = new XmlMapper<Spaceship> { {"crew/member", o => o.Crew, astronautMapper}, }; var spaceship = new Spaceship { Crew = null, }; var actual = mapper.ToXml(spaceship, "spaceship"); Assert.Equal("<crew />", actual.Element("crew").ToString()); }
public void CreateElementFromNullCollection() { var astronautMapper = new XmlMapper <Astronaut> { { "name", a => a.Name }, }; var mapper = new XmlMapper <Spaceship> { { "crew/member", o => o.Crew, astronautMapper }, }; var spaceship = new Spaceship { Crew = null, }; var actual = mapper.ToXml(spaceship, "spaceship"); Assert.Equal("<crew />", actual.Element("crew").ToString()); }
public void SetsElementsFromCollection() { var astronautMapper = new XmlMapper <Astronaut> { { "name", a => a.Name }, }; var mapper = new XmlMapper <Spaceship> { { "crew/member", o => o.Crew, astronautMapper }, }; var spaceship = new Spaceship { Crew = new List <Astronaut> { new Astronaut { Name = "Buzz Aldrin" }, new Astronaut { Name = "Neil Armstrong" }, } }; var actual = mapper.ToXml(spaceship, "spaceship"); var crew = actual.Element("crew"); Assert.NotNull(crew); Assert.Equal(2, crew.Elements("member").Count()); Assert.Contains("Buzz Aldrin", crew.Elements("member").Select(x => x.Attribute("name").Value)); Assert.Contains("Neil Armstrong", crew.Elements("member").Select(x => x.Attribute("name").Value)); }
public void SetsTwoAttributesFromProperty() { var mapper = new XmlMapper<Astronaut> { {"fname", "lname", a => a.Name, (f,l) => string.Format("{0} {1}", f, l), s => Split(s)}, }; var astronaut = new Astronaut {Name = "Michael Collins"}; var actual = mapper.ToXml(astronaut, "astronaut"); Assert.Equal("Michael", actual.Attribute("fname").Value); Assert.Equal("Collins", actual.Attribute("lname").Value); }
public void SetsStringAttribute() { var mapper = new XmlMapper<Spaceship> { {"name", o => o.Name}, }; var obj = new Spaceship {Name = "Apollo 11"}; var actual = mapper.ToXml(obj, "spaceship"); Assert.Equal("Apollo 11", actual.Attribute("name").Value); }
public void SetsIntAttribute() { var mapper = new XmlMapper<Spaceship> { {"year", o => o.Year}, }; var obj = new Spaceship {Year = 1969}; var actual = mapper.ToXml(obj, "spaceship"); Assert.Equal("1969", actual.Attribute("year").Value); }
public void SetsElementsFromCollection() { var astronautMapper = new XmlMapper<Astronaut> { {"name", a => a.Name}, }; var mapper = new XmlMapper<Spaceship> { {"crew/member", o => o.Crew, astronautMapper}, }; var spaceship = new Spaceship { Crew = new List<Astronaut> { new Astronaut {Name = "Buzz Aldrin"}, new Astronaut {Name = "Neil Armstrong"}, } }; var actual = mapper.ToXml(spaceship, "spaceship"); var crew = actual.Element("crew"); Assert.NotNull(crew); Assert.Equal(2, crew.Elements("member").Count()); Assert.Contains("Buzz Aldrin", crew.Elements("member").Select(x => x.Attribute("name").Value)); Assert.Contains("Neil Armstrong", crew.Elements("member").Select(x => x.Attribute("name").Value)); }
public void SetsElementFromComplexProperty() { var agencyMapper = new XmlMapper<Agency> { {"name", a => a.Name}, {"country", a => a.Country}, }; var mapper = new XmlMapper<Spaceship> { {"agency", o => o.Owner, agencyMapper}, }; var spaceship = new Spaceship { Owner = new Agency { Name = "NASA", Country = Country.USA } }; var actual = mapper.ToXml(spaceship, "spaceship"); var agency = actual.Element("agency"); Assert.NotNull(agency); Assert.Equal("NASA", agency.Attribute("name").Value); }
public void SetsDateTimeAttributeWithJustCustomParser() { var mapper = new XmlMapper<Spaceship> { {"firstLaunch", o => o.FirstLaunch, s => DateTime.Parse(s), p => p.ToString("yyyy-MM-dd")}, }; var obj = new Spaceship { FirstLaunch = new DateTime(1969, 7, 16) }; var actual = mapper.ToXml(obj, "spaceship"); Assert.Equal("1969-07-16", actual.Attribute("firstLaunch").Value); }
public void SetsDateTimeAttribute() { var mapper = new XmlMapper<Spaceship> { {"firstLaunch", o => o.FirstLaunch}, }; var obj = new Spaceship { FirstLaunch = new DateTime(1969, 7, 16) }; var actual = mapper.ToXml(obj, "spaceship"); Assert.Equal(obj.FirstLaunch.ToString(CultureInfo.CurrentCulture), actual.Attribute("firstLaunch").Value); }
public void CreatesRootElement() { var mapper = new XmlMapper<Spaceship> { {"name", o => o.Name}, }; var obj = new Spaceship {Name = "Apollo 11"}; var actual = mapper.ToXml(obj, "spaceship"); Assert.Equal("spaceship", actual.Name); }
public void SetsAttributeFromIndirectStringProperty() { var mapper = new XmlMapper<Spaceship> { {"agencyName", o => o.Owner.Name}, }; var spaceship = new Spaceship { Owner = new Agency { Name = "NASA" } }; var actual = mapper.ToXml(spaceship, "spaceship"); Assert.Equal("NASA", actual.Attribute("agencyName").Value); }
public void SetsAttributesFromCollectionItems() { var mapper = new XmlMapper<Spaceship> { {"captainName", o => o.Crew[0].Name}, {"pilotName", o => o.Crew[1].Name}, }; var spaceship = new Spaceship { Crew = new List<Astronaut> { new Astronaut {Name = "Neil Armstrong"}, new Astronaut {Name = "Michael Collins"}, } }; var actual = mapper.ToXml(spaceship, "spaceship"); Assert.Equal("Neil Armstrong", actual.Attribute("captainName").Value); Assert.Equal("Michael Collins", actual.Attribute("pilotName").Value); }