We try to stay out of the business of grading students through the CS Fundamentals curriculum as much as possible. It's very difficult to assess learning (as opposed to completion) with the puzzles in Courses 1-4.
That said, we are trying to rework our courses and teacher dashboards to provide helpful metrics. Until then, the best way to check for understanding is with a standalone project. Try giving students some boundaries (as in "You should use three different concepts" and "You need to keep a journal as you code to describe why you code the project the way you do." Then see what they come up with! If their projects are well thought-out and flow nicely, they likely understand how to use the concepts they integrated. From there, you can grade it in a similar way to how you would any other project.
In doing so, please remember the core ideas: