test_backup_copies_world_and_moderation_without_runtime_keys (test_community.CommunityTests) ... ok
test_backup_never_runs_under_an_active_world_lock (test_community.CommunityTests) ... ok
test_backup_rejects_path_escape_and_symlinks_without_partial_archives (test_community.CommunityTests) ... ok
test_missing_world_is_not_reported_as_a_successful_backup (test_community.CommunityTests) ... ok
test_moderation_rejects_command_injection_and_accepts_bedrock_names (test_community.CommunityTests) ... ok
test_roster_only_reports_fresh_running_data (test_community.CommunityTests) ... ok
test_server_settings_preserve_world_and_authentication (test_community.CommunityTests) ... ok
test_foreground_watch_waits_and_stops_without_exposing_credentials (test_dynu_joining.DynuJoiningTest) ... ok
test_hostnames_and_invalid_ports_fail_before_network (test_dynu_joining.DynuJoiningTest) ... ok
test_https_key_header_no_credentials_on_ip_probe_and_redirects_refused (test_dynu_joining.DynuJoiningTest) ... ok
test_mac_launcher_requires_bootstrap_and_config_before_watch (test_dynu_joining.DynuJoiningTest) ... ok
test_only_exact_owned_record_ip_changes_other_fields_preserved (test_dynu_joining.DynuJoiningTest) ... ok
test_private_configuration_and_read_only_status (test_dynu_joining.DynuJoiningTest) ... ok
test_provider_errors_and_cli_do_not_leak_keys_or_response_details (test_dynu_joining.DynuJoiningTest) ... ok
test_rejects_private_directory_and_saved_file_symlinks (test_dynu_joining.DynuJoiningTest) ... ok
test_rejects_public_permissions_symlinks_and_oversized_credentials (test_dynu_joining.DynuJoiningTest) ... ok
test_release_whitelist_includes_code_and_guide_but_no_private_state (test_dynu_joining.DynuJoiningTest) ... ok
test_unchanged_ip_does_not_post_and_failed_confirmation_has_no_success_stamp (test_dynu_joining.DynuJoiningTest) ... ok
test_wrong_duplicate_or_disabled_owned_host_never_posts (test_dynu_joining.DynuJoiningTest) ... ok
test_admin_code_is_private_hashed_and_requires_stopped_world (test_easy_setup.EasySetupTests) ... ok
test_admin_code_validation_preserves_existing_configuration (test_easy_setup.EasySetupTests) ... ok
test_ai_configuration_requires_stopped_world_and_blank_preserves_key (test_easy_setup.EasySetupTests) ... ok
test_ai_key_is_private_and_never_returned_in_status_or_logs (test_easy_setup.EasySetupTests) ... ok
test_ai_validation_keeps_existing_configuration_and_key (test_easy_setup.EasySetupTests) ... ok
test_bootstrap_pins_match_runtime_manifest (test_easy_setup.EasySetupTests) ... ok
test_cancel_startup_wait_stops_a_real_child_cleanly (test_easy_setup.EasySetupTests) ... [test] booting
[test] saved
/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.9/lib/python3.9/unittest/case.py:550: ResourceWarning: unclosed file <_io.TextIOWrapper name=5 encoding='utf-8'>
  method()
ResourceWarning: Enable tracemalloc to get the object allocation traceback
/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.9/lib/python3.9/unittest/case.py:550: ResourceWarning: unclosed file <_io.TextIOWrapper name=6 encoding='utf-8'>
  method()
ResourceWarning: Enable tracemalloc to get the object allocation traceback
ok
test_codex_configuration_is_blocked_while_world_or_backup_is_active (test_easy_setup.EasySetupTests) ... ok
test_codex_configuration_needs_no_api_key_and_preserves_unknown_fields (test_easy_setup.EasySetupTests) ... ok
test_codex_invalid_provider_path_or_public_access_preserves_saved_secrets (test_easy_setup.EasySetupTests) ... ok
test_codex_switch_keeps_api_key_and_missing_executable_can_be_disabled (test_easy_setup.EasySetupTests) ... ok
test_dashboard_keeps_crashed_lock_when_configured_game_port_is_busy (test_easy_setup.EasySetupTests) ... ok
test_dashboard_preserves_live_or_invalid_lock_and_settings (test_easy_setup.EasySetupTests) ... ok
test_dashboard_start_recovers_crashed_lock_through_real_launcher_lease (test_easy_setup.EasySetupTests) ... ok
test_failed_bridge_start_stops_both_services_and_releases_lock (test_easy_setup.EasySetupTests) ... Preparing your shared world. First setup can take a few minutes.
ok
test_friend_guide_requires_authentication_and_current_both_editions (test_easy_setup.EasySetupTests) ... ok
test_http_rejects_missing_token_and_foreign_origin (test_easy_setup.EasySetupTests) ... ok
test_invalid_settings_and_existing_world_lock_do_not_start (test_easy_setup.EasySetupTests) ... ok
test_local_only_join_does_not_probe_network (test_easy_setup.EasySetupTests) ... ok
test_mac_prefers_physical_lan_over_virtual_default_route (test_easy_setup.EasySetupTests) ... ok
test_panel_console_requires_running_server_and_single_command (test_easy_setup.EasySetupTests) ... ok
test_panel_lifecycle_persists_settings_and_rejects_duplicate_start (test_easy_setup.EasySetupTests) ... ok
test_panel_lock_is_reusable_only_after_owner_exits (test_easy_setup.EasySetupTests) ... ok
test_panel_reports_worker_failure (test_easy_setup.EasySetupTests) ... ok
test_panel_requires_explicit_eula_and_does_not_create_files (test_easy_setup.EasySetupTests) ... ok
test_remote_status_exposes_only_sanitized_game_addresses (test_easy_setup.EasySetupTests) ... ok
test_runtime_extraction_rejects_escaping_symlink (test_easy_setup.EasySetupTests) ... ok
test_runtime_extraction_rejects_path_escape (test_easy_setup.EasySetupTests) ... ok
test_tcp_and_udp_conflicts_are_explained (test_easy_setup.EasySetupTests) ... ok
test_world_lock_prevents_all_setup_mutations (test_easy_setup.EasySetupTests) ... ok
test_active_or_unverifiable_launcher_lock_is_preserved (test_launcher.LauncherTests) ... ok
test_bedrock_native_armor_refresh_targets_live_native_assets (test_launcher.LauncherTests) ... ok
test_bedrock_pack_revision_invalidates_cached_exploration_resources (test_launcher.LauncherTests) ... ok
test_bridge_requires_exports_and_key (test_launcher.LauncherTests) ... ok
test_configuration_retains_world_and_security (test_launcher.LauncherTests) ... ok
test_crashed_launcher_lock_is_recovered_with_free_ports (test_launcher.LauncherTests) ... ok
test_crashed_lock_is_preserved_while_game_port_is_busy (test_launcher.LauncherTests) ... ok
test_current_catalog_and_pack_cover_all_mapped_textures (test_launcher.LauncherTests) ... ok
test_custom_java_models_and_equipment_resolve_to_real_assets (test_launcher.LauncherTests) ... ok
test_download_rejects_corruption_without_replacing_old_file (test_launcher.LauncherTests) ... Downloading library.jar
ok
test_download_rejects_path_traversal (test_launcher.LauncherTests) ... ok
test_noninteractive_does_not_accept_eula (test_launcher.LauncherTests) ... ok
test_port_check_accepts_recently_closed_tcp_connections (test_launcher.LauncherTests) ... ok
test_port_check_rejects_live_bedrock_listener (test_launcher.LauncherTests) ... ok
test_port_check_rejects_live_tcp_listener_even_with_reuse (test_launcher.LauncherTests) ... ok
test_backup_includes_dimension_and_player_mode_state (test_modes.ModeLauncherTests) ... ok
test_membership_grants_are_validated_for_console_use (test_modes.ModeLauncherTests) ... ok
test_checksum_failure_leaves_no_executable_or_partial_download (test_pinggy_install.PinggyInstallTests) ... Downloading the official Pinggy CLI for Apple Silicon (about 93 MiB, first use only)...
Downloading the official Pinggy CLI for Apple Silicon (about 93 MiB, first use only)...
ok
test_correct_copy_is_reused_without_network_and_permissions_fixed (test_pinggy_install.PinggyInstallTests) ... Installed and verified Pinggy CLI v0.5.9 for Apple Silicon.
Downloading the official Pinggy CLI for Apple Silicon (about 93 MiB, first use only)...
ok
test_existing_wrong_file_is_preserved_without_network (test_pinggy_install.PinggyInstallTests) ... ok
test_first_install_checks_pinned_https_release_and_installs_atomically (test_pinggy_install.PinggyInstallTests) ... Installed and verified Pinggy CLI v0.5.9 for Apple Silicon.
Verified Pinggy CLI is already installed; reusing it.
Downloading the official Pinggy CLI for Apple Silicon (about 93 MiB, first use only)...
ok
test_https_redirect_and_final_response_are_required (test_pinggy_install.PinggyInstallTests) ... Installed and verified Pinggy CLI v0.5.9 for Apple Silicon.
Downloading the official Pinggy CLI for Apple Silicon (about 93 MiB, first use only)...
ok
test_large_header_or_stream_is_rejected_and_stage_removed (test_pinggy_install.PinggyInstallTests) ... Downloading the official Pinggy CLI for Apple Silicon (about 93 MiB, first use only)...
Downloading the official Pinggy CLI for Apple Silicon (about 93 MiB, first use only)...
ok
test_launcher_installs_before_tunnels_and_stops_after_install_failure (test_pinggy_install.PinggyInstallTests) ... ok
test_linked_binary_or_parent_is_refused_without_touching_target (test_pinggy_install.PinggyInstallTests) ... ok
test_wrong_architecture_is_rejected_before_network (test_pinggy_install.PinggyInstallTests) ... Downloading the official Pinggy CLI for Apple Silicon (about 93 MiB, first use only)...
ok
test_actual_sdk_empty_listen_address_matches_but_different_targets_do_not (test_pinggy_joining.PinggyJoiningTests) ... ok
test_changed_existing_target_is_preserved_and_refused (test_pinggy_joining.PinggyJoiningTests) ... ok
test_cli_command_dispatch_precedes_logfile_and_private_namespace (test_pinggy_joining.PinggyJoiningTests) ... ok
test_existing_profiles_and_running_tunnels_are_reused (test_pinggy_joining.PinggyJoiningTests) ... ok
test_expired_records_do_not_hide_new_running_tunnels (test_pinggy_joining.PinggyJoiningTests) ... ok
test_foreign_daemon_is_rejected_before_local_api_query (test_pinggy_joining.PinggyJoiningTests) ... ok
test_one_failed_edition_never_claims_both_ready_or_exposes_raw_fields (test_pinggy_joining.PinggyJoiningTests) ... ok
test_private_permissions_and_symlink_safety (test_pinggy_joining.PinggyJoiningTests) ... ok
test_stop_only_matching_owned_names (test_pinggy_joining.PinggyJoiningTests) ... ok
test_two_loopback_game_ports_and_settings_validation (test_pinggy_joining.PinggyJoiningTests) ... ok
test_dead_record_cleanup_preserves_key_and_logs (test_remote_joining.RemoteJoiningTests) ... ok
test_private_permissions_preserve_existing_credentials_and_no_empty_secret (test_remote_joining.RemoteJoiningTests) ... ok
test_process_match_requires_executable_config_socket_log_and_birth (test_remote_joining.RemoteJoiningTests) ... ok
test_real_process_identity_retains_arguments_with_spaces (test_remote_joining.RemoteJoiningTests) ... ok
test_setup_only_prints_official_claim_url_and_filters_guest_session (test_remote_joining.RemoteJoiningTests) ... ok
test_start_is_detached_private_and_uses_only_source_verified_flags (test_remote_joining.RemoteJoiningTests) ... ok
test_status_when_absent_creates_no_private_files (test_remote_joining.RemoteJoiningTests) ... ok
test_status_whitelists_fields_and_does_not_print_secret_session_or_errors (test_remote_joining.RemoteJoiningTests) ... ok
test_stop_refuses_reused_pid_and_never_signals_foreign_process (test_remote_joining.RemoteJoiningTests) ... ok
test_symlink_directory_and_credentials_are_refused (test_remote_joining.RemoteJoiningTests) ... ok
test_credential_symlink_rejected (test_remote_tunnels.RemoteTunnelsTest) ... ok
test_invalid_port_fails_before_mutation (test_remote_tunnels.RemoteTunnelsTest) ... ok
test_never_reuse_another_agent_or_nonloopback_target (test_remote_tunnels.RemoteTunnelsTest) ... ok
test_only_game_presets_created_and_retry_reuses (test_remote_tunnels.RemoteTunnelsTest) ... ok
test_parent_symlink_rejected (test_remote_tunnels.RemoteTunnelsTest) ... ok
test_pending_retry_does_not_create_duplicates (test_remote_tunnels.RemoteTunnelsTest) ... ok
test_status_does_not_create_or_report_unallocated (test_remote_tunnels.RemoteTunnelsTest) ... ok

----------------------------------------------------------------------
Ran 102 tests in 2.105s

OK
