Esempio n. 1
0
        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");
            }
        }
Esempio n. 2
0
        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");
            }
        }
Esempio n. 3
0
        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());
        }