예제 #1
0
        public void when_writing_invalid_publish_packet_then_fails(string jsonPath)
        {
            jsonPath = Path.Combine(Environment.CurrentDirectory, jsonPath);

            MqttTopicEvaluator topicEvaluator = new MqttTopicEvaluator(new MqttConfiguration());
            PublishFormatter   formatter      = new PublishFormatter(topicEvaluator);
            Publish            publish        = Packet.ReadPacket <Publish>(jsonPath);

            AggregateException ex = Assert.Throws <AggregateException>(() => formatter.FormatAsync(publish).Wait());

            Assert.True(ex.InnerException is MqttException);
        }
예제 #2
0
        public void when_reading_invalid_publish_packet_then_fails(string packetPath)
        {
            packetPath = Path.Combine(Environment.CurrentDirectory, packetPath);

            var topicEvaluator = new MqttTopicEvaluator(new MqttConfiguration());
            var formatter      = new PublishFormatter(topicEvaluator);
            var packet         = Packet.ReadAllBytes(packetPath);

            var ex = Assert.Throws <AggregateException> (() => formatter.FormatAsync(packet).Wait());

            Assert.True(ex.InnerException is MqttException);
        }
예제 #3
0
        public async Task when_writing_publish_packet_then_succeeds(string jsonPath, string packetPath)
        {
            jsonPath   = Path.Combine(Environment.CurrentDirectory, jsonPath);
            packetPath = Path.Combine(Environment.CurrentDirectory, packetPath);

            byte[] expectedPacket = Packet.ReadAllBytes(packetPath);
            IMqttTopicEvaluator topicEvaluator = Mock.Of <IMqttTopicEvaluator>(e => e.IsValidTopicName(It.IsAny <string>()) == true);
            PublishFormatter    formatter      = new PublishFormatter(topicEvaluator);
            Publish             publish        = Packet.ReadPacket <Publish>(jsonPath);

            byte[] result = await formatter.FormatAsync(publish);

            expectedPacket.Should().BeEquivalentTo(result);
        }
예제 #4
0
        public async Task when_writing_publish_packet_then_succeeds(string jsonPath, string packetPath)
        {
            jsonPath   = Path.Combine(Environment.CurrentDirectory, jsonPath);
            packetPath = Path.Combine(Environment.CurrentDirectory, packetPath);

            var expectedPacket = Packet.ReadAllBytes(packetPath);
            var topicEvaluator = Mock.Of <IMqttTopicEvaluator> (e => e.IsValidTopicName(It.IsAny <string>()) == true);
            var formatter      = new PublishFormatter(topicEvaluator);
            var publish        = Packet.ReadPacket <Publish> (jsonPath);

            var result = await formatter.FormatAsync(publish)
                         .ConfigureAwait(continueOnCapturedContext: false);

            Assert.Equal(expectedPacket, result);
        }