Esempio n. 1
0
        public void AddTopics_OnValidTopics()
        {
            // Arrange
            var           topics  = Fixture.Create <string[]>();
            ITopicBuilder builder = new TopicBuilder(topics.Length + 1, TopicConsumer.Subscriber);

            // Act
            builder = builder.AddTopics(topics);

            // Assert
            builder.Levels
            .Should()
            .Be(topics.Length,
                "because all topics should have been added");
        }
Esempio n. 2
0
        public void AddTopics_OnTopicsWithMultiLevelWildcard()
        {
            // Arrange
            var topics = Fixture.Create <List <string> >();

            topics.Add(Mqtt.Wildcard.MultiLevel.ToString());
            topics.AddRange(Fixture.Create <List <string> >());

            ITopicBuilder builder = new TopicBuilder(topics.Count + 1, TopicConsumer.Subscriber);

            // Act
            Action addTopicsWithAMultiLevelWildcard = () =>
                                                      builder.AddTopics(topics);

            // Assert
            addTopicsWithAMultiLevelWildcard.Should()
            .Throw <IllegalTopicConstructionException>(
                "because adding a multi-level wildcard among other topics is not valid");
        }