public void SerializeAsSingleValueGivenNestedListWithSingleValues() { var list = new NestedValueOrList(); list.Items.Add(1); var expected = "1"; var serialized = JsonConvert.SerializeObject(list, new JsonConverter[] { new SingleOrArrayJsonConverter() }); Assert.AreEqual(expected, serialized); }
public void DeserializeNestedListGivenClassAttributionAndSingleItem() { var list = new NestedValueOrList(); list.Items.Add(1); var serialized = JsonConvert.SerializeObject(list, new SingleOrArrayJsonConverter()); var deserialized = JsonConvert.DeserializeObject <NestedValueOrList>(serialized, new SingleOrArrayJsonConverter()); deserialized.Should().BeEquivalentTo(list); }
public void SerializeAsArrayGivenNestedListWithMultipleValues() { var list = new NestedValueOrList(); list.Items.AddRange(new int[] { 1, 2, 3 }); var expected = JsonConvert.SerializeObject(list.Items); var serialized = JsonConvert.SerializeObject(list, new JsonConverter[] { new SingleOrArrayJsonConverter() }); Assert.AreEqual(expected, serialized); }