public void AddingADuplicateProjectWithForceBuildReplaces() { // Setup the first project request project1Mock.SetupResult("QueueName", integrationQueueReplace.Name); project1Mock.SetupResult("QueuePriority", 1); queueNotifier1Mock.Expect("NotifyEnteringIntegrationQueue"); integrationQueueReplace.Enqueue(integrationQueueItem1); // Add a second project request for different project with same queue name project2Mock.SetupResult("QueueName", integrationQueueReplace.Name); project2Mock.SetupResult("QueuePriority", 0); queueNotifier2Mock.Expect("NotifyEnteringIntegrationQueue"); integrationQueueReplace.Enqueue(integrationQueueItem4); // Add a third project request for different project with same queue name project3Mock.SetupResult("QueueName", integrationQueueReplace.Name); project3Mock.SetupResult("QueuePriority", 0); queueNotifier3Mock.Expect("NotifyEnteringIntegrationQueue"); integrationQueueReplace.Enqueue(integrationQueueItem3); // Now add the second project request again, but with a force build project2Mock.SetupResult("QueueName", integrationQueueReplace.Name); project2Mock.SetupResult("QueuePriority", 0); queueNotifier2Mock.Expect("NotifyEnteringIntegrationQueue"); queueNotifier2Mock.Expect("NotifyExitingIntegrationQueue", true); integrationQueueReplace.Enqueue(integrationQueueItem2); // Check the queued items IIntegrationQueueItem[] queuedItems = integrationQueueReplace.GetQueuedIntegrations(); Assert.AreEqual(integrationQueueItem2, queuedItems[1], "Integration item #1 is incorrect"); Assert.AreEqual(integrationQueueItem3, queuedItems[2], "Integration item #2 is incorrect"); VerifyAll(); }
public void AddingADuplicateProjectWithForceBuildReAdds() { // Setup the first project request project1Mock.SetupGet(project => project.QueueName).Returns(integrationQueueReAdd.Name); project1Mock.SetupGet(project => project.QueuePriority).Returns(1); queueNotifier1Mock.Setup(notifier => notifier.NotifyEnteringIntegrationQueue()).Verifiable(); integrationQueueReAdd.Enqueue(integrationQueueItem1); // Add a second project request for different project with same queue name project2Mock.SetupGet(project => project.QueueName).Returns(integrationQueueReAdd.Name); project2Mock.SetupGet(project => project.QueuePriority).Returns(0); queueNotifier2Mock.Setup(notifier => notifier.NotifyEnteringIntegrationQueue()).Verifiable(); integrationQueueReAdd.Enqueue(integrationQueueItem4); // Add a third project request for different project with same queue name project3Mock.SetupGet(project => project.QueueName).Returns(integrationQueueReAdd.Name); project3Mock.SetupGet(project => project.QueuePriority).Returns(0); queueNotifier3Mock.Setup(notifier => notifier.NotifyEnteringIntegrationQueue()).Verifiable(); integrationQueueReAdd.Enqueue(integrationQueueItem3); // Now add the second project request again, but with a force build project2Mock.SetupGet(project => project.QueueName).Returns(integrationQueueReAdd.Name); project2Mock.SetupGet(project => project.QueuePriority).Returns(0); queueNotifier2Mock.Setup(notifier => notifier.NotifyEnteringIntegrationQueue()).Verifiable(); queueNotifier2Mock.Setup(notifier => notifier.NotifyExitingIntegrationQueue(true)).Verifiable(); integrationQueueReAdd.Enqueue(integrationQueueItem2); // Check the queued items IIntegrationQueueItem[] queuedItems = integrationQueueReAdd.GetQueuedIntegrations(); Assert.AreEqual(integrationQueueItem3, queuedItems[1], "Integration item #1 is incorrect"); Assert.AreEqual(integrationQueueItem2, queuedItems[2], "Integration item #2 is incorrect"); VerifyAll(); }
public void CancelPendingRequestDoesNothingForNoPendingItems() { int queuedItemCount = integrationQueue.GetQueuedIntegrations().Length; integrator.CancelPendingRequest(); Assert.AreEqual(queuedItemCount, integrationQueue.GetQueuedIntegrations().Length); VerifyAll(); }
public void FirstProjectOnQueueShouldIntegrateImmediately() { queueNotifier1Mock.Expect("NotifyEnteringIntegrationQueue"); queueNotifier1Mock.ExpectNoCall("NotifyExitingIntegrationQueue", typeof(bool)); integrationQueueUseFirst.Enqueue(integrationQueueItem1); string[] queueNames = integrationQueues.GetQueueNames(); Assert.AreEqual(4, queueNames.Length); Assert.AreEqual(TestQueueName, queueNames[0]); IIntegrationQueueItem[] itemsOnQueue = integrationQueueUseFirst.GetQueuedIntegrations(); Assert.AreEqual(1, itemsOnQueue.Length); Assert.AreSame(integrationQueueItem1, itemsOnQueue[0]); VerifyAll(); }
public void FirstProjectOnQueueShouldIntegrateImmediately() { queueNotifier1Mock.Setup(notifier => notifier.NotifyEnteringIntegrationQueue()).Verifiable(); integrationQueueUseFirst.Enqueue(integrationQueueItem1); string[] queueNames = integrationQueues.GetQueueNames(); Assert.AreEqual(4, queueNames.Length); Assert.AreEqual(TestQueueName, queueNames[0]); IIntegrationQueueItem[] itemsOnQueue = integrationQueueUseFirst.GetQueuedIntegrations(); Assert.AreEqual(1, itemsOnQueue.Length); Assert.AreSame(integrationQueueItem1, itemsOnQueue[0]); VerifyAll(); queueNotifier1Mock.VerifyNoOtherCalls(); }