public void WhenEmptyFieldsParameterPassed_ShouldSerializeEverythingFromThePassedObject(string emptyFieldsParameter) { //Arange IJsonFieldsSerializer cut = new JsonFieldsSerializer(); var serializableObject = new SerializableDummyObjectWithSimpleTypes(); serializableObject.Items.Add(new DummyObjectWithSimpleTypes() { FirstProperty = "first property value", SecondProperty = "second property value" }); //Act string serializedObjectJson = cut.Serialize(serializableObject, emptyFieldsParameter); //Assert SerializableDummyObjectWithSimpleTypes dummySerializableObjectFromJson = JsonConvert.DeserializeObject <SerializableDummyObjectWithSimpleTypes>(serializedObjectJson); Assert.AreEqual(serializableObject.Items.Count, dummySerializableObjectFromJson.Items.Count); Assert.AreEqual(serializableObject.Items[0], dummySerializableObjectFromJson.Items[0]); Assert.AreEqual("first property value", dummySerializableObjectFromJson.Items[0].FirstProperty); Assert.AreEqual("second property value", dummySerializableObjectFromJson.Items[0].SecondProperty); }
public void WhenValidFieldsParameterPassed_ShouldNotSerializeOtherFieldsJson() { var dummySerializableObject = new SerializableDummyObjectWithSimpleTypes(); dummySerializableObject.Items.Add(new DummyObjectWithSimpleTypes() { FirstProperty = "first property value", SecondProperty = "second property value", }); IJsonFieldsSerializer cut = new JsonFieldsSerializer(); // Act string json = cut.Serialize(dummySerializableObject, "first_property"); // Assert SerializableDummyObjectWithSimpleTypes dummySerializableObjectFromJson = JsonConvert.DeserializeObject <SerializableDummyObjectWithSimpleTypes>(json); Assert.AreEqual(1, dummySerializableObjectFromJson.Items.Count); Assert.IsNull(dummySerializableObjectFromJson.Items[0].SecondProperty); }
public void WhenNoValidFieldsInTheFieldsParameterPassed_ShouldReturnEmptyCollectionJson() { var dummySerializableObject = new SerializableDummyObjectWithSimpleTypes(); dummySerializableObject.Items.Add(new DummyObjectWithSimpleTypes() { FirstProperty = "first property value", SecondProperty = "second property value", }); // Arange IJsonFieldsSerializer cut = new JsonFieldsSerializer(); // Act string json = cut.Serialize(dummySerializableObject, "not valid fields"); // Assert SerializableDummyObjectWithSimpleTypes dummySerializableObjectFromJson = JsonConvert.DeserializeObject <SerializableDummyObjectWithSimpleTypes>(json); Assert.AreEqual(0, dummySerializableObjectFromJson.Items.Count); }