M2 CreateM2() { var o = new M2 { Id = Guid.NewGuid(), Age = 10, Address = Guid.NewGuid().ToString(), Int = 7, Name = "udi", Risk = new Risk { Percent = 0.15D, Annum = true, Accuracy = 0.314M }, Some = SomeEnum.B, Start = DateTime.Now, Duration = TimeSpan.Parse("-01:15:27.123"), Offset = DateTimeOffset.Now, Parent = new M1 { Age = 10, Address = Guid.NewGuid().ToString(), Int = 7, Name = "-1", Risk = new Risk { Percent = 0.15D, Annum = true, Accuracy = 0.314M } }, Names = new List <M1>() }; for (var i = 0; i < number; i++) { var m1 = new M1(); o.Names.Add(m1); m1.Age = 10; m1.Address = Guid.NewGuid().ToString(); m1.Int = 7; m1.Name = i.ToString(); m1.Risk = new Risk { Percent = 0.15D, Annum = true, Accuracy = 0.314M }; } o.MoreNames = o.Names.ToArray(); return(o); }
private M2 CreateM2() { var o = new M2(); o.Id = Guid.NewGuid(); o.Age = 10; o.Address = Guid.NewGuid().ToString(); o.Int = 7; o.Name = "udi"; o.Risk = new Risk { Percent = 0.15D, Annum = true, Accuracy = 0.314M }; o.Some = SomeEnum.B; o.Start = DateTime.Now; o.Duration = TimeSpan.Parse("-01:15:27.123"); o.Offset = DateTimeOffset.Now; o.Parent = new M1(); o.Parent.Name = "udi"; o.Parent.Age = 10; o.Parent.Address = Guid.NewGuid().ToString(); o.Parent.Int = 7; o.Parent.Name = "-1"; o.Parent.Risk = new Risk { Percent = 0.15D, Annum = true, Accuracy = 0.314M }; o.Names = new List <M1>(); for (var i = 0; i < number; i++) { var m1 = new M1(); o.Names.Add(m1); m1.Age = 10; m1.Address = Guid.NewGuid().ToString(); m1.Int = 7; m1.Name = i.ToString(); m1.Risk = new Risk { Percent = 0.15D, Annum = true, Accuracy = 0.314M }; } o.MoreNames = o.Names.ToArray(); return(o); }
public void Execute() { var m1 = new M1(); var m2_1 = new M2(); var m2_2 = new M2(); var m2_3 = new M2(); using (Stream stream = new MemoryStream()) { var serializer = SerializerFactory.Create(typeof(IMyBusMessage), typeof(M1), typeof(M2)); serializer.Serialize(new object[] {m1, m2_1, m2_2, m2_3}, stream); stream.Position = 0; var messageDeserialized = serializer.Deserialize(stream); Assert.IsInstanceOf<M1>(messageDeserialized[0]); Assert.IsInstanceOf<M2>(messageDeserialized[1]); Assert.IsInstanceOf<M2>(messageDeserialized[2]); Assert.IsInstanceOf<M2>(messageDeserialized[3]); } }
public void Should_throw_an_exception() { var m2_1 = new M2(); var m2_2 = new M2(); var m2_3 = new M2(); using (Stream stream = new MemoryStream()) { var serializer = SerializerFactory.Create(typeof(IMyBusMessage), typeof(M1), typeof(M2)); //var exception = Assert.Throws<Exception>(() => serializer.Initialize(new[] { typeof(IMyBusMessage), typeof(M1), typeof(M2) })); //Assert.AreEqual("Nested types are not supported by the XmlMessageSerializer.", exception.Message); var m1 = new M1(); serializer.Serialize(new object[] {m1, m2_1, m2_2, m2_3}, stream); stream.Position = 0; var messageDeserialized = serializer.Deserialize(stream); Assert.IsInstanceOf<M1>(messageDeserialized[0]); Assert.IsInstanceOf<M2>(messageDeserialized[1]); Assert.IsInstanceOf<M2>(messageDeserialized[2]); Assert.IsInstanceOf<M2>(messageDeserialized[3]); } }