public async Task OnGetAsync([Required] Guid id) { if (!ModelState.IsValid) { return; } try { MySubmission = await _submissionService.GetSubmissionAsync(User.GetEmail(), id.ToString()); var allCases = await _testCaseService.GetByTask(MySubmission.TaskId); TestCaseList = new List <TestCaseRest>(); foreach (var oneCase in allCases) { if ((await _authService.AuthorizeAsync( User, oneCase, AuthorizationConstants.Submit)).Succeeded) { TestCaseList.Add(oneCase); } } } catch (Exception) { ModelState.AddModelError(string.Empty, "Failed loading some data"); } }
public async Task OnGetAsync( [FromRoute][Required] string user, [FromRoute][Required] Guid submissionId) { try { CurrentSubmission = await _submissionService.GetSubmissionAsync( user, submissionId.ToString(), urlOnly : false); TestCaseList = await _testCaseService.GetByTask(CurrentSubmission.TaskId); } catch (Exception) { ModelState.AddModelError(string.Empty, "Operation failed"); } }
public async void TestGetSubmissionAsync(int submissionId) { var testData = GetTestData(); var mockRepo = new Mock <IGenericRepository <Submission> >(); var mockSchemaRepo = new Mock <IGenericRepository <Schema> >(); var mockSession = new Mock <ISessionService>(); mockRepo.Setup(x => x.GetByIdAsync(submissionId)).ReturnsAsync(testData.FirstOrDefault(x => x.Id == submissionId)); var sut = new SubmissionService(mockRepo.Object, mockSchemaRepo.Object, mockSession.Object); var result = await sut.GetSubmissionAsync(submissionId); result.Should().NotBeNull(); result.Id.Should().Be(submissionId.ToString()); }