예제 #1
0
        public async Task <JsonResult> CompleteJob()
        {
            string contents = RxJobHelpers.GetRequestData(Request.Body);

            if (String.IsNullOrEmpty(contents))
            {
                return(new JsonResult(new IResponse((int)ResponseCode.ERROR, GlobalObject.ResponseStatus.ERROR, "Bad Request")));
            }

            var requestData = JsonConvert.DeserializeObject <RxJob>(contents);
            var job         = await _rxJobRepository.GetByIdAsync(requestData.Id);

            if (job == null || job.StatusNum != requestData.StatusNum)
            {
                return(new JsonResult(new IResponse((int)ResponseCode.ERROR, GlobalObject.ResponseStatus.ERROR, "Job not found or modified. Please try again")));
            }

            RxJobHelpers.UpdateJobStatus(job, GlobalObject.JobStatus.COMPLETE);
            await _rxJobRepository.UpdateAsync(job);

            return(new JsonResult(new IResponse((int)ResponseCode.SUCCESS, GlobalObject.ResponseStatus.SUCCESS, "")));
        }
예제 #2
0
        public void UpdateJobStatus_Should_UpdateJobStatus(RxJob job, string jobStatus, int expectedStatus)
        {
            RxJobHelpers.UpdateJobStatus(job, jobStatus);

            Assert.True(job.StatusNum == expectedStatus);
        }