As noted on the Policies page, what you have learned on assignments is assessed in two different ways: the code submission and an assignment quiz.
Assignment quizzes will be administered at the very beginning of lecture the day after most assignments' code due dates. (See the Assignments or Classes pages for a list.) These quizzes will either demand recall of a key element of the assignment or exercise a problem solving or code pattern related to that required by the assignment. You will have 7 minutes to complete each quiz.
The intent is to be reasonably straightforward if you are familiar with the assignment's premise and solution and have learned the key things the assignment was supposed to have you wrestle with and learn. Perhaps, though, these quizzes could be quite difficult if you have not put sufficient thought into the assignment. You may be assured, however, that the quizzes will not cover the challenge portion of any assignment and will not emphasize elements of the assignment that students tend to complete last. This way the quizzes do not negate the value of using late days on assignments' code submissions so long as you have made reasonable progress by the (morning after the) code submission deadline.
The key way to prepare for the quizzes is to work hard on the assignments, focusing on problem solving and programming patterns, to attend office hours when stuck, and to avoid cutting corners towards a solution. To give you a sense of what quizzes could entail, we will provide one sample quiz for each assignment. These are intended to be representative of the knowledge expected for and assessed by the quiz you will take, but may not be an exact replica of what you will be asked to do.
FYI: contrary to the horror stories peers may have told you about these quizzes from their initial offering, most students performed just fine on them: the course average on the quiz component of the final grade was above 80%, even without sample quizzes available and with 5 minutes per quiz instead of 7.