test_boundary_matrix_matches (__main__.CanonicalTests.test_boundary_matrix_matches) ... skipped 'optional: set PYXEL018_ORIGINAL_DIR to a canonical source COPY'
test_canonical_replays_and_alternate (__main__.CanonicalTests.test_canonical_replays_and_alternate) ... skipped 'optional: set PYXEL018_ORIGINAL_DIR to a canonical source COPY'
test_original_model_ast (__main__.CanonicalTests.test_original_model_ast) ... skipped 'optional: set PYXEL018_ORIGINAL_DIR to a canonical source COPY'
test_seeded_18000_substeps (__main__.CanonicalTests.test_seeded_18000_substeps) ... skipped 'optional: set PYXEL018_ORIGINAL_DIR to a canonical source COPY'
test_adjacent_diffs_are_exact (__main__.PortableTests.test_adjacent_diffs_are_exact) ... ok
test_bank_wins_before_crossing (__main__.PortableTests.test_bank_wins_before_crossing) ... ok
test_baseline_only_changes_crossing (__main__.PortableTests.test_baseline_only_changes_crossing) ... ok
test_checkpoint_and_outside_recovery (__main__.PortableTests.test_checkpoint_and_outside_recovery) ... ok
test_cli_validation_portable (__main__.PortableTests.test_cli_validation_portable) ... ok
test_crossing_continuity_and_remainder (__main__.PortableTests.test_crossing_continuity_and_remainder) ... ok
test_direction_is_screen_fixed (__main__.PortableTests.test_direction_is_screen_fixed) ... ok
test_documented_snippets_are_literal (__main__.PortableTests.test_documented_snippets_are_literal) ... ok
test_drag_and_input_clamp (__main__.PortableTests.test_drag_and_input_clamp) ... ok
test_dt_and_nan_rejected (__main__.PortableTests.test_dt_and_nan_rejected) ... ok
test_final_mirror_symmetry (__main__.PortableTests.test_final_mirror_symmetry) ... ok
test_first_step_units (__main__.PortableTests.test_first_step_units) ... ok
test_float_bank_side_collision (__main__.PortableTests.test_float_bank_side_collision) ... ok
test_float_early_return_skips_collection (__main__.PortableTests.test_float_early_return_skips_collection) ... ok
test_float_escape_rearms (__main__.PortableTests.test_float_escape_rearms) ... ok
test_frame_four_steps_jump_edge (__main__.PortableTests.test_frame_four_steps_jump_edge) ... ok
test_full_license_headers (__main__.PortableTests.test_full_license_headers) ... ok
test_home_strict_thresholds (__main__.PortableTests.test_home_strict_thresholds) ... ok
test_independent_imports (__main__.PortableTests.test_independent_imports) ... ok
test_items_segment_and_dedup (__main__.PortableTests.test_items_segment_and_dedup) ... ok
test_jump_direction_and_no_midair_jump (__main__.PortableTests.test_jump_direction_and_no_midair_jump) ... ok
test_known_checkpoints (__main__.PortableTests.test_known_checkpoints) ... ok
test_pause_release_gate_reset_clock (__main__.PortableTests.test_pause_release_gate_reset_clock) ... ok
test_portal_strict_margin (__main__.PortableTests.test_portal_strict_margin) ... ok
test_rearm_uses_old_position_and_eps (__main__.PortableTests.test_rearm_uses_old_position_and_eps) ... ok
test_reference_success_logs_portable (__main__.PortableTests.test_reference_success_logs_portable) ... ok
test_room_selection_resets_and_pause (__main__.PortableTests.test_room_selection_resets_and_pause) ... ok
test_seeded_finite_nonpenetration (__main__.PortableTests.test_seeded_finite_nonpenetration) ... ok
test_shallow_keeps_horizontal_velocity (__main__.PortableTests.test_shallow_keeps_horizontal_velocity) ... ok
test_speed_cap_only_gravity_direction (__main__.PortableTests.test_speed_cap_only_gravity_direction) ... ok
test_stage1_gravity_exercise (__main__.PortableTests.test_stage1_gravity_exercise) ... ok
test_stage2_deliberately_has_no_rearm (__main__.PortableTests.test_stage2_deliberately_has_no_rearm) ... ok
test_stage2_gravity_exercise (__main__.PortableTests.test_stage2_gravity_exercise) ... ok
test_stage3_low_energy_cutoff (__main__.PortableTests.test_stage3_low_energy_cutoff) ... ok
test_stage3_shallow_no_chatter (__main__.PortableTests.test_stage3_shallow_no_chatter) ... ok
test_stage4_no_success (__main__.PortableTests.test_stage4_no_success) ... ok
test_stage4_shelf_exercise (__main__.PortableTests.test_stage4_shelf_exercise) ... ok
test_stage5_return_exercise (__main__.PortableTests.test_stage5_return_exercise) ... ok
test_success_requires_ground_and_optional_home (__main__.PortableTests.test_success_requires_ground_and_optional_home) ... ok
test_swept_thin_shelf_both_faces (__main__.PortableTests.test_swept_thin_shelf_both_faces) ... ok
test_tangent_and_corner_order (__main__.PortableTests.test_tangent_and_corner_order) ... ok
test_terminal_freezes_before_dt_validation (__main__.PortableTests.test_terminal_freezes_before_dt_validation) ... ok
test_terminal_next_requires_explicit_input (__main__.PortableTests.test_terminal_next_requires_explicit_input) ... ok
test_unarmed_return_no_second_event (__main__.PortableTests.test_unarmed_return_no_second_event) ... ok
test_undo_restores_items_time_after_success (__main__.PortableTests.test_undo_restores_items_time_after_success) ... ok
test_undo_whole_snapshot_and_release_gate (__main__.PortableTests.test_undo_whole_snapshot_and_release_gate) ... ok
test_utf8_calls_are_explicit (__main__.PortableTests.test_utf8_calls_are_explicit) ... ok

----------------------------------------------------------------------
Ran 51 tests in 0.316s

OK (skipped=4)
