private string SponsorToJson(Sponsor x) => $"{{" + $"'id':{x.Id}," + $"'sponsoredEvent':{EventJsonConverterTests.EventToJson( x.SponsoredEvent )}," + $"'sponsoringCompany':{CompanyJsonConverterTests.CompanyToJson( x.SponsoringCompany )}," + $"'sponsorshipLevel':{SponsorLevelJsonConverterTests.SponsorLevelToJson( x.SponsorshipLevel )}" + $"}}";
private Sponsor CreateSponsor(int i) => new Sponsor( id: i, sponsoredevent: EventJsonConverterTests.CreateEvent(i), sponsoringcompany: CompanyJsonConverterTests.CreateCompany(i), sponsorshiplevel: SponsorLevelJsonConverterTests.CreateSponsorLevel(i) );
public void JsonDeserializer_ItemsOutOfOrder() { Sponsor expected = CreateSponsor(2015); string json = $"{{" + $"'sponsoringCompany':{CompanyJsonConverterTests.CompanyToJson( expected.SponsoringCompany )}," + $"'sponsoredEvent':{EventJsonConverterTests.EventToJson( expected.SponsoredEvent )}," + $"'id':{expected.Id}," + $"'sponsorshipLevel':{SponsorLevelJsonConverterTests.SponsorLevelToJson( expected.SponsorshipLevel )}" + $"}}"; Sponsor actual = JsonConvert.DeserializeObject <Sponsor>(json); Assert.Equal(expected, actual); }
public void JsonSerializerFormattingIndented() { IEnumerable <Sponsor> data = Enumerable.Range(2015, 6).Select(i => CreateSponsor(i)); string expected = "[\r\n" + string.Join(",\r\n", data.Select(x => $@" {{ ""id"": {x.Id}, ""sponsoredEvent"": {{ ""id"": {x.SponsoredEvent.Id}, ""name"": ""{x.SponsoredEvent.Name}"", ""startdate"": ""{EventJsonConverterTests.DateTimeToJsonString( x.SponsoredEvent.StartDate )}"", ""enddate"": ""{EventJsonConverterTests.DateTimeToJsonString( x.SponsoredEvent.EndDate )}"" }}, ""sponsoringCompany"": {{ ""id"": {x.SponsoringCompany.Id}, ""name"": ""{x.SponsoringCompany.Name}"", ""address"": ""{x.SponsoringCompany.Address}"", ""phone"": ""{x.SponsoringCompany.Phone}"", ""website"": ""{x.SponsoringCompany.Website}"", ""twitter"": ""{x.SponsoringCompany.Twitter}"" }}, ""sponsorshipLevel"": {{ ""id"": {x.SponsorshipLevel.Id}, ""displayorder"": {x.SponsorshipLevel.DisplayOrder}, ""name"": ""{x.SponsorshipLevel.Name}"", ""cost"": {x.SponsorshipLevel.Cost}, ""displaylink"": {x.SponsorshipLevel.DisplayLink.ToString().ToLower()}, ""displayinemails"": {x.SponsorshipLevel.DisplayInEmails.ToString().ToLower()}, ""displayinsidebar"": {x.SponsorshipLevel.DisplayInSidebar.ToString().ToLower()}, ""tickets"": {x.SponsorshipLevel.Tickets}, ""discount"": {x.SponsorshipLevel.Discount}, ""timeonscreen"": {x.SponsorshipLevel.TimeOnScreen}, ""preconemail"": {x.SponsorshipLevel.PreConEmail.ToString().ToLower()}, ""midconemail"": {x.SponsorshipLevel.MidConEmail.ToString().ToLower()}, ""postconemail"": {x.SponsorshipLevel.PostConEmail.ToString().ToLower()} }} }}")) + "\r\n]"; string actual = JsonConvert.SerializeObject(data, Formatting.Indented); Assert.Equal(expected, actual); }