test_exercise1_price_three (__main__.ExerciseTests.test_exercise1_price_three) ... ok
test_exercise2_compare_reserved_and_free (__main__.ExerciseTests.test_exercise2_compare_reserved_and_free) ... ok
test_exercise3_smaller_capacity (__main__.ExerciseTests.test_exercise3_smaller_capacity) ... ok
test_exercise4_referral_both_directions (__main__.ExerciseTests.test_exercise4_referral_both_directions) ... ok
test_exercise5_two_undos (__main__.ExerciseTests.test_exercise5_two_undos) ... ok
test_adjacent_diffs_are_exact (__main__.InputTests.test_adjacent_diffs_are_exact) ... ok
test_chords_including_reset_are_ignored (__main__.InputTests.test_chords_including_reset_are_ignored) ... ok
test_demo_checkpoints (__main__.InputTests.test_demo_checkpoints) ... ok
test_holding_and_key_switch_require_full_release (__main__.InputTests.test_holding_and_key_switch_require_full_release) ... ok
test_literal_snippets_and_licenses (__main__.InputTests.test_literal_snippets_and_licenses) ... ok
test_no_undo_before_stage5 (__main__.InputTests.test_no_undo_before_stage5) ... ok
test_qa_argument_bounds_and_no_overwrite (__main__.InputTests.test_qa_argument_bounds_and_no_overwrite) ... ok
test_rejected_action_and_drafts_do_not_enter_history (__main__.InputTests.test_rejected_action_and_drafts_do_not_enter_history) ... ok
test_reset_requires_release_and_clears_all (__main__.InputTests.test_reset_requires_release_and_clears_all) ... ok
test_stock_draft_is_not_purchase (__main__.InputTests.test_stock_draft_is_not_purchase) ... ok
test_undo_every_accepted_step_and_redo (__main__.InputTests.test_undo_every_accepted_step_and_redo) ... ok
test_undo_reservation_and_collect_restore_ownership (__main__.InputTests.test_undo_reservation_and_collect_restore_ownership) ... ok
test_canonical_A_reachable_transitions (__main__.OptionalCanonicalTests.test_canonical_A_reachable_transitions) ... ok
test_capacity_counts_reservations_before_pickup (__main__.ProgressionTests.test_capacity_counts_reservations_before_pickup) ... ok
test_economic_conservation_all_reachable_A_states (__main__.ProgressionTests.test_economic_conservation_all_reachable_A_states) ... ok
test_exact_types_for_actions (__main__.ProgressionTests.test_exact_types_for_actions) ... ok
test_five_independent_modules (__main__.ProgressionTests.test_five_independent_modules) ... ok
test_forecast_is_pure (__main__.ProgressionTests.test_forecast_is_pure) ... ok
test_goal_requires_both_sales_and_nonnegative_cash (__main__.ProgressionTests.test_goal_requires_both_sales_and_nonnegative_cash) ... ok
test_no_free_stock_cannot_be_sold_or_reserved (__main__.ProgressionTests.test_no_free_stock_cannot_be_sold_or_reserved) ... ok
test_pickup_required_and_single (__main__.ProgressionTests.test_pickup_required_and_single) ... ok
test_referral_plan_and_memory (__main__.ProgressionTests.test_referral_plan_and_memory) ... ok
test_refusal_does_not_change_fixed_tomorrow (__main__.ProgressionTests.test_refusal_does_not_change_fixed_tomorrow) ... ok
test_stage1_skips_consume_customer_not_product (__main__.ProgressionTests.test_stage1_skips_consume_customer_not_product) ... ok
test_stage1_two_sales (__main__.ProgressionTests.test_stage1_two_sales) ... ok
test_stage2_refusal_keeps_item (__main__.ProgressionTests.test_stage2_refusal_keeps_item) ... ok
test_stage2_reservation_transfers_owned_item (__main__.ProgressionTests.test_stage2_reservation_transfers_owned_item) ... ok
test_stage3_complete_plan (__main__.ProgressionTests.test_stage3_complete_plan) ... ok
test_stage3_pickup_without_referrals (__main__.ProgressionTests.test_stage3_pickup_without_referrals) ... ok
test_stage4_exact_queue_and_opposite_product (__main__.ProgressionTests.test_stage4_exact_queue_and_opposite_product) ... ok
test_stock_range_cash_and_capacity (__main__.ProgressionTests.test_stock_range_cash_and_capacity) ... ok
test_three_day_finish_and_early_cash_shortfall (__main__.ProgressionTests.test_three_day_finish_and_early_cash_shortfall) ... ok

----------------------------------------------------------------------
Ran 37 tests in 2.808s

OK
CANONICAL 3 states 1071 legal_edges 1831
CANONICAL 4 states 1382 legal_edges 2345
CANONICAL 5 states 1382 legal_edges 2345
FINITE 3 states 1071 legal_edges 1831
FINITE 4 states 1382 legal_edges 2345
FINITE 5 states 1382 legal_edges 2345
