Programming Assignment 2 Grading: -------------------------------------------------------------------------------- Comments to add to student's gradesheet (as an overall comment): Good job! Note: for each top-level part (like the EmptySequenceException class) that a student gets completely correct, make sure to add the comment: Good job! so the student's gradefile contains some feedback for that part Late Days: Make sure to add at least one of these comments: Program submitted on time 1 day late 2 days late 3 days late Free days used up, late penalty applies To determine how many late days a student used and if a penalty applies, look in the file: /p/course/cs367-hasti/private/grading/cs367LateDays.xls (Note: this file hasn't been created yet but will be shortly - I'll send you email when it has been) Make sure you add both one of the comments above (so the student knows how late this program was turned it) and to select a deduction from the Late Days section for the number of penalty days the student received (if appropriate). Make sure to test: - student's entire submission If the student did not correctly implement getting user input from a file, use input redirection (i.e., < ) to test the student's program There are some test files (with corresponding output) in the MessageSequenceEditorTestFiles/ folder: badInput.txt emptyTest.txt cutCopyPaste.txt jumpPrevNext.txt addInsert.txt findTest.txt replaceTest.txt - student's LinkedCircularSequence (and EmptySequenceException, and LinkedCircularSequenceIterator) with our LinkedCircularSequenceTester and DblListnode There are some test files (with corresponding output) in the CircularSequenceTestFiles/ folder: circSeqOne.txt circSeqSmall.txt circSeqLarge.txt Note: the p2grader script can be run from the command line. It runs all the tests listed above. If the student's output is correct, the grader script will produce output as in astudent.output.txt Additional scripts: cleanup - takes no arguments, removes all *.java, *.class, and temp.txt files testCirc login - give the name of the student login as an argument (e.g., testCirc emma) - runs just the CircularSequenceTester stuff - creates file named login.circ.txt testMsg login - give the name of the student login as an argument (e.g., testMsg emma) - runs just the MessageSequenceTester stuff - creates file name login.msg.txt testMsgForce login - give the name of the student login as an argument (e.g., testMsgForce emma) - runs just the MessageSequenceTester stuff but instead of reading input from a file, it redirects the input from the console - if you look at the msg output and you see that the commands are not echoed in the student's output, use this script - creates file name login.msgForce.txt testAll login - give the name of the student login as an argument (e.g., testAll emma) - runs all the tests and creates file named login.all.txt - basically does what p2grader does except you can give the login as a command line argument So, do the following: 1) run testAll 2) if testAll doesn't terminate: - kill it (ctrl-C) - run testCirc - run testMsg (and then testMsgForce if necessary) If you have to terminate testCirc or testMsg, you can run each individual test from the directory you are grading in: If the student's code already compiled, it should be in the directory so you can just run it. Copy the CircularSequenceTestFiles directory and the MessageSequenceEditorTestFiles directory to your grading directory. To test MessageSequenceEditor, you can do, for example, java MessageSequenceEditor < MessageSequenceEditorTestFiles/addInsert.txt > output.txt You can then compare the student's results with the expected results: diff -b output.txt MessageSequenceEditorTestFiles/addInsert.output.f.txt (make sure to use the .f versions since the input won't be echoed) Make sure to verify that the student implemented the LinkedCircularSequence class using a circular doubly-linked list. Style and documentation: Comments: Good commenting! Good coding style! Warning: file header comments missing some information Warning: some lines are longer than 80 characters Warning: place file header comments before import statements Warning: avoid excessive vertical whitespace Warning: some class/method header comments are missing some information