public void RunToCompletion_Throws_On_Failed_Job() { var job = new BirstJob(CheckServiceAndReturnToken("token"), _adminService.Object); job.PollingInterval = TimeSpan.FromMilliseconds(1); _adminService.SetupSequence(a => a.IsJobComplete("token")) .Returns(false) .Returns(false) .Returns(true); var status = new BirstWebService.StatusResult { statusCode = "failed" }; _adminService.Setup(a => a.GetJobStatus("token")).Returns(status); var error = Assert.Throws <BirstException>(() => job.RunToCompletion()); Assert.That(error.Status, Is.SameAs(status)); _adminService.Verify(a => a.IsJobComplete(It.IsAny <string>()), Times.Exactly(3)); _adminService.Verify(a => a.GetJobStatus(It.IsAny <string>()), Times.Once()); }
public void RunToCompletion_Starts_Then_Polls_For_Update() { var job = new BirstJob(CheckServiceAndReturnToken("token"), _adminService.Object); job.PollingInterval = TimeSpan.FromMilliseconds(1); _adminService.SetupSequence(a => a.IsJobComplete("token")) .Returns(false) .Returns(false) .Returns(true); _adminService.Setup(a => a.GetJobStatus("token")).Returns(new BirstWebService.StatusResult { statusCode = "success" }); job.RunToCompletion(); _adminService.Verify(a => a.IsJobComplete(It.IsAny <string>()), Times.Exactly(3)); _adminService.Verify(a => a.GetJobStatus(It.IsAny <string>()), Times.Once()); }