From e53e050ff897a5ac3f755db08ba847c195cf66ec Mon Sep 17 00:00:00 2001 From: Braeden Sowinski Date: Tue, 1 Mar 2022 13:46:21 -0800 Subject: [PATCH] update v2 test --- test/test.js | 24 ++++++++++++------------ test/tinker.py | 31 ++++++++++++++++--------------- 2 files changed, 28 insertions(+), 27 deletions(-) diff --git a/test/test.js b/test/test.js index dffad42..f672ec4 100644 --- a/test/test.js +++ b/test/test.js @@ -4,18 +4,18 @@ let students = require('./students.json'); // console.table(schedule) // Display first semester -// console.table(schedule.block1) -// console.table(schedule.block2) -// console.table(schedule.block3) -// console.table(schedule.block4) +console.table(schedule.block1) +console.table(schedule.block2) +console.table(schedule.block3) +console.table(schedule.block4) -// // Display second semester -// console.table(schedule.block5) -// console.table(schedule.block6) -// console.table(schedule.block7) -// console.table(schedule.block8) +// Display second semester +console.table(schedule.block5) +console.table(schedule.block6) +console.table(schedule.block7) +console.table(schedule.block8) // Display each students schedule -for (let i = 0; i < students.length; i++) { - console.table(students[i].schedule) -} +// for (let i = 0; i < students.length; i++) { +// console.table(students[i].schedule) +// } diff --git a/test/tinker.py b/test/tinker.py index b4bdd13..3d47852 100644 --- a/test/tinker.py +++ b/test/tinker.py @@ -53,7 +53,7 @@ running: { studentsNum = 400 err1, err2, = 0,0 -minReq, classCap, blockClassLimit = 18, 30, 21 +minReq, classCap, blockClassLimit = 18, 30, 18 mockStudents = [] running = { "block1": {}, @@ -196,18 +196,19 @@ def generateScheduleV2(): # calculate # of times to run class for i in range(len(activeCourses)): - classRunCount = math.floor(activeCourses[list(activeCourses)[i]]["totalrequests"] / classCap) + index = list(activeCourses)[i] + classRunCount = math.floor(activeCourses[index]["totalrequests"] / classCap) # If there is minReq+ requests left, 1 more class could be run - if (activeCourses[list(activeCourses)[i]]["totalrequests"] % classCap) > minReq: classRunCount += 1 - activeCourses[list(activeCourses)[i]]["classRunCount"] = classRunCount + if (activeCourses[index]["totalrequests"] % classCap) > minReq: classRunCount += 1 + activeCourses[index]["classRunCount"] = classRunCount blockIndex = 1 while classRunCount > 0: block = f"block{blockIndex}" - if activeCourses[i] not in running[block]: + if activeCourses[index]["code"] not in running[block] and len(running[block]) < blockClassLimit: # Generate class and sub 1 from classRunCount - running[block][activeCourses[i]] = { - "name": courses[activeCourses[i]]["name"], + running[block][activeCourses[index]["code"]] = { + "name": activeCourses[index]["name"], "students": [] } classRunCount -= 1 @@ -244,7 +245,7 @@ if __name__ == '__main__': exit() print("Processing...") mockStudents = generateMockStudents(studentsNum) - generateScheduleV1() + generateScheduleV2() else: print("Invalid argument") exit() @@ -264,14 +265,14 @@ if __name__ == '__main__': # print(f"Class: {name} | Students: {students}") # Count errors in students schedules - errors = 0 - for i in range(len(mockStudents)): - count = 0 - for course in mockStudents[i]["schedule"]: - if mockStudents[i]["schedule"][course]=="": count+=1 - if count > 0: errors += 1 + # errors = 0 + # for i in range(len(mockStudents)): + # count = 0 + # for course in mockStudents[i]["schedule"]: + # if mockStudents[i]["schedule"][course]=="": count+=1 + # if count > 0: errors += 1 - print(f"{errors}/{studentsNum} student(s) have a issue with their schedule") + # print(f"{errors}/{studentsNum} student(s) have a issue with their schedule") with open("schedule.json", "w") as outfile: