Unit Tests

Utilize the Single-responsibility principle: any methods you write should be clean, reusable, abstract component parts to the whole challenge. You will be given feedback and marked down if you attempt to define a large, complex algorithm in one function definition.

For each method that you define, write test assertions for the following conditions at minimum:

  1. “Happy Path” - Expected outcome
  2. Expected failure
  3. Edge Case (if applicable/obvious)

Unit tests must be passing before you submit your final solution code.

Testing Workflow