public void EmailPackageSerialiser_CanSerialiseAndDeserialiseIntoEqualObject() { EmailPackageSerialiser serialiser = new EmailPackageSerialiser(); var package = serialiser.Deserialize(File.ReadAllText("SampleEmailPackage.xml")); var serialised = serialiser.Serialise(package); var deserialised = serialiser.Deserialize(serialised); foreach(var propertyInfo in typeof(EmailPackage).GetProperties()) { object expected = propertyInfo.GetValue(package, null); object actual = propertyInfo.GetValue(deserialised, null); Assert.AreEqual(expected, actual); } }
public void EmailPackageSerialiser_CanSerialiseAndDeserialiseIntoEqualObject() { EmailPackageSerialiser serialiser = new EmailPackageSerialiser(); var expected = serialiser.Deserialize(File.ReadAllText("SampleEmailPackage.xml")); var serialised = serialiser.Serialise(expected); var actual = serialiser.Deserialize(serialised); Assert.That(actual.To[0].EmailAddress, Is.EqualTo(expected.To[0].EmailAddress)); Assert.That(actual.To[0].Name, Is.EqualTo(expected.To[0].Name)); Assert.That(actual.Attachments[0].Path, Is.EqualTo(expected.Attachments[0].Path)); Assert.That(actual.From, Is.EqualTo(expected.From)); Assert.That(actual.Subject, Is.EqualTo(expected.Subject)); Assert.That(actual.Html, Is.EqualTo(expected.Html)); Assert.That(actual.Text, Is.EqualTo(expected.Text)); }
public void EmailPackageSerialiser_Serialisation_CanSerialiseAnEmailPackage() { EmailPackageSerialiser serialiser = new EmailPackageSerialiser(); EmailPackage package = Helpers.SamplePackage(); string serialised = serialiser.Serialise(package); string jgnamespace = "http://www.tanash.net/email/package"; XDocument doc = XDocument.Parse(serialised); var serialisedPackage = doc.Element(XName.Get("emailPackage", jgnamespace)); Assert.That(serialisedPackage.Element(XName.Get("from", jgnamespace)).Value, Is.EqualTo(package.From)); Assert.That(serialisedPackage.Element(XName.Get("subject", jgnamespace)).Value, Is.EqualTo(package.Subject)); Assert.That(serialisedPackage.Element(XName.Get("html", jgnamespace)).Value, Is.EqualTo(package.Html)); Assert.That(serialisedPackage.Element(XName.Get("text", jgnamespace)).Value, Is.EqualTo(package.Text)); Assert.That(serialisedPackage .Element(XName.Get("recipients", jgnamespace)) .Elements(XName.Get("address", jgnamespace)).ToList(), Has.Count.EqualTo(1)); Assert.That(serialisedPackage .Element(XName.Get("attachments", jgnamespace)) .Elements(XName.Get("attachment", jgnamespace)).ToList(), Has.Count.EqualTo(1)); }