Exemplo n.º 1
0
        public void Id_is_copied_from_ws_client()
        {
            IWebSocketsClient webSocketsClient = Substitute.For <IWebSocketsClient>();

            webSocketsClient.Id.Returns(nameof(NdmWebSocketsClientTests) + "_id");

            INdmDataPublisher   dataPublisher = Substitute.For <INdmDataPublisher>();
            NdmWebSocketsClient client        = new NdmWebSocketsClient(webSocketsClient, dataPublisher);

            client.Id.Should().Be(nameof(NdmWebSocketsClientTests) + "_id");
        }
Exemplo n.º 2
0
        public void Can_receive_invalid_data_asset_id()
        {
            IWebSocketsClient webSocketsClient = Substitute.For <IWebSocketsClient>();

            webSocketsClient.Id.Returns(nameof(NdmWebSocketsClientTests) + "_id");

            INdmDataPublisher   dataPublisher = Substitute.For <INdmDataPublisher>();
            NdmWebSocketsClient client        = new NdmWebSocketsClient(webSocketsClient, dataPublisher);

            client.ReceiveAsync(Encoding.ASCII.GetBytes("a|b|c"));
        }
Exemplo n.º 3
0
        public void Can_receive_null_or_empty_data()
        {
            IWebSocketsClient webSocketsClient = Substitute.For <IWebSocketsClient>();

            webSocketsClient.Id.Returns(nameof(NdmWebSocketsClientTests) + "_id");

            INdmDataPublisher   dataPublisher = Substitute.For <INdmDataPublisher>();
            NdmWebSocketsClient client        = new NdmWebSocketsClient(webSocketsClient, dataPublisher);

            client.ReceiveAsync(null);
            client.ReceiveAsync(Bytes.Empty);
        }
Exemplo n.º 4
0
        public void Can_receive_data()
        {
            IWebSocketsClient webSocketsClient = Substitute.For <IWebSocketsClient>();

            webSocketsClient.Id.Returns(nameof(NdmWebSocketsClientTests) + "_id");

            INdmDataPublisher   dataPublisher = Substitute.For <INdmDataPublisher>();
            NdmWebSocketsClient client        = new NdmWebSocketsClient(webSocketsClient, dataPublisher);

            client.ReceiveAsync(Encoding.ASCII.GetBytes($"{Keccak.Zero.Bytes.ToHexString(false)}|b|c"));
            dataPublisher.Received().Publish(Arg.Is <DataAssetData>(dad => dad.Data == "c" && dad.AssetId == Keccak.Zero));
        }
        public void Can_receive_data_without_asset_id()
        {
            IWebSocketsClient webSocketsClient = Substitute.For <IWebSocketsClient>();

            webSocketsClient.Id.Returns(nameof(NdmWebSocketsClientTests) + "_id");

            INdmDataPublisher   dataPublisher = Substitute.For <INdmDataPublisher>();
            NdmWebSocketsClient client        = new NdmWebSocketsClient(webSocketsClient, dataPublisher);

            client.ReceiveAsync(Encoding.ASCII.GetBytes("|b|c"));
            dataPublisher.DidNotReceiveWithAnyArgs().Publish(null);
        }
Exemplo n.º 6
0
        public void Forwards_raw_messages_to_ws_client()
        {
            IWebSocketsClient webSocketsClient = Substitute.For <IWebSocketsClient>();

            webSocketsClient.Id.Returns(nameof(NdmWebSocketsClientTests) + "_id");

            INdmDataPublisher   dataPublisher = Substitute.For <INdmDataPublisher>();
            NdmWebSocketsClient client        = new NdmWebSocketsClient(webSocketsClient, dataPublisher);

            client.SendRawAsync("raw");

            webSocketsClient.Received().SendRawAsync("raw");
        }
Exemplo n.º 7
0
        public void Forwards_messages_to_ws_client()
        {
            IWebSocketsClient webSocketsClient = Substitute.For <IWebSocketsClient>();

            webSocketsClient.Id.Returns(nameof(NdmWebSocketsClientTests) + "_id");

            INdmDataPublisher   dataPublisher = Substitute.For <INdmDataPublisher>();
            NdmWebSocketsClient client        = new NdmWebSocketsClient(webSocketsClient, dataPublisher);
            WebSocketsMessage   message       = new WebSocketsMessage("type", "client", "data");

            client.SendAsync(message);

            webSocketsClient.Received().SendAsync(message);
        }