public void GetSourceControlBlockRetrievesSingleBlockFromProject()
 {
     var expectedBlock = new SourceControlBlockStub();
     var task = new SourceControlTaskStub();
     var project = new Project("test", task);
     project.SourceControl.Add(expectedBlock);
     var actualBlock = task.RunGetSourceControlBlock();
     Assert.AreSame(expectedBlock, actualBlock);
 }
 public void RunCallsDefaultSourceControlBlock()
 {
     var getSourceCalled = false;
     var block = new SourceControlBlockStub
                     {
                         GetSourceAction = p => getSourceCalled = true
                     };
     var task = new GetSource();
     var project = new Project("Name", task);
     project.SourceControl.Add(block);
     var result = task.Run(null);
     result.Count();
     Assert.IsTrue(getSourceCalled);
 }
 public void GetSourceControlBlockRetrievesNamedBlockFromProject()
 {
     var blockName = "BlockToFind";
     var expectedBlock = new SourceControlBlockStub
                             {
                                 Name = blockName
                             };
     var task = new SourceControlTaskStub
                    {
                        Use = blockName
                    };
     var project = new Project("test", task);
     project.SourceControl.Add(expectedBlock);
     project.SourceControl.Add(new SourceControlBlockStub());
     var actualBlock = task.RunGetSourceControlBlock();
     Assert.AreSame(expectedBlock, actualBlock);
 }
 public void IntegrateHandlesErrorDuringSourceControlCleanUp()
 {
     var initialised = false;
     var dummy = new SourceControlBlockStub
     {
         OnInitialise = () => initialised = true,
         OnCleanUp = () =>
                         {
                             throw new Exception("Oops");
                         }
     };
     var executionFactoryMock = new Mock<ITaskExecutionFactory>(MockBehavior.Strict);
     InitialiseExecutionContext(executionFactoryMock);
     var project = new Project("test")
                       {
                           TaskExecutionFactory = executionFactoryMock.Object
                       };
     project.SourceControl.Add(dummy);
     var request = new IntegrationRequest("Dummy");
     project.Integrate(request);
     Assert.IsTrue(initialised);
 }
 public void IntegrateInitialisesAndCleansUpSourceControl()
 {
     var initialised = false;
     var cleanedUp = false;
     var dummy = new SourceControlBlockStub
         {
             OnInitialise = () => initialised = true,
             OnCleanUp = () => cleanedUp = true
         };
     var executionFactoryMock = new Mock<ITaskExecutionFactory>(MockBehavior.Strict);
     InitialiseExecutionContext(executionFactoryMock);
     var project = new Project("test")
                       {
                           TaskExecutionFactory = executionFactoryMock.Object
                       };
     project.SourceControl.Add(dummy);
     var request = new IntegrationRequest("Dummy");
     project.Integrate(request);
     Assert.IsTrue(initialised);
     Assert.IsTrue(cleanedUp);
 }
 public void ValidateValidatesSourceControlBlocks()
 {
     var validateCalled = false;
     var sourceControl = new SourceControlBlockStub
                             {
                                 OnValidate = vl => validateCalled = true
                             };
     var project = new Project("Test");
     project.SourceControl.Add(sourceControl);
     var validationMock = new Mock<IValidationLog>();
     project.Validate(validationMock.Object);
     Assert.IsTrue(validateCalled);
 }