summaryrefslogtreecommitdiff
path: root/leningrade.py
diff options
context:
space:
mode:
Diffstat (limited to 'leningrade.py')
-rw-r--r--leningrade.py45
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)