diff options
author | Frederick Yin <fred.yin@sjtu.edu.cn> | 2021-10-10 13:23:38 +0800 |
---|---|---|
committer | Frederick Yin <fred.yin@sjtu.edu.cn> | 2021-10-10 13:23:38 +0800 |
commit | dfe4b717a9bd39d8cd1f9d603e648921e1393903 (patch) | |
tree | 5c2eb9b9ea22e5c1cf5d7f0d7f18e551203e4e2f /leningrade.py | |
parent | 799f16f0e53382f4ecd36d8a5c7bff5afaccdd9f (diff) |
Leningrade: because grades belong to everyone
Diffstat (limited to 'leningrade.py')
-rw-r--r-- | leningrade.py | 45 |
1 files changed, 45 insertions, 0 deletions
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) |