public void VisitWorkStep(WorkStepNode workStepNode) { if (_path != WorkStep.Root.Path && !_workflow.ExistsWorkStep(_path)) { Response = WorkflowHttpResponse.NotFound; } TryOperation( () => { WorkStep workStep = workStepNode.GetWorkStep(_path); _workflow.CreateWorkStep(workStep); Response = WorkflowHttpResponse.Created(workStep.Path); } ); }
private WorkflowHttpResponse DeleteWorkStep(string path) { if (!_workflow.ExistsWorkStep(path)) { return(WorkflowHttpResponse.NotFound); } return(WorkflowHttpResponse.NotImplemented); }
public void ShouldReturnNotFoundWhenAttemptingToDeleteNonExistingWorkStep() { using (_mocks.Record()) { Expect.Call(_workflow.ExistsWorkStep("/scheduled")).Return(false); } using (_mocks.Playback()) { var request = CreateDeleteRequest("/scheduled"); Assert.AreEqual(HttpStatusCode.NotFound, _httpHandler.HandleRequest(request).HttpStatusCode); } }
public bool ExistsWorkStep(string path) { return(_workflow.ExistsWorkStep(path)); }