public async Task Multiple() { DefaultModel received1 = null; CriticalModel received2 = null; PackageReader reader1 = new PackageReader(); PackageReader reader2 = new PackageReader(); reader1.On <DefaultModel>((sender, model) => received1 = model); reader1.On <CriticalModel>((sender, model) => received2 = model); TestServer server = new TestServer(44352); server.Run(reader1, reader2); TwinoWebSocket client = new TwinoWebSocket(); client.Connect("127.0.0.1", 44352, false); client.Send(new DefaultModel { Name = "Default", Number = 501 }); client.Send(new CriticalModel { Name = "Critical", Number = 502 }); //wait for async package reading await Task.Delay(2000); Assert.NotNull(received1); Assert.Equal(501, received1.Number); Assert.NotNull(received2); Assert.Equal(502, received2.Number); }
public void WriteCriticalModel() { CriticalModel model = new CriticalModel(); model.Type = 123; model.Number = 500; model.Name = "Critical"; string serialized = _writer.Serialize(model); Assert.Equal("[123,{\"type\":123,\"name\":\"Critical\",\"number\":500}]", serialized); }
public void ReadCriticalModel() { string serialized = "[123,{\"type\":123,\"name\":\"Critical\",\"number\":500}]"; CriticalModel model = (CriticalModel)_reader.Read(typeof(CriticalModel), serialized); CriticalModel gmodel = _reader.Read <CriticalModel>(serialized); Assert.Equal(123, model.Type); Assert.Equal(123, gmodel.Type); Assert.Equal(500, model.Number); Assert.Equal(500, gmodel.Number); Assert.Equal("Critical", model.Name); Assert.Equal("Critical", gmodel.Name); }
public void WriteReadCriticalModel() { CriticalModel smodel = new CriticalModel(); smodel.Type = 123; smodel.Number = 500; smodel.Name = "Critical"; string serialized = _writer.Serialize(smodel); CriticalModel model = (CriticalModel)_reader.Read(typeof(CriticalModel), serialized); CriticalModel gmodel = _reader.Read <CriticalModel>(serialized); Assert.Equal(123, model.Type); Assert.Equal(123, gmodel.Type); Assert.Equal(500, model.Number); Assert.Equal(500, gmodel.Number); Assert.Equal("Critical", model.Name); Assert.Equal("Critical", gmodel.Name); }