internal void InitializedPublisher_IsInCorrectState() { // Arrange // Act var publisher = new MockDataPublisher( this.container, DataBusFactory.Create(this.container), EncryptionSettings.None(), ZmqNetworkAddress.LocalHost(new Port(55555))); // Assert Assert.Equal(ComponentState.Initialized, publisher.ComponentState); Assert.Equal(0, publisher.SentCount); }
public MessageServerTests(ITestOutputHelper output) : base(output) { // Fixture Setup this.container = TestComponentryContainer.Create(output); this.messagingAdapter = new MockMessageBusProvider(this.container).Adapter; this.headerSerializer = new MsgPackDictionarySerializer(); this.requestSerializer = new MsgPackRequestSerializer(); this.responseSerializer = new MsgPackResponseSerializer(); this.compressor = new BypassCompressor(); this.testRequestAddress = ZmqNetworkAddress.LocalHost(new Port(55655)); this.testResponseAddress = ZmqNetworkAddress.LocalHost(new Port(55656)); }
internal void GivenMessageToPublish_WhenMessageValid_PublishesToSubscriber() { // Arrange var publisher = new MockDataPublisher( this.container, DataBusFactory.Create(this.container), EncryptionSettings.None(), ZmqNetworkAddress.LocalHost(new Port(55555))); publisher.Start().Wait(); const string testAddress = "tcp://localhost:55555"; var subscriber = new SubscriberSocket(testAddress); subscriber.Connect(testAddress); subscriber.Subscribe(TestTopic); Task.Delay(100).Wait(); // Allow sockets to subscribe // Act const string toSend = "1234,1234"; publisher.Endpoint.SendAsync((TestTopic, toSend)); var topic = subscriber.ReceiveFrameBytes(); var message = subscriber.ReceiveFrameBytes(); // Assert Assert.Equal(TestTopic, Encoding.UTF8.GetString(topic)); Assert.Equal(toSend, Encoding.UTF8.GetString(message)); Assert.Equal(ComponentState.Running, publisher.ComponentState); Assert.Equal(1, publisher.SentCount); // Tear Down subscriber.Disconnect(testAddress); subscriber.Dispose(); publisher.Stop().Wait(); publisher.Dispose(); }