test_bootstrap_is_idempotent_and_default_context_verifies_server (test_https_startup.HTTPSStartupTests.test_bootstrap_is_idempotent_and_default_context_verifies_server) ... ok
test_jpl_endpoints_use_fresh_verified_contexts_without_bootstrap (test_https_startup.HTTPSStartupTests.test_jpl_endpoints_use_fresh_verified_contexts_without_bootstrap) ... ok
test_launcher_bootstraps_before_gui_and_bundle_check_imports (test_https_startup.HTTPSStartupTests.test_launcher_bootstraps_before_gui_and_bundle_check_imports) ... ok
test_missing_dependency_never_sends_jpl_request_or_leaves_lock (test_https_startup.HTTPSStartupTests.test_missing_dependency_never_sends_jpl_request_or_leaves_lock) ... ok
test_simbad_certificate_error_never_retries_or_writes_cache (test_https_startup.HTTPSStartupTests.test_simbad_certificate_error_never_retries_or_writes_cache) ... ok
test_source_entry_point_bootstraps_before_gui_import (test_https_startup.HTTPSStartupTests.test_source_entry_point_bootstraps_before_gui_import) ... ok
test_trusted_certificate_and_matching_hostname_succeed (test_network_tls.LocalTLSHandshakeTests.test_trusted_certificate_and_matching_hostname_succeed) ... ok
test_trusted_certificate_with_wrong_hostname_is_rejected (test_network_tls.LocalTLSHandshakeTests.test_trusted_certificate_with_wrong_hostname_is_rejected) ... ok
test_untrusted_certificate_is_rejected (test_network_tls.LocalTLSHandshakeTests.test_untrusted_certificate_is_rejected) ... ok
test_context_uses_client_protocol_and_http11 (test_network_tls.NativeTLSTests.test_context_uses_client_protocol_and_http11) ... ok
test_expired_certificate_does_not_enable_unverified_retry_or_write_cache (test_network_tls.NativeTLSTests.test_expired_certificate_does_not_enable_unverified_retry_or_write_cache) ... ok
test_old_or_missing_dependency_fails_closed (test_network_tls.NativeTLSTests.test_old_or_missing_dependency_fails_closed) ... ok
test_real_contexts_require_certificates_and_hostname_without_global_patch (test_network_tls.NativeTLSTests.test_real_contexts_require_certificates_and_hostname_without_global_patch) ... ok
test_120_epochs_are_batched_serially_preserving_times_units_and_cache (test_jpl_transport.JPLTransportTests.test_120_epochs_are_batched_serially_preserving_times_units_and_cache) ... ok
test_bad_request_and_certificate_failure_are_not_retried (test_jpl_transport.JPLTransportTests.test_bad_request_and_certificate_failure_are_not_retried) ... ok
test_cancel_during_retry_does_not_send_another_request (test_jpl_transport.JPLTransportTests.test_cancel_during_retry_does_not_send_another_request) ... ok
test_different_objects_across_batches_are_rejected (test_jpl_transport.JPLTransportTests.test_different_objects_across_batches_are_rejected) ... ok
test_exhausted_502_has_service_exact_url_and_no_success_cache (test_jpl_transport.JPLTransportTests.test_exhausted_502_has_service_exact_url_and_no_success_cache) ... ok
test_invalid_json_and_api_error_are_not_cached_or_retried (test_jpl_transport.JPLTransportTests.test_invalid_json_and_api_error_are_not_cached_or_retried) ... ok
test_parallel_workers_still_serialize_actual_jpl_calls (test_jpl_transport.JPLTransportTests.test_parallel_workers_still_serialize_actual_jpl_calls) ... ok
test_retry_after_is_respected_without_unbounded_wait (test_jpl_transport.JPLTransportTests.test_retry_after_is_respected_without_unbounded_wait) ... ok
test_transient_502_then_503_recovers_and_only_success_is_cached (test_jpl_transport.JPLTransportTests.test_transient_502_then_503_recovers_and_only_success_is_cached) ... ok
test_bad_response_and_nonfinite_coordinates_are_rejected (test_star_names.StarNameTests.test_bad_response_and_nonfinite_coordinates_are_rejected) ... ok
test_common_bayer_and_flamsteed_names (test_star_names.StarNameTests.test_common_bayer_and_flamsteed_names) ... ok
test_missing_wcs_is_local_failure (test_star_names.StarNameTests.test_missing_wcs_is_local_failure) ... ok
test_network_error_does_not_create_cache_and_cancellation_stops_request (test_star_names.StarNameTests.test_network_error_does_not_create_cache_and_cancellation_stops_request) ... ok
test_proper_motion_is_applied_at_observation_epoch (test_star_names.StarNameTests.test_proper_motion_is_applied_at_observation_epoch) ... ok
test_request_is_one_bounded_field_query_and_cache_is_offline (test_star_names.StarNameTests.test_request_is_one_bounded_field_query_and_cache_is_offline) ... ok
test_all_failed_servers_are_reported_without_writing_cache (test_gaia_mirrors.GaiaMirrorTests.test_all_failed_servers_are_reported_without_writing_cache) ... ok
test_cancellation_between_servers_does_not_start_second_request (test_gaia_mirrors.GaiaMirrorTests.test_cancellation_between_servers_does_not_start_second_request) ... ok
test_cancellation_during_mirror_read_closes_response_and_leaves_no_cache (test_gaia_mirrors.GaiaMirrorTests.test_cancellation_during_mirror_read_closes_response_and_leaves_no_cache) ... ok
test_cancellation_on_primary_failure_prevents_mirror_attempt (test_gaia_mirrors.GaiaMirrorTests.test_cancellation_on_primary_failure_prevents_mirror_attempt) ... ok
test_connection_timeout_and_http_failures_use_identical_query_on_idia (test_gaia_mirrors.GaiaMirrorTests.test_connection_timeout_and_http_failures_use_identical_query_on_idia) ... ok
test_invalid_truncated_and_oversized_tables_fall_back_before_caching (test_gaia_mirrors.GaiaMirrorTests.test_invalid_truncated_and_oversized_tables_fall_back_before_caching) ... ok
test_mirror_and_primary_produce_identical_scientific_results (test_gaia_mirrors.GaiaMirrorTests.test_mirror_and_primary_produce_identical_scientific_results) ... ok
test_mirror_cache_is_reused_and_legacy_cache_remains_compatible (test_gaia_mirrors.GaiaMirrorTests.test_mirror_cache_is_reused_and_legacy_cache_remains_compatible) ... ok
test_primary_success_does_not_contact_mirror (test_gaia_mirrors.GaiaMirrorTests.test_primary_success_does_not_contact_mirror) ... ok
test_api_format_errors_and_negative_zero_declination (test_asteroids.AsteroidTests.test_api_format_errors_and_negative_zero_declination) ... ok
test_automatic_search_never_uses_a_filename_as_an_object_name (test_asteroids.AsteroidTests.test_automatic_search_never_uses_a_filename_as_an_object_name) ... ok
test_cancel_and_network_failure_do_not_assign_a_name (test_asteroids.AsteroidTests.test_cancel_and_network_failure_do_not_assign_a_name) ... ok
test_ephemeris_matches_requested_times_and_uses_icrf_not_apparent (test_asteroids.AsteroidTests.test_ephemeris_matches_requested_times_and_uses_icrf_not_apparent) ... ok
test_export_keeps_measured_coordinates_and_restores_name_with_session (test_asteroids.AsteroidTests.test_export_keeps_measured_coordinates_and_restores_name_with_session) ... ok
test_multiple_compatible_candidates_are_not_chosen_automatically (test_asteroids.AsteroidTests.test_multiple_compatible_candidates_are_not_chosen_automatically) ... ok
test_numbered_and_provisional_designations_are_not_confused (test_asteroids.AsteroidTests.test_numbered_and_provisional_designations_are_not_confused) ... ok
test_observer_units_missing_height_and_manual_override (test_asteroids.AsteroidTests.test_observer_units_missing_height_and_manual_override) ... ok
test_single_position_is_marked_as_position_only_and_far_object_rejected (test_asteroids.AsteroidTests.test_single_position_is_marked_as_position_only_and_far_object_rejected) ... ok
test_stationary_star_near_asteroid_is_rejected_by_motion (test_asteroids.AsteroidTests.test_stationary_star_near_asteroid_is_rejected_by_motion) ... ok
test_true_motion_across_ra_wrap_is_compatible (test_asteroids.AsteroidTests.test_true_motion_across_ra_wrap_is_compatible) ... ok

----------------------------------------------------------------------
Ran 48 tests in 9.132s

OK
