From be29e385d39c1dce1f9516225ffb9e251895d751 Mon Sep 17 00:00:00 2001 From: BoYanZh Date: Sat, 31 Oct 2020 02:20:04 +0800 Subject: update for C & multiple files uploading & code review checking --- VG101GradeHelper.py | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) (limited to 'VG101GradeHelper.py') diff --git a/VG101GradeHelper.py b/VG101GradeHelper.py index 6f03a06..6890e1e 100644 --- a/VG101GradeHelper.py +++ b/VG101GradeHelper.py @@ -31,6 +31,8 @@ def parse(): action='store_true', help='generate score') parser.add_argument('-t', '--tidy', action='store_true', help='check tidy') + # TODO: automatically check moss + parser.add_argument('-o', '--moss', action='store_true', help='check moss') parser.add_argument('-d', '--dir', action='store_true', @@ -71,13 +73,25 @@ if __name__ == "__main__": pwd = os.getcwd() args = parse() indvScores, groupScores, jojScores = {}, {}, {} - gitWorker = GitWorker(args, hgroups, JOJ_INFO["lang"], - [item[0] for item in JOJ_INFO["problemInfo"] - ]) if args.indv or args.group or args.proj else None + mandatoryFiles = MANDATORY_FILES + mandatoryFiles.extend( + [fn for item in JOJ_INFO["problemInfo"] for fn in item[0]]) + mandatoryFiles = list(set(mandatoryFiles)) + gitWorker = GitWorker( + args, hgroups, JOJ_INFO["lang"], mandatoryFiles, + OPTIONAL_FILES) if args.indv or args.group or args.proj else None + giteaWorker = GiteaWorker(args, GITEA_BASE_URL, ORG_NAME, + GITEA_TOKEN, hgroups) if args.indv: indvScores = gitWorker.checkIndv() if args.group: groupScores = gitWorker.checkGroup() + tmpScores = giteaWorker.checkReview() + for key in groupScores.keys(): + groupScores[key] = { + **groupScores.get(key, {}), + **tmpScores.get(key, {}) + } if args.joj: jojWorker = JOJWorker(args, JOJ_COURSE_ID, SID, hgroups) jojScores = jojWorker.checkGroupJOJ(JOJ_INFO) @@ -90,6 +104,4 @@ if __name__ == "__main__": if args.proj: projScores = gitWorker.checkProj(args.proj, args.ms) if args.feedback: - giteaWorker = GiteaWorker(args, GITEA_BASE_URL, ORG_NAME, - GITEA_TOKEN, hgroups) giteaWorker.raiseIssues(projScores) -- cgit v1.2.3