Пример #1
0
        public void Should_Call_Teardown_On_Registered_Lifetime()
        {
            // Given
            var fixture  = new CakeHostBuilderFixture();
            var lifetime = fixture.RegisterDefaultTask()
                           .RegisterLifetimeSubstitute();

            // When
            fixture.Run();

            // Then
            lifetime.Received(1).Teardown(Arg.Any <ICakeContext>(), Arg.Any <ITeardownContext>());
        }
Пример #2
0
        public void Should_Call_Setup_On_Registered_Task_Lifetime()
        {
            // Given
            var fixture  = new CakeHostBuilderFixture();
            var lifetime = fixture.RegisterDefaultTask()
                           .RegisterTaskLifetimeSubstitute();

            // When
            fixture.Run();

            // Then
            lifetime.Received(1).Setup(Arg.Any <ICakeContext>(), Arg.Any <ITaskSetupContext>());
        }
Пример #3
0
        public void Should_Call_Teardown_On_Registered_Task_Lifetime()
        {
            // Given
            var fixture  = new CakeHostBuilderFixture();
            var lifetime = fixture.RegisterDefaultTask()
                           .RegisterTaskLifetimeSubstitute();

            // When
            fixture.Run();

            // Then
            Assert.True(lifetime.CalledTeardown);
        }
Пример #4
0
        public void Should_Register_Tasks_With_Engine()
        {
            // Given
            var fixture = new CakeHostBuilderFixture();

            fixture.RegisterDefaultTask();

            // When
            fixture.Run();

            // Then
            Assert.True(fixture.Engine.IsTaskRegistered("DummyTask"));
        }
Пример #5
0
        public void Should_Return_Zero_On_Success()
        {
            // Given
            var fixture = new CakeHostBuilderFixture();

            fixture.RegisterDefaultTask();

            // When
            var result = fixture.Run();

            // Then
            Assert.Equal(0, result);
        }
Пример #6
0
        public void Should_Set_Working_Directory_From_Options()
        {
            // Given
            var fixture = new CakeHostBuilderFixture();

            fixture.RegisterDefaultTask();
            fixture.Options.WorkingDirectory = "./Temp";

            // When
            fixture.Run();

            // Then
            Assert.Equal("/Working/Temp", fixture.Environment.WorkingDirectory.FullPath);
        }
Пример #7
0
        public void Should_Set_Log_Verbosity_From_Options()
        {
            // Given
            var fixture = new CakeHostBuilderFixture();

            fixture.RegisterDefaultTask();
            fixture.Options.Verbosity = Verbosity.Diagnostic;

            // When
            fixture.Run();

            // Then
            Assert.Equal(Verbosity.Diagnostic, fixture.Log.Verbosity);
        }
Пример #8
0
        public void Should_Execute_Tasks()
        {
            // Given
            var fixture = new CakeHostBuilderFixture();

            fixture.RegisterDefaultTask();
            fixture.UseExecutionStrategySubstitute();

            // When
            fixture.Run();

            // Then
            fixture.Strategy.Received(1).Execute(Arg.Is <CakeTask>(t => t.Name == "DummyTask"), Arg.Any <ICakeContext>());
        }
Пример #9
0
        public void Should_Use_Working_Directory_From_Service_Configuration_If_Set()
        {
            // Given
            var fixture = new CakeHostBuilderFixture();

            fixture.RegisterDefaultTask();
            fixture.FileSystem.CreateDirectory("/Working/Foo");
            fixture.Builder.ConfigureServices(s => s.UseWorkingDirectory("./Foo"));

            // When
            fixture.Run();

            // Then
            Assert.Equal("/Working/Foo", fixture.Environment.WorkingDirectory.FullPath);
        }
Пример #10
0
        public void Should_Install_Tools()
        {
            // Given
            var fixture = new CakeHostBuilderFixture();

            fixture.Builder.ConfigureServices(s => s.UseTool(new Uri("foo:?package=Bar")));
            fixture.RegisterDefaultTask();

            // When
            fixture.Run();

            // Then
            fixture.Installer.Received(1).Install(Arg.Is <PackageReference>(
                                                      p => p.OriginalString == "foo:?package=Bar"));
        }
Пример #11
0
        public void Should_Not_Call_Teardown_On_Registered_Task_Lifetime_If_Not_Overridden()
        {
            // Given
            var fixture = new CakeHostBuilderFixture();

            fixture.RegisterDefaultTask();
            fixture.RegisterTaskLifetimeSubstitute(new FakeTaskLifetime.WithoutOverrides());
            fixture.UseExecutionStrategySubstitute();

            // When
            fixture.Run();

            // Then
            fixture.Strategy.Received(0).PerformTaskTeardown(
                Arg.Any <Action <ITaskTeardownContext> >(),
                Arg.Any <ITaskTeardownContext>());
        }