public void ToJson_AutomaticallySerializes() { var person = new Human { Age = 54, FirstName = "Bob" }; person.Address.Add("Your mom's house"); person.Address.Add("Cloud City"); person.ContactInfo.Email = "*****@*****.**"; person.ContactInfo.Phone = "123-456-7890"; string serialized = null; Assert.DoesNotThrow(() => serialized = person.ToJson()); Console.WriteLine(serialized); }
public void WhenBsonIgnoreAttribute_PropertyOmittedFromDocument() { var person = new Human(); var document = person.ToBsonDocument(); Console.WriteLine(person.ToJson()); Assert.False(document.Contains("FirstName")); }
public void WhenBsonIgnoreAttribute_FieldIsNotSerialized() { var person = new Human(); var document = person.ToBsonDocument(); Console.WriteLine(person.ToJson()); Assert.False(document.Contains("IgnoreMe")); }
public void WhenBsonIdAttribute_NonIdFieldUsedAsId() { var person = new Human { PersonId = 666 }; var document = person.ToBsonDocument(); Console.WriteLine(person.ToJson()); Assert.AreEqual((int)document["_id"], 666); }
public void WhenBsonElementAttribute_NonPublicMembersIncludedInDocument() { var person = new Human(); var serialized = person.ToJson(); Console.WriteLine(person.ToJson()); Assert.True(serialized.Contains("mplementationDetail")); }
public void WhenBsonElementAttribute_CustomFieldNameSerializedToDocument() { var person = new Human(); var document = person.ToBsonDocument(); Console.WriteLine(person.ToJson()); Assert.True(document.Contains("UpdatedMemberName")); Assert.False(document.Contains("Obsolete")); }