public void Can_serialize_complex_events_and_commands() { var e = new EventA(1, "event"); var deserializedEvent = this.sut.Deserialize<IEvent>(this.sut.Serialize(e)); Assert.IsTrue(((EventA)deserializedEvent).Quantity == 1); Assert.IsTrue(((EventA)deserializedEvent).Text == "event"); Assert.IsFalse(deserializedEvent.IsACommand); var c = this.sut.Deserialize<IEvent>(this.sut.Serialize(new CommandA(10, "command"))); Assert.IsTrue(c.IsACommand); var fullCommand = (CommandA)c; Assert.AreEqual(10, fullCommand.Quantity); Assert.AreEqual("command", fullCommand.Text); }
public void Can_serialize_complex_events_and_commands() { var e = new EventA(1, "event"); var deserializedEvent = this.sut.Deserialize <IEvent>(this.sut.Serialize(e)); Assert.IsTrue(((EventA)deserializedEvent).Quantity == 1); Assert.IsTrue(((EventA)deserializedEvent).Text == "event"); Assert.IsFalse(deserializedEvent.IsACommand); var c = this.sut.Deserialize <IEvent>(this.sut.Serialize(new CommandA(10, "command"))); Assert.IsTrue(c.IsACommand); var fullCommand = (CommandA)c; Assert.AreEqual(10, fullCommand.Quantity); Assert.AreEqual("command", fullCommand.Text); }