Beispiel #1
0
        public async Task <PagedList <Submission> > GetSubmissionsAsync(Guid assignmentId,
                                                                        SubmissionParameters submissionParameters, bool trackChanges)
        {
            var submission = await FindByCondition(e => e.AssignmentId.Equals(assignmentId), trackChanges)
                             .OrderBy(e => e.SubmissionTitle)
                             .ToListAsync();

            return(PagedList <Submission>
                   .ToPagedList(submission, submissionParameters.PageNumber, submissionParameters.PageSize));
        }
        public static Response <SubmissionResult> Submit(
            Submission submission, SubmissionParameters parameters)
        {
            string url         = JudgeUrl.Submission(parameters);
            string contentJson = Serialize.ToJson(submission);

            Rest.Request  request  = new Rest.Request(url, "POST", contentJson);
            Rest.Response response = Rest.Send(request);
            return(JudgeResponse <SubmissionResult>(response));
        }
        static Response <SubmissionResult> DoSubmit()
        {
            SubmissionParameters parameters = new SubmissionParameters()
            {
                Wait = true
            };

            Submission submission = new Submission()
            {
                SourceCode     = "print('Hello World')",
                ExpectedOutput = null,
                Stdin          = "",
                NumberOfRuns   = 1,
                LanguageId     = 34
            };

            return(Functions.Submit(submission, parameters));
        }
Beispiel #4
0
        public async Task <IActionResult> GetSubmissionsForAssignment(Guid assignmentId, SubmissionParameters submissionParameters)

        {
            var assignment = await _repository.Assignment.GetAssignmentsAsync(assignmentId, trackChanges : false);

            if (assignment == null)
            {
                _logger.LogInfo($"Assignment with id: {assignmentId} doesn't exist in the database.");
                return(NotFound());
            }

            var submissionsFromDb = await _repository.Submission.GetSubmissionsAsync(assignmentId, submissionParameters, trackChanges : false);

            Response.Headers.Add("X-Pagination", JsonConvert.SerializeObject(submissionsFromDb.MetaData));

            var submissionsDto = _mapper.Map <IEnumerable <SubmissionDto> >(submissionsFromDb);

            return(Ok(submissionsDto));
        }
Beispiel #5
0
 internal static string Submission(SubmissionParameters parameters)
 {
     return(Make("submissions/",
                 GetBase64EncodedQuery(parameters.Base64Encoded),
                 GetWaitQuery(parameters.Wait)));
 }