Exemplo n.º 1
0
        public void ShouldSubmitOnComplete()
        {
            var buildCrossCheckLogger = new BuildCrossCheckLogger();
            var fileSystem            = Substitute.For <IFileSystem>();
            var eventSource           = Substitute.For <IEventSource>();
            var environment           = Substitute.For <IEnvironmentProvider>();
            var submissionService     = Substitute.For <ISubmissionService>();
            var parameterParser       = Substitute.For <IParameterParser>();
            var logDataBuilderFactory = Substitute.For <ILogDataBuilderFactory>();

            buildCrossCheckLogger.Initialize(fileSystem, eventSource, environment, submissionService, parameterParser, logDataBuilderFactory);

            var bccToken = Faker.Random.String(12);

            environment.GetEnvironmentVariable(Arg.Is("BCC_TOKEN"))
            .Returns(bccToken);

            buildCrossCheckLogger.Initialize(fileSystem, eventSource, environment, submissionService, parameterParser, logDataBuilderFactory);

            environment.Received(1).GetEnvironmentVariable(Arg.Is("BCC_TOKEN"));
            environment.Received(1).WriteLine(Arg.Is("BuildCrossCheck Enabled"));

            var buildStartedEventArgs = new BuildStartedEventArgs(Faker.Random.String(), Faker.Random.String());

            eventSource.BuildStarted +=
                Raise.Event <BuildStartedEventHandler>(buildStartedEventArgs);

            var buildFinishedEventArgs = new BuildFinishedEventArgs(Faker.Random.String(), Faker.Random.String(), true);

            eventSource.BuildFinished +=
                Raise.Event <BuildFinishedEventHandler>(buildFinishedEventArgs);

            submissionService.Received(1).SubmitAsync(Arg.Any <byte[]>(), Arg.Any <Parameters>());
        }
Exemplo n.º 2
0
        public void ShouldNotInitialize()
        {
            var buildCrossCheckLogger = new BuildCrossCheckLogger();
            var fileSystem            = Substitute.For <IFileSystem>();
            var eventSource           = Substitute.For <IEventSource>();
            var environment           = Substitute.For <IEnvironmentProvider>();
            var submissionService     = Substitute.For <ISubmissionService>();
            var parameterParser       = Substitute.For <IParameterParser>();
            var logDataBuilderFactory = Substitute.For <ILogDataBuilderFactory>();

            parameterParser.Parse(Arg.Any <string>()).Returns(new Parameters());
            buildCrossCheckLogger.Initialize(fileSystem, eventSource, environment, submissionService, parameterParser, logDataBuilderFactory);

            environment.Received(1).WriteLine(Arg.Is("BuildCrossCheck Token is not present"));
        }