Esempio n. 1
0
        public void GetMessageSinksFromConfiguration_Cucumber_Messages_Are_Not_Configured__No_Sink()
        {
            var specFlowConfiguration = ConfigurationLoader.GetDefault();

            var sinkProvider = new SinkProvider(specFlowConfiguration, new Mock <IBinaryFileAccessor>().Object, new Mock <IProtobufFileNameResolver>().Object);

            sinkProvider.GetMessageSinksFromConfiguration().Should().BeEmpty();
        }
Esempio n. 2
0
        public void GetMessageSinksFromConfiguration_Cucumber_Messages_Are_Enabled__Default_Sink()
        {
            var specFlowConfiguration = ConfigurationLoader.GetDefault();

            specFlowConfiguration.CucumberMessagesConfiguration.Enabled = true;

            var sinkProvider = new SinkProvider(specFlowConfiguration, new Mock <IBinaryFileAccessor>().Object, new Mock <IProtobufFileNameResolver>().Object);

            sinkProvider.GetMessageSinksFromConfiguration().Should().HaveCount(1);
            var cucumberMessageSink = sinkProvider.GetMessageSinksFromConfiguration().First();

            cucumberMessageSink.Should().BeOfType <ProtobufFileSink>();
        }
Esempio n. 3
0
        public void GetMessageSinksFromConfiguration_Unknown_sinks_are_configured__Error_is_thrown()
        {
            var specFlowConfiguration = ConfigurationLoader.GetDefault();

            specFlowConfiguration.CucumberMessagesConfiguration.Enabled = true;

            specFlowConfiguration.CucumberMessagesConfiguration.Sinks.Add(new CucumberMessagesSink("unknown_type", "path_to_something"));

            var sinkProvider = new SinkProvider(specFlowConfiguration, new Mock <IBinaryFileAccessor>().Object, new Mock <IProtobufFileNameResolver>().Object);

            Action action = () => sinkProvider.GetMessageSinksFromConfiguration();

            action.Should().Throw <NotImplementedException>().WithMessage("The sink type unknown_type");
        }
Esempio n. 4
0
        public void GetMessageSinksFromConfiguration_CustomSinks_are_configured__These_are_returned()
        {
            var specFlowConfiguration = ConfigurationLoader.GetDefault();

            specFlowConfiguration.CucumberMessagesConfiguration.Enabled = true;

            specFlowConfiguration.CucumberMessagesConfiguration.Sinks.Add(new CucumberMessagesSink("file", "path_to_something"));
            specFlowConfiguration.CucumberMessagesConfiguration.Sinks.Add(new CucumberMessagesSink("file", "path_to_something_else"));

            var sinkProvider = new SinkProvider(specFlowConfiguration, new Mock <IBinaryFileAccessor>().Object, new Mock <IProtobufFileNameResolver>().Object);

            var messageSinksFromConfiguration = sinkProvider.GetMessageSinksFromConfiguration();

            messageSinksFromConfiguration.Should().HaveCount(2);
            messageSinksFromConfiguration.Should().AllBeOfType <ProtobufFileSink>();
        }