public void should_throw_if_serialized_directly() { IdentitySerializer.RegisterForIdentityTypes(typeof(SchoolId)); var schoolId = new SchoolId("school-56"); Assert.Throws <InvalidOperationException>(() => { MongoSerializer.Serialize(schoolId); }); }
public void should_serialize_and_deserialize() { IdentitySerializer.RegisterForIdentityTypes(typeof(SchoolId)); var doc = new SchoolDocument() { Name = "Minsk", Year = 2012, SchoolIdentity = new SchoolId("school-67") }; var bson = MongoSerializer.Serialize(doc); var idElement = bson["SchoolIdentity"]; Assert.That(idElement.IsString, Is.True); Assert.That(idElement.AsString, Is.EqualTo(doc.SchoolIdentity.Value)); var back = (SchoolDocument)MongoSerializer.Deserialize(bson, typeof(SchoolDocument)); Assert.That(back.SchoolIdentity.Value, Is.EqualTo(doc.SchoolIdentity.Value)); Assert.That(back.Name, Is.EqualTo(doc.Name)); Assert.That(back.Year, Is.EqualTo(doc.Year)); }