public void LabelSourceControlFailsIfLabelIsOnlyNumeric() { P4 p4 = CreateP4(); p4.View = "//depot/myproject/..."; p4.ApplyLabel = true; try { p4.LabelSourceControl(IntegrationResultMother.CreateSuccessful("123")); Assert.Fail("Perforce labelling should fail if a purely numeric label is attempted to be applied"); } catch (CruiseControlException) {} VerifyAll(); }
public void LabelSourceControlIfApplyLabelTrueWithMultiLineViews() { P4 p4 = CreateP4(); p4.View = "//depot/myproj/...,//myotherdepot/proj/..."; p4.ApplyLabel = true; ProcessInfo labelSpecProcess = new ProcessInfo("spec"); ProcessInfo labelSpecProcessWithStdInContent = new ProcessInfo("spec"); labelSpecProcessWithStdInContent.StandardInputContent = "Label: foo-123\n\nDescription:\n Created by CCNet\n\nOptions: unlocked\n\nView:\n //depot/myproj/...\n //myotherdepot/proj/...\n"; ProcessInfo labelSyncProcess = new ProcessInfo("sync"); processInfoCreatorMock.ExpectAndReturn("CreateProcessInfo", labelSpecProcess, p4, "label -i"); mockProcessExecutor.ExpectAndReturn("Execute", new ProcessResult("", "", 0, false), labelSpecProcessWithStdInContent); processInfoCreatorMock.ExpectAndReturn("CreateProcessInfo", labelSyncProcess, p4, "labelsync -l foo-123"); mockProcessExecutor.ExpectAndReturn("Execute", new ProcessResult("", "", 0, false), labelSyncProcess); // Execute p4.LabelSourceControl(IntegrationResultMother.CreateSuccessful("foo-123")); // Verify VerifyAll(); }
public void LabelSourceControlIfApplyLabelTrue() { P4 p4 = CreateP4(); p4.View = "//depot/myproject/..."; p4.ApplyLabel = true; ProcessInfo labelSpecProcess = new ProcessInfo("spec"); ProcessInfo labelSpecProcessWithStdInContent = new ProcessInfo("spec"); labelSpecProcessWithStdInContent.StandardInputContent = "Label: foo-123\n\nDescription:\n Created by CCNet\n\nOptions: unlocked\n\nView:\n //depot/myproject/...\n"; ProcessInfo labelSyncProcess = new ProcessInfo("sync"); processInfoCreatorMock.Setup(creator => creator.CreateProcessInfo(p4, "label -i")).Returns(labelSpecProcess).Verifiable(); mockProcessExecutor.Setup(executor => executor.Execute(labelSpecProcessWithStdInContent)).Returns(new ProcessResult("", "", 0, false)).Verifiable(); processInfoCreatorMock.Setup(creator => creator.CreateProcessInfo(p4, "labelsync -l foo-123")).Returns(labelSyncProcess).Verifiable(); mockProcessExecutor.Setup(executor => executor.Execute(labelSyncProcess)).Returns(new ProcessResult("", "", 0, false)).Verifiable(); // Execute p4.LabelSourceControl(IntegrationResultMother.CreateSuccessful("foo-123")); // Verify VerifyAll(); }