From dfe4b717a9bd39d8cd1f9d603e648921e1393903 Mon Sep 17 00:00:00 2001 From: Frederick Yin Date: Sun, 10 Oct 2021 13:23:38 +0800 Subject: Leningrade: because grades belong to everyone --- leningrade.py | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 leningrade.py (limited to 'leningrade.py') diff --git a/leningrade.py b/leningrade.py new file mode 100644 index 0000000..af72cd6 --- /dev/null +++ b/leningrade.py @@ -0,0 +1,45 @@ +from worker import GitWorker, GiteaWorker, JOJWorker +from config import * + + +class Arguments: + indv = True + dir = True + group = True + joj = True + tidy = True + score = True + hw = HOMEWORK_NO + rejudge = HGROUP_NO + + +args = Arguments() + +gitWorker = GitWorker(args, HGROUP, None, LANGUAGE, MANDATORY_FILES, OPTIONAL_FILES, GITEA_ORG) +giteaWorker = GiteaWorker(args, GITEA_API_BASE, GITEA_ORG, GITEA_TOKEN, HGROUP) +jojWorker = JOJWorker(args, JOJ_COURSE_ID, JOJ_SESSION_ID, HGROUP) + +JOJ_INFO = { + "homeworkID": JOJ_HOMEWORK_ID, + "lang": LANGUAGE, + "problemInfo": [ + # filename, problem ID, # of test cases + ("ex2.m", "61553cffb3c06a0006f45da3", 10), + ("ex4.m", "61553e5fb3c06a0006f45da9", 10), + ("ex5.m", "61553f8cb3c06a0006f45db2", 10), + ("ex6.m", "6155414cb3c06a0006f45dc7", 10), + ], +} + +# individual +indvScores = gitWorker.checkIndv() +print(indvScores) +# group +groupScores = gitWorker.checkGroup() +tmpScores = giteaWorker.checkReview() +for key in groupScores.keys(): + groupScores[key] = {**groupScores.get(key, {}), **tmpScores.get(key, {})} +print(groupScores) +# JOJ +jojScores = jojWorker.checkGroupJOJ(JOJ_INFO) +print(jojScores) -- cgit v1.2.3