Project 1 Test Cases
These are just short descriptions of the test cases that are run by the autograder, so that you can somewhat interpret the autograder's results.
- ThreadGrader1: Condition2
- Test ThreadGrader1.a: Tests your condition variables using a few threads
- Test ThreadGrader1.b: Tests your condition variables using many threads
- ThreadGrader2: Communicator
- Test ThreadGrader2.a: Tests your communicator
- Test ThreadGrader2.b: Tests your communicator, with more speakers/listeners
- Test ThreadGrader2.c: Tests your communicator, with more speakers/listneers, and transmits more messages
- ThreadGrader3: Join
- Test ThreadGrader3.a: Tries a join on thread x before x actually runs
- Test ThreadGrader3.b: Tries a join on thread x after x has completed
- ThreadGrader4: WaitUntil
- Test ThreadGrader4.a: Tests waitUntil to ensure it waits at least minimum amount of time
- Test ThreadGrader4.b: Tests whether waitUntil actually wakes up at correct time
- ThreadGrader5: Priority Scheduling
- Test ThreadGrader5.a: Tests priority scheduler without donation
- Test ThreadGrader5.c: Tests priority scheduler without donation, altering priorities of threads after they've started running
- ThreadGrader6a: More Priority Scheduling
- Test ThreadGrader6a.a: Tests priority donation
- Test ThreadGrader6a.b: Tests priority donation with more locks and more complicated resource allocation
- BoatGrader: You have this!