tests package¶
Test suite of mpm.
Three behaviors of the CLI decide how a test can reach it:
Spinners and progress bars draw on an interactive terminal only, so the non-TTY
CliRunnerof click-extra never emits them. Drive the CLI underpty.openpty()to exercise them. The✓/✘trail lines and finishers print on any stream: aCliRunnerresult orcapsysreads them off<stderr>.--dry-runsimulates every manager invocation, the read-only ones included. That covers the installed-package lookup by whichremoveandupgradefind their source managers, so a dry-run of those reports “not recognized” and never reaches their multi-manager path. Use a purl, which carries the manager and needs no lookup, or a unit fixture.--planruns the reads and captures the writes, asmeta_package_manager.execution._MUTATING_OPERATIONSdocuments. Test it against real reads or purls, and assert on<stdout>: the plan is plainechothere, and only the trail goes to<stderr>.
A module marked once runs on one runner and not on the matrix, so it imports
no package code beyond __version__: the matrix run holds the coverage floor,
and a test that covers meta_package_manager stays on it.
Submodules¶
tests.conftestmodulePROJECT_ROOTpytest_addoption()pytest_configure()solve_destructive_options()pytest_collection_modifyitems()pytest_report_header()warm_manager_probes()isolate_user_config()run_as_regular_user()invoke()stub_run_cli()capture_run_cli()patch_pool_with()fake_pool()slow_fake_pool()changing_fake_pool()queries_through_a_cli()subcmd()
tests.destructive_planmodulePACKAGE_IDSDESTRUCTIVE_TEST_FAMILIESdestructive_group()SHORT_FAILURE_TIMEOUTgh_unauthenticated()cpan_install_blocked()cpan_upgrade_all_blocked()pear_install_blocked()snap_sudo_unavailable()gcloud_components_blocked()claude_marketplace_missing()pearl_bash_too_old()rpm_distro_missing()flatpak_install_blocked()INSTALL_REMOVE_BLOCKED_WHENinstall_remove_blocked()REMOVE_REFUSES_INSTALLEDUPGRADE_ALL_BLOCKED_WHENupgrade_all_blocked()UPGRADE_ALL_SKIPPED_WHENupgrade_all_skipped()
tests.fake_managermoduleFakeManagerFakeManager.homepage_urlFakeManager.platformsFakeManager.cli_namesFakeManager.requirementFakeManager.cli_pathFakeManager.executableFakeManager.freshFakeManager.versionFakeManager.installedFakeManager.outdatedFakeManager.orphansFakeManager.search()FakeManager.upgrade_all_cli()FakeManager.upgrade_one_cli()FakeManager.documentation_urlFakeManager.idFakeManager.nameFakeManager.repository_urlFakeManager.virtualFakeManager.wikipedia_url
ChangingFakeManagerChangingFakeManager.DEPENDENCYChangingFakeManager.LATESTChangingFakeManager.ORPHANChangingFakeManager.PINNEDChangingFakeManager.inventoryChangingFakeManager.installedChangingFakeManager.outdatedChangingFakeManager.orphansChangingFakeManager.search()ChangingFakeManager.install()ChangingFakeManager.upgrade_all_cli()ChangingFakeManager.upgrade_one_cli()ChangingFakeManager.upgrade()ChangingFakeManager.cli_namesChangingFakeManager.documentation_urlChangingFakeManager.homepage_urlChangingFakeManager.idChangingFakeManager.nameChangingFakeManager.remove()ChangingFakeManager.repository_urlChangingFakeManager.virtualChangingFakeManager.wikipedia_urlChangingFakeManager.remove_orphan()ChangingFakeManager.cleanup_orphan()
TimingOutFakeManager
tests.test_bar_pluginmoduletest_normalize_params()test_check_mpm_missing_binary()test_ranked_mpm_orders_candidates()test_check_mpm_keeps_the_release_suffix()test_search_mpm_stops_at_home()test_mpm_cli_ignores_the_spawn_directory()test_search_mpm_resolves_a_symlinked_plugin()test_print_honors_a_color_opt_out_off_the_main_thread()test_renderer_version_diff_colors_by_appearance()test_elide_versions()test_elide_versions_keeps_the_diff_boundary()test_renderer_caps_version_cells()test_renderer_version_cap_is_configurable()test_renderer_table_alignment_survives_ansi()test_renderer_elides_long_payload_versions()test_renderer_sanitizes_error_lines()test_renderer_section_header()test_renderer_hides_when_up_to_date()test_plugin_empty_mpm_output()test_plugin_failure_reads_the_exit_code()test_plugin_options_reach_every_call()test_plugin_shell_env_follows_the_mpm_version()test_renderer_actions_carry_the_options()test_renderer_ties_each_upgrade_to_its_manager()test_plugin_version_matches_the_package()test_plugin_about_footer()test_captures_are_referenced_by_the_docs()TestBarPlugin
tests.test_brewfilemoduletest_quote_ascii()test_quote_escapes_backslash_and_quote()test_quote_non_ascii_passes_through()test_format_entry()test_tap_from_package_id()test_format_header_lists_coverage_and_skipped()test_format_header_empty_coverage_marker()test_bundle_entry_types_ordering()test_build_brewfile_brew_cask_sorted_alphabetically()test_build_brewfile_emits_tap_lines_for_third_party_taps()test_build_brewfile_skips_managers_without_entry_type()test_build_brewfile_header_records_skipped_counts()test_mas_brewfile_entry_uses_name_and_numeric_id()test_mas_brewfile_entry_skips_non_numeric_id()test_mas_brewfile_entry_falls_back_to_id_when_name_missing()test_vscodium_brewfile_skip_warning_set()test_phase_2_to_4_managers_have_brewfile_entry_types()test_build_brewfile_round_trip_format_is_parseable_by_ruby_inspect()test_brew_bundle_check_parses_generated_brewfile()
tests.test_climodulecheck_manager_selection()assert_no_manager_selected()report_rows()check_report()check_filtered_ids()test_executable_module()test_debug_rerun_command()test_timeout()test_failed_maintenance_names_its_cause_on_the_trail()test_summary()test_fatal_message_reaches_stderr_in_every_format()test_serialized_output_notes_ignored_columns()managers_table_signals()check_managers_table_selection()test_invalid_manager_selector()test_unmaintained_marker_takes_the_deprecated_style()test_default_all_managers()test_manager_shortcuts()test_conf_file_overrides_defaults()test_conf_file_cli_override()test_conf_and_parameter_mix_keep_order()reached_manager_signals()check_reached_selection()test_selector_precedence()test_bar_plugin_path()test_bar_plugin_path_shortens_the_home_folder()test_bar_plugin_path_needs_a_source_install()check_packages_payload()CLITableTeststest_all_table_rendering()CLIQueryTestsREAL_POOL_TEMPLATE_TESTSTEMPLATE_TEST_METHODStest_template_tests_read_their_subcommand()test_template_tests_default_to_the_fake_pool()test_teardown_interrupt_guard_exits_without_a_traceback()
tests.test_cli_backupmodulesubcmd()evaluate_signals()check_selection()test_default_all_managers_output_to_console()test_output_to_console()test_output_to_file()test_output_to_file_creates_missing_parents()test_single_manager_file_output()test_in_place_modes_need_a_file()test_in_place_modes_need_an_existing_file()test_merge_and_update_version_are_exclusive()test_overwrite_is_ignored_on_stdout()test_target_must_be_a_toml_file()test_existing_target_needs_overwrite()test_merge_adds_new_entries()test_update_version_refreshes_listed_entries()
tests.test_cli_dumpmoduletests.test_cli_install_removemoduleSearchlessFakeManagerUnsearchableFakeManagerUnsearchableFakeManager.search()UnsearchableFakeManager.cli_namesUnsearchableFakeManager.documentation_urlUnsearchableFakeManager.homepage_urlUnsearchableFakeManager.idUnsearchableFakeManager.nameUnsearchableFakeManager.repository_urlUnsearchableFakeManager.virtualUnsearchableFakeManager.wikipedia_url
HeldFakeManagersubcmd()evaluate_signals()check_selection()test_no_package_id()test_install_unresolved_exits_nonzero()test_install_unresolved_zero_exit_opt_out()test_remove_absent_package_is_idempotent()test_remove_with_manager_lacking_inventory()test_install_reports_what_moved()test_install_untied_reports_every_attempt()test_failed_install_names_its_cause_on_the_trail()test_dry_run_install_names_plan()test_plan_install_resolves_what_dry_run_cannot()test_install_report_serialized_keeps_the_exit_code()test_install_ties_and_searches_in_one_run()test_install_without_search_tries_the_package_directly()test_install_falls_through_a_failed_search()test_install_stops_at_a_cooldown_hold()test_install_refuses_an_ambiguous_exact_search()test_remove_reports_what_moved()test_single_manager_install_and_remove()test_collection_hook_runs_before_xdist_stamps_the_group()test_suite_collects_without_xdist()test_loadgroup_keeps_a_group_on_one_worker()
tests.test_cli_installedmodulesubcmd()TestInstalledOverlappingFakeManagerOverlappingFakeManager.installedOverlappingFakeManager.cli_namesOverlappingFakeManager.documentation_urlOverlappingFakeManager.homepage_urlOverlappingFakeManager.idOverlappingFakeManager.nameOverlappingFakeManager.repository_urlOverlappingFakeManager.virtualOverlappingFakeManager.wikipedia_url
overlapping_pool()test_duplicates_keep_the_shared_packages()test_duplicates_sort_the_table_by_package()
tests.test_cli_managersmodulesubcmd()evaluate_signals()check_selection()TestManagersTestManagers.columns_registryTestManagers.columns_test_pairTestManagers.test_all_managers()TestManagers.test_unsupported_managers()TestManagers.test_view_widths()TestManagers.test_all_managers_flag_selects_widest_view()TestManagers.test_default_view_drops_constant_columns()TestManagers.test_json_parsing()
test_managers_stamps_global_timeout()
tests.test_cli_orphansmoduletests.test_cli_outdatedmoduletests.test_cli_restoremoduletests.test_cli_sbommodulePROXY_VARSOSV_RECORDAliasedFakeManagerUnreadableMetadataFakeManagerUnreadableMetadataFakeManager.package_metadata_batch()UnreadableMetadataFakeManager.cli_namesUnreadableMetadataFakeManager.documentation_urlUnreadableMetadataFakeManager.homepage_urlUnreadableMetadataFakeManager.idUnreadableMetadataFakeManager.nameUnreadableMetadataFakeManager.repository_urlUnreadableMetadataFakeManager.virtualUnreadableMetadataFakeManager.wikipedia_url
osv()subcmd()evaluate_signals()check_selection()test_default_spdx_json_output_to_console()test_unrecognized_extension_without_format()test_unrecognized_extension_with_explicit_format()test_output_to_file()test_sbom_query_filter()test_minimal_mode_skips_metadata_extractor()test_cli_import_defers_sbom_libraries()test_sbom_command_loads_the_deferred_libraries()test_overwrite_is_ignored_on_stdout()test_format_must_match_the_extension()test_missing_writer_stack_is_a_usage_error()test_metadata_failure_falls_back_to_minimal_data()test_network_attaches_the_advisories_of_an_alias()test_network_failure_keeps_the_export()test_network_scan_needs_the_online_extra()
tests.test_cli_searchmoduletests.test_cli_upgrademodulefailing_installed_query()subcmd()evaluate_signals()check_selection()test_all_managers_dry_run_upgrade_all()test_all_managers_upgrade_all()test_single_manager_dry_run_upgrade_all()test_single_manager_upgrade_all()test_installed_ids_tolerates_a_failing_cli()test_sourcing_survives_a_failing_manager()test_dry_run_names_plan_to_resolve_a_package()test_plan_resolves_a_package_dry_run_cannot()test_installed_inventory_reads_none_on_a_failing_cli()test_installed_inventory_distrusts_an_accumulated_error()test_installed_inventory_drops_the_memoized_views()test_upgrade_all_takes_the_listing_it_is_handed()test_upgrade_outcomes_classification()test_upgrade_outcomes_undated_hold()test_upgrade_outcomes_direction()test_upgrade_outcome_glyphs_cover_every_outcome()test_upgrade_outcomes_without_an_outdated_listing()test_outcome_detail()test_upgrade_all_reports_what_moved()test_failed_upgrade_all_names_its_cause_on_the_trail()test_upgrade_all_selects_the_cooldown_columns()test_upgrade_packages_reports_what_moved()test_upgrade_all_report_serialized()test_upgrade_all_simulation_skips_the_report()ProbedFakeManagerProbedFakeManager.pinned_releaseProbedFakeManager.probedProbedFakeManager.release_date()ProbedFakeManager.cli_namesProbedFakeManager.documentation_urlProbedFakeManager.homepage_urlProbedFakeManager.idProbedFakeManager.nameProbedFakeManager.repository_urlProbedFakeManager.virtualProbedFakeManager.wikipedia_url
probed_fake_pool()test_upgrade_all_dates_a_held_package()test_upgrade_all_dates_a_held_package_serialized()test_upgrade_probes_each_release_once()test_cooldown_verdicts_last_one_invocation()ListedFakeManagerListedFakeManager.storeListedFakeManager.installedListedFakeManager.upgrade_all_cli()ListedFakeManager.cli_namesListedFakeManager.documentation_urlListedFakeManager.homepage_urlListedFakeManager.idListedFakeManager.nameListedFakeManager.repository_urlListedFakeManager.upgrade_one_cli()ListedFakeManager.virtualListedFakeManager.wikipedia_url
ListedPeerFakeManagerlock_family_pool()test_upgrade_reports_each_member_of_a_lock_family()
tests.test_cli_whichmoduletests.test_cooldownmoduletest_release_anchored_cutoff_math()test_supported_managers_advertise_cooldown()test_ungateable_managers_lack_cooldown()test_timestamp_based_managers_inject_cutoff()test_npm_injects_integer_days()test_yay_advertises_cooldown_while_idle()test_yay_cooldown_version_gate()test_yay_cooldown_undetectable_version()test_yay_cooldown_policy_gates_both_paths()test_yay_user_config_dir()test_yay_cooldown_overlay()test_yay_cooldown_overlay_without_user_config()test_yay_cooldown_overlay_survives_manager_gc()test_yay_cooldown_epoch_clamped_to_zero()test_yay_cooldown_no_recursion_when_version_resolved_lazily()test_probe_managers_advertise_synthesized_cooldown()test_cooldown_is_synthesized_classifier()test_cooldown_permits_probe_backed_manager()test_hold_inactive_without_cooldown()test_hold_passes_aged_release()test_hold_dates_fresh_release()test_hold_fail_closed_on_unknown_date()test_hold_fail_closed_on_probe_error()test_hold_best_effort_waives_unknown_date()test_hold_off_policy_skips_probe()test_hold_dry_run_skips_probe()test_hold_naive_datetime_read_as_utc()test_hold_probes_each_package_once()test_synthesized_gate_reroutes_upgrade_all()test_upgrade_all_without_cooldown_keeps_native_path()test_flatpak_release_date_reads_installed_origin()test_flatpak_release_date_probes_every_remote_for_a_new_app()test_flatpak_release_date_none_without_date_line()test_paru_release_date()test_hold_passes_exempt_sentinel()test_paru_gated_upgrade_all_rides_the_ignore_flag()test_paru_gated_upgrade_all_without_holds_keeps_native_cli()test_mas_release_date()test_attempt_install_reports_cooldown_status()test_package_task_holds_fresh_release()test_cooldown_permits_without_cooldown()test_cooldown_permits_supported_manager()test_cooldown_permits_blocks_ungateable()test_cooldown_permits_allows_best_effort()test_cooldown_permits_allows_off()test_off_policy_suppresses_env_injection()test_cli_rejects_invalid_cooldown()test_cooldown_option_parses_windows_and_keywords()test_parse_cooldown_section()test_parse_cooldown_section_rejects()test_parse_cooldown_section_rejects_wrong_shape()test_resolve_cooldown()test_cli_cooldown_config_table()test_cli_cooldown_keyword_without_window_is_a_noop()test_cli_cooldown_legacy_config_spelling()test_cli_cooldown_config_policy_without_period()
tests.test_dispatchmodulecapable_term()FakeContextALL_OPERATIONSStubManagerTTYStringIOtest_runs_sequentially_in_main_thread()test_runs_concurrently_off_the_main_thread()test_preserves_input_order_despite_completion_order()test_per_manager_spinners_follow_the_job_count()test_empty_manager_list_returns_empty()test_no_finisher_line_off_terminal()test_finisher_line_when_progress_bar_shown()test_failure_trail_marks_errored_managers()test_trail_label_shapes()test_trail_detail_composes_on_the_subject()test_trail_includes_managers_that_finish_before_the_indicator_shows()test_per_package_runs_sequentially_in_main_thread()test_per_package_runs_concurrently_off_the_main_thread()test_per_package_tasks_of_one_manager_share_a_thread()test_per_package_empty_is_a_noop()test_per_package_finisher_when_progress_bar_shown()test_per_package_failure_trail_marks_failed_tasks()test_per_package_finisher_survives_off_terminal()test_lock_family_members_share_one_lane_when_mutating()test_lock_family_not_serialized_for_reads()test_lock_family_members_share_one_lane_in_collect_per_package()test_lock_family_lane_shares_a_run_cache()test_internal_escalator_runs_in_a_sequential_tail()test_sequential_tail_reports_one_batch_wide_finisher()test_operation_trail_echoes_marks_and_finisher_on_tty()test_operation_trail_silent_without_progress()test_operation_trail_echoes_off_terminal()
tests.test_docsmoduledocs_update()test_unique_local_group_ids()test_local_groups_no_overlap()test_all_platforms_covered_by_local_groups()test_project_metadata()test_docs_deploy_where_infrastructure_says()test_docs_site_url_matches_pyproject()test_redirects_file_is_well_formed()test_verbatim_card_links_are_rooted()test_changelog()test_labels()test_new_package_manager_issue_template()test_extra_labels_in_pyproject()test_label_rules_reference_known_labels()test_label_rules_in_pyproject()test_manager_file_rule_claims_only_its_own_tests()test_pyproject_updates_are_pyproject_fmt_fixpoint()test_string_array_wraps_where_pyproject_fmt_wraps()test_benchmark_toml_well_formed()test_benchmark_homepages_cover_non_pool_managers()test_manager_homepage_url()check_wikipedia_url()test_manager_wikipedia_url()test_benchmark_table_renders()test_manager_upstreams_cover_the_pool()test_metrics_subjects_in_pyproject()test_metrics_charts_are_committed()test_metrics_predecessor_is_sampled()test_metrics_series_start_at_creation()test_metrics_store_well_formed()test_metrics_subjects_match_benchmark()test_binaries_download_table_renders()test_fan_out_covers_every_subcommand()test_concurrency_table_renders()test_lock_family_backends_are_distinct()test_lock_families_render()test_augmentations_table_renders()test_upgrade_report_legend()test_ansi_logo_tracks_the_brand_palette()test_manager_logo_assets()test_manager_logos_resolve()test_manager_logo_renders()test_manager_card_renders()test_manager_label_badge_color()test_manager_links_never_wrap_inside()test_manager_logo_credits_renders()test_manager_stubs_in_sync()test_api_stubs_are_reachable_from_a_toctree()test_manager_page_headings_survive_a_build()test_manager_page_sections_render()test_operation_notes_reach_the_operations_table()test_operation_notes_are_full_sentences()test_version_probe_nests_under_the_reference_traces()test_config_template_block_is_the_command_output()test_configuration_section_names_no_build_host()DEFINITION_ONLY_FIELDStest_definition_only_fields_are_documented()DOCSTRING_FENCEPROSE_DIRECTIVESBARE_URLANGLE_LINK_DESTtest_docstrings_carry_no_bare_url()test_docstrings_carry_no_angle_bracket_link_destination()TRAIL_FAILURE_GLYPHtest_trail_glyph_matches_the_emitted_one()test_self_referencing_urls_name_a_file_the_tree_holds()test_manager_traces_render_literal_blocks()test_manager_changelog_entries()test_frontend_changelog_sections()test_manager_support_bar_renders()test_manager_support_legend()test_managers_index_table_renders()test_queued_todos_render()test_brewfile_managers_table_renders()test_manager_card_carries_upstream_readings()test_upstream_badges_cover_every_forge()test_manager_upstream_badges()test_matrix_blocks_in_sync()test_mirror_blocks_in_sync()test_unsupported_page_matches_benchmark()test_unsupported_verdicts_cite_a_release()test_unsupported_wikipedia_references()test_unsupported_anchors_match_docutils()test_cooldown_support_statuses_known()test_benchmark_operations_rows_have_support()test_cooldown_support_table_covers_the_pool()test_retraction_table_well_formed()test_retraction_status_reuses_table_row()SKILL_SPEC_FIELDSSKILL_CLAUDE_CODE_EXTENSIONSSKILL_MODEL_HINTtest_add_manager_skill_frontmatter()test_add_manager_skill_include_offset()
tests.test_docstring_corpusmodulePROBE_CACHEStest_documented_output_still_parses()test_documented_ids_read_back_from_their_purl()MANAGERS_BREAKING_THEIR_PURL_TYPEtest_documented_purls_follow_their_registered_type()test_display_blocks_align_with_raw()test_fixtures_carry_no_truncation_marker()test_query_fixtures_run_verbatim()MUTATION_MEMBERSPID_SENTINELBUILD_CLI_KWARGSPLACEHOLDER_REtest_documented_command_matches_construction()QUERY_MEMBERStest_documented_query_command_matches_construction()
tests.test_doctormoduletest_doctor_cli_argv()test_doctor_supported()test_doctor_unsupported()test_doctor_verdict()test_doctor_incomplete_run_stays_an_error()test_base_doctor_not_implemented()HealthyDoctorFakeManagerHealthyDoctorFakeManager.doctor_cli()HealthyDoctorFakeManager.doctor()HealthyDoctorFakeManager.cli_namesHealthyDoctorFakeManager.documentation_urlHealthyDoctorFakeManager.homepage_urlHealthyDoctorFakeManager.idHealthyDoctorFakeManager.nameHealthyDoctorFakeManager.repository_urlHealthyDoctorFakeManager.virtualHealthyDoctorFakeManager.wikipedia_url
SickDoctorFakeManagerSilentDoctorFakeManagerSilentDoctorFakeManager.doctor()SilentDoctorFakeManager.cli_namesSilentDoctorFakeManager.documentation_urlSilentDoctorFakeManager.homepage_urlSilentDoctorFakeManager.idSilentDoctorFakeManager.nameSilentDoctorFakeManager.repository_urlSilentDoctorFakeManager.virtualSilentDoctorFakeManager.wikipedia_url
test_doctor_healthy_relays_report()test_doctor_opens_on_the_escalation_report()test_doctor_without_diagnostic_verb_still_reports()test_doctor_with_no_manager_selected_fails_after_reporting()test_doctor_unhealthy_exits_nonzero()test_doctor_zero_exit_opt_out()test_doctor_silent_healthy_prints_no_section()
tests.test_executionmoduletest_operation_timeouts_cover_all_operations()test_operation_name_sets_match_enum()test_read_only_tier_is_shorter_than_mutating_tier()test_resolve_timeout_explicit_wins()test_resolve_timeout_per_operation()test_make_spinner_live_mode_follows_progress()plain_labels()test_lean_command_strips_manager_plumbing()test_lean_command_keeps_unmatched_plumbing()test_lean_command_empty_argv()test_spinner_label_is_plain_without_styling()test_styling_gate_reaches_worker_threads()test_spinner_label_subject_alone_without_styling()test_spinner_label_italic_follows_terminal_capability()test_make_spinner_label_names_operation_and_command()test_make_spinner_label_without_operation()test_make_spinner_uses_configured_delay()test_spinner_clock_dims_the_parentheses_too()test_spinner_clock_is_plain_before_start()FAIL_ON_STDOUTFAIL_ON_STDERRtest_run_failure_gate()NOISY_STATUSNOISY_FAILUREtest_run_failure_gate_tolerates_stderr_noise()test_run_failure_gate_drops_stderr_noise_from_the_diagnosis()DIAGNOSIS_CAPtest_cli_error_diagnosis()test_cli_error_repr()test_cli_error_diagnosis_keeps_an_opening_error()test_failed_run_relays_diagnosis()test_no_diagnosis_relay()test_exempt_operations_skip_diagnosis_relay()test_version_probe_failure_stays_out_of_cli_errors()test_version_probe_incomplete_run_stays_an_error()test_run_cache_replays_identical_command()test_run_cache_disabled_by_default()test_run_cache_replays_failure_to_every_member()test_run_cache_keeps_distinct_commands_apart()test_run_cache_collapses_dry_run()test_run_cache_drops_reads_once_the_lane_changes_state()test_run_cache_drops_reads_when_the_state_change_times_out()test_run_cache_keeps_state_changes_for_the_peers()test_run_cache_never_serves_a_read_from_a_state_change()test_format_plan_command_shell_quotes_env_and_args()test_plan_captures_mutating_command_without_running_it()test_plan_runs_read_only_operations()test_plan_synthesized_upgrade_all_resolves_reads()test_plan_ignores_force_exec()test_run_registers_live_process_then_discards_it()test_build_cli_escalates_with_sudo_n_when_policy_on()test_build_cli_no_escalation_as_root()test_build_cli_passes_the_options_the_release_accepts()test_build_cli_no_escalation_when_policy_off()test_build_cli_escalation_follows_the_escalator_not_the_platform()test_build_cli_no_escalation_without_an_escalator()test_build_cli_marker_required_for_escalation()test_npm_sudo_marker_dormant_until_opted_in()test_dormant_marker_permission_failure_hints_the_opt_in()test_dormant_marker_hint_negative_gates()test_failed_run_names_a_prompt_its_sudo_gave_up_on()test_run_hints_when_escalation_cannot_authenticate()test_escalated_calls_keep_the_controlling_terminal()test_internal_escalator_spends_a_warm_cache_in_the_terminal_session()test_run_forwards_a_forced_environment_across_run0()test_run_names_each_run0_unit_at_spawn_time()test_run_forwards_the_forced_locale_across_run0()test_run_spawns_in_the_forced_locale()test_c_locale_falls_back_to_c_without_c_utf8()test_run_forwards_nothing_across_an_escalator_that_needs_no_help()test_mutating_subcommands_prime_sudo()test_restore_primes_sudo()test_read_subcommand_does_not_prime_sudo()test_sourced_operation_stamps_active_operation()test_untied_install_search_runs_under_read_only_stamp()test_search_all_cli_skips_inaccessible_directory()test_search_all_cli_skips_inaccessible_file()test_search_all_cli_skips_symlink_loop()test_windows_pathext_tracks_cpython()test_a_file_that_is_not_a_program_raises_enoexec()test_unrunnable_cli_degrades_instead_of_crashing()
tests.test_gnome_extensionmodulepytestmarkEXPECTED_ICON_STATESPACK_DEFAULTSPACKING_WORKFLOWStest_report_section_hosts_submenus_safely()test_metadata_well_formed()test_gschema_well_formed()test_settings_keys_in_sync()test_css_classes_in_sync()test_icon_states_in_sync()test_state_maps_to_a_themed_icon()test_no_orphan_icons()test_logo_matches_the_brand_mark()test_install_bootstrap_matches_the_bar_plugin()test_pack_whitelists_are_identical()test_pack_whitelist_covers_every_source()test_bundled_license_matches_the_project()test_shell_env_gate_matches_the_bar_plugin()test_runtime_argv_long_form()test_extension_js_shell_free_module()test_process_import_boundaries()test_capture_driver_targets_this_extension()test_capture_settings_exist_in_the_schema()test_captures_are_referenced_by_the_docs()test_gjs_unit_suite()
tests.test_helpmoduletests.test_logomoduleMIRRORversion_screen()screen_lines()test_logo_is_rectangular_and_pairable()test_declared_dimensions_match_the_logo()test_logo_width_is_even()test_logo_is_symmetric()test_logo_uses_declared_tones_only()test_logo_carries_structure()test_render_logo_halves_the_rows()test_render_logo_lines_are_logo_wide()test_render_logo_silhouette_is_symmetric()test_render_logo_mirrors_character_for_character()test_render_logo_leaves_transparent_runs_unstyled()test_version_screen_opens_on_a_blank_line()test_version_screen_aligns_the_metadata_column()test_version_screen_reports_the_version()test_version_screen_is_as_tall_as_the_logo()test_logo_is_tall_enough_for_its_metadata()test_version_screen_has_no_trailing_whitespace()test_version_screen_needs_room()test_build_rows_are_empty_outside_a_binary()bake()test_build_rows_reach_the_screen_once_baked()test_build_rows_cost_the_screen_no_width()test_version_screen_width_never_exceeds_the_terminal()test_env_summary_facts_reach_the_screen()test_version_screen_survives_a_missing_terminal()
tests.test_mainmoduletests.test_manager_apmmoduletests.test_manager_aptmoduletests.test_manager_binmoduletests.test_manager_cpanmoduletests.test_manager_definitionmoduleDEFINITION_TOMLreset_definitions()fake_tool()eager_inputs()test_parse_definition_returns_dataclass()test_parse_definition_json_list_path()test_parse_definition_accepts_operation_notes()test_parse_definition_accepts_orphan_operations()test_parse_definition_rejects_legacy_cleanup()test_parse_definition_package_operation_requires_package_id()test_parse_definition_versionless_catalog_manager()test_parse_definition_rejects()test_parse_definition_rejects_bad_id()test_parse_definition_multi_binary_and_sudo()test_parse_definition_internal_sudo()test_parse_definition_resets_sudo_timestamp()test_routing_builtin_is_override()test_routing_typo_of_builtin_is_unknown_manager()test_routing_definition_is_validated()test_build_class_identity()test_build_class_implements()test_factory_regex_parsing()test_factory_json_parsing()test_factory_command_substitution()test_factory_operation_cli()test_factory_orphans_query()test_factory_orphan_operations()test_factory_mark_explicit()test_factory_operation_sudo()test_factory_query_sudo()test_factory_search_refinements()test_factory_search_without_refinements_relies_on_refiltering()test_factory_json_array_field()test_factory_install_ignores_a_version_pin()test_factory_json_parsing_skips_unexpected_shapes()test_factory_regex_parsing_skips_a_match_without_id()test_split_name_version()test_config_file_is_trusted()test_config_file_is_trusted_rejects_a_missing_file()test_config_file_is_trusted_rejects_another_owner()test_config_file_is_trusted_without_posix_ownership()test_is_remote_url()test_config_source()test_collect_definitions_skips_overrides_and_invalid_sections()test_candidate_config_path_reads_the_environment()test_candidate_config_path_reads_the_option()test_candidate_config_path_defers_a_url()test_candidate_config_path_searches_the_default_folder()test_discover_config_definitions()test_discover_config_definitions_reads_nothing()test_register_eager_config_managers()test_main_registers_definitions_before_the_cli()test_register_refuses_untrusted_file()test_register_refuses_url()test_register_rejects_builtin_collision()test_register_is_idempotent()test_factory_functional()test_factory_functional_version_cli()test_cli_lists_config_defined_manager()test_cli_refuses_definition_from_untrusted_file()test_cli_rejects_bad_definition()BUNDLED_DEFINITION_FILESBUNDLED_FILE_DATAtest_bundled_definitions_are_valid()test_bundled_loader_skips_broken_files()test_bundled_ids_disjoint_from_builtins()test_bundled_inventory()test_bundled_registered()test_bundled_definition_carries_no_boilerplate()test_bundled_definition_capabilities()test_bundled_version_regex()test_bundled_parsing()test_bundled_definition_captures_the_bare_name()
tests.test_manager_dnfmoduleDNF5_VERSIONDNF5_VERSION_DEDNF4_VERSIONDNF5_SEARCHDNF4_SEARCHtest_version_probe_reads_both_generations()test_version_probe_reads_dnf5_in_a_german_locale()test_search_parses_both_output_shapes()DNF5_INSTALLED_EVRDNF5_UPGRADESDNF5_ORPHANStest_orphans_parses_a_real_listing()test_outdated_reports_the_installed_version()test_outdated_joins_on_name_and_architecture()test_outdated_keeps_a_candidate_with_no_installed_match()test_search_rejects_non_package_lines()
tests.test_manager_emergemoduletests.test_manager_fwupdmoduletests.test_manager_guixmoduleLIST_INSTALLEDUPGRADE_REPORTPULLED_UPGRADE_REPORTSEARCH_OUTPUTSEARCH_GTK_OUTPUTguix()test_installed_strips_padding_and_names_outputs()test_outdated_reads_the_report_from_stderr()test_search_strips_synopsis_padding()test_search_reports_a_name_once()test_search_for_an_output_matches_the_name_alone()test_upgrade_one_matches_the_name_alone()
tests.test_manager_homebrewmoduletest_trust_tap_skips_core_packages()test_trust_tap_qualified_package()test_no_greedy_by_default()test_extra_args_reach_their_own_command()test_install_routes_through_trust_tap()test_upstream_purls_reads_the_source_package()test_upstream_purls_ignores_dependency_packages()test_upstream_purls_degrades_to_empty()test_upstream_purls_tolerates_malformed_json()test_installed_names_a_stale_caskroom_directory()test_brew_prefix()test_package_metadata_batch_skips_an_empty_inventory()test_package_metadata_batch_degrades_to_empty()test_package_metadata_batch_resolves_every_formula_name()test_formula_metadata_maps_the_record()test_formula_metadata_reads_the_sbom_of_the_installed_keg()test_cask_metadata_maps_the_record()
tests.test_manager_ipsmoduletests.test_manager_masmoduletests.test_manager_microdnfmoduletests.test_manager_miktexmoduletests.test_manager_misemodulemanager()test_installed_yields_packages()test_installed_handles_empty()test_installed_yields_one_package_per_version()test_installed_preserves_backend_prefix()test_outdated_yields_upgrades()test_outdated_handles_empty()test_search_parses_table()test_search_keeps_descriptions_with_inner_spaces()test_install_builds_spec()test_upgrade_all_cli_omits_target()test_upgrade_one_cli_builds_spec()test_operation_command()
tests.test_manager_nalamoduletests.test_manager_oh_my_fishmoduletests.test_manager_overridesmodulereset_overrides()test_apply_raises_on_unknown_manager_so_no_hint_emitted()test_apply_returns_hint_for_detection_field()test_apply_returns_hints_for_each_detection_field()test_apply_returns_no_hint_for_preference_field()test_apply_returns_no_hint_when_overrides_empty()test_build_issue_url_asserts_on_oversize_url()test_build_issue_url_fills_fields_of_the_form()test_build_issue_url_includes_detected_cli_path_when_available()test_build_issue_url_targets_bug_template()test_build_issue_url_url_decodes_back_to_useful_body()test_cached_property_evicted_on_override()test_cli_config_template_multiple_managers()test_cli_config_template_no_args_dumps_all_maintained()test_cli_config_template_one_manager()test_cli_config_template_output_is_applicable()test_cli_config_template_unknown_manager_errors()test_cli_contribution_hint()test_cli_fails_on_unknown_manager_in_config()test_cli_ignore_auto_updates_warns()test_cli_include_auto_updates_names_replacement()test_cli_loads_manager_overrides()test_cli_managers_suggests_an_override_for_an_unread_version()test_cli_removed_auto_updates_key_warns()test_cli_warns_on_risky_override_from_untrusted_file()test_cli_warns_on_stale_overrides_section()test_config_template_round_trips()test_contribution_hint_fields_subset_of_overridable()test_dict_override()test_dict_override_adds_to_shipped_variables()test_dump_manager_overrides_converts_tuples_to_lists()test_dump_manager_overrides_keys_are_alphabetical()test_dump_manager_overrides_lists_buildable_operations()test_dump_manager_overrides_skips_none_values()test_empty_section_is_noop()test_format_contribution_hints_cautions_an_agent()test_format_contribution_hints_empty_returns_empty_string()test_format_contribution_hints_lists_each_with_url()test_global_default_still_applies_without_override()test_multiple_fields_in_one_call()test_non_dict_manager_section_raises()test_non_dict_top_level_raises()test_operations_override_reaches_its_command_alone()test_operations_override_rejects()test_operations_override_sets_extra_args()test_overridable_fields_match_base_attributes()test_override_applies()test_override_experiment_guides_an_agent()test_override_experiment_names_the_field_to_test()test_override_experiment_quotes_the_head_of_a_long_output()test_override_experiment_stays_silent_when_no_override_helps()test_override_rejects()test_overrides_section_names_a_schema_field()test_per_manager_override_beats_global_default()test_removed_auto_updates_field_names_replacement()test_risky_override_from_untrusted_source_warns()test_str_tuple_override_coerces_list_to_tuple()test_str_tuple_override_replaces_default()test_sudo_is_a_risky_override_field()test_timeout_binds_detection_phase()test_unknown_manager_raises()test_unknown_manager_with_override_operations_reads_as_typo()
tests.test_manager_pipmoduletest_running_from_bundled_app()test_pip_install_blocked_parses_probe()test_probe_keeps_candidate_on_error()test_search_prepends_current_interpreter_for_user_install()test_search_skips_bundled_interpreter()test_search_skips_pep668_blocked_candidate()test_search_unavailable_when_all_candidates_blocked()test_pip_module_missing_parses_probe()test_pip_module_missing_reads_past_undecodable_output()test_search_skips_running_interpreter_without_pip()test_split_dep_spec()test_distribution_metadata()test_package_metadata_batch_skips_an_empty_inventory()test_package_metadata_batch_enriches_each_package_alone()
tests.test_manager_pipxmoduletests.test_manager_pkgmoduletests.test_manager_pmergemoduletests.test_manager_protonplusmoduletests.test_manager_pwsh_gallerymodulemanager()test_pwsh_quote()test_parse_json_array()test_installed_yields_packages()test_installed_handles_empty_pipeline()test_outdated_yields_only_upgrades()test_search_passes_wildcard_pattern()test_search_exact_drops_wildcards()test_search_yields_description()test_install_builds_expected_expression()test_install_with_version_appends_flag()test_upgrade_all_cli_does_not_constrain_scope()test_upgrade_one_cli_targets_named_package()test_upgrade_one_cli_with_version_appends_flag()test_remove_quotes_package_id()test_install_escapes_embedded_single_quote()
tests.test_manager_scoopmoduletests.test_manager_sdkmanmoduletests.test_manager_sfsumoduletests.test_manager_tazpkgmoduletests.test_manager_uvmoduletests.test_manager_vagrantmoduletests.test_manager_vcpkgmoduletests.test_manager_wingetmodulewinget()test_store_id_re_matches()test_store_id_re_rejects()test_parse_details_ignores_indented_upgrade_line()test_installed_lists_every_catalog_match()test_outdated_keeps_every_winget_upgrade()test_parse_table_handles_short_header_line()test_parse_table_yields_nothing_on_empty_output()test_build_package_native()test_build_package_store_uses_msstore_sentinel()test_search_orders_native_before_store()
tests.test_manager_yarnmoduletests.test_manager_zyppermoduleONE_UPDATENO_UPDATESONE_SOLVABLEMANY_SOLVABLESLIBOPENH264_SOLVABLESNO_SOLVABLEtest_outdated_reads_any_number_of_updates()test_outdated_reads_the_update_versions()test_outdated_reads_the_update_description()test_search_reads_any_number_of_solvables()test_search_reads_the_latest_version()test_installed_reads_any_number_of_solvables()
tests.test_managersmoduletest_xkcd_set()test_unmaintained()test_maintenance_note()test_operation_notes()test_privileged_operations()test_ascii_id()test_name()test_unique_names()test_homepage_url()test_repository_url()test_documentation_url()URL_ATTRIBUTEStest_url_attributes_are_distinct()DOCUMENTATION_LABELMARKDOWN_LINK_URLtest_docstring_repeats_no_card_link()test_platforms()test_requirement()test_cli_names_type()test_cli_search_path()test_extra_env_type()test_global_args_type()test_version_cli_options()test_version_regexes()test_version_regex_matches_sample()EOPKG_LISTINGtest_eopkg_listing_keeps_its_last_rows()test_eopkg_installed_reports_the_bare_version()test_eopkg_outdated_joins_the_upgrade_candidate()test_eopkg_candidate_regex_reads_real_info_output()test_eopkg_outdated_skips_the_info_call_when_nothing_is_outdated()test_eopkg_search_decodes_character_references()test_parsed_output_omits_reshaping_arg()test_cli_path()test_query_parts()test_package_matches()CANONICAL_ATTRScollect_props_ref()test_operation_order()test_content_order()test_anchored_regexes_scanning_whole_output_are_multiline()test_argv_literals_carry_no_shell_quoting()test_reads_inside_mutating_methods_survive_plan_mode()test_operation_vocabularies_agree()test_extra_args_call_sites_are_explicit()test_build_cli_adds_extra_args()test_operation_methods_stamp_their_own_entry()test_version_probe_takes_no_extra_args()declared_keywords()test_manager_keywords_have_one_owner()test_manager_keywords_are_not_manager_ids()test_manager_keywords_are_normalized()test_parsed_json_is_never_subscripted()
tests.test_metadatamoduletests.test_orphansmoduletest_remove_orphan_uses_native_cascade()test_plain_remove_no_longer_cascades()test_remove_orphan_unsupported_raises_not_implemented()test_cleanup_orphan_uses_native_sweep()test_plain_cleanup_never_sweeps()test_cleanup_orphan_unsupported_raises_not_implemented()test_cleanup_orphan_capability_matrix()test_cleanup_category_support()test_cleanup_category_argv()test_synthesized_sweep_fixpoint()test_synthesized_sweep_stops_without_progress()test_orphans_parsing()test_orphans_query_unsupported()test_orphans_query_supported()test_implements_method_introspection()test_base_orphan_operations_not_implemented()EXPLICIT_INSTALL_NOT_MARKEDtest_orphan_removal_spares_explicit_installs()test_explicit_install_exemptions_remove_orphans()test_mark_explicit_uses_native_command()test_yum_mark_explicit_follows_dnf_generation()test_mark_explicit_unsupported_raises_not_implemented()test_flatpak_may_hold_only_runtimes_as_dependencies()test_flatpak_may_hold_as_dependency_survives_a_failed_listing()RemovableFakeManagerCleanupFakeManagerSweepSynthesizingFakeManagerSweepSynthesizingFakeManager.remove()SweepSynthesizingFakeManager.cli_namesSweepSynthesizingFakeManager.documentation_urlSweepSynthesizingFakeManager.homepage_urlSweepSynthesizingFakeManager.idSweepSynthesizingFakeManager.nameSweepSynthesizingFakeManager.repository_urlSweepSynthesizingFakeManager.virtualSweepSynthesizingFakeManager.wikipedia_url
DecomposedCleanupFakeManagerDecomposedCleanupFakeManager.cleanup_orphan()DecomposedCleanupFakeManager.cli_namesDecomposedCleanupFakeManager.documentation_urlDecomposedCleanupFakeManager.homepage_urlDecomposedCleanupFakeManager.idDecomposedCleanupFakeManager.nameDecomposedCleanupFakeManager.repository_urlDecomposedCleanupFakeManager.virtualDecomposedCleanupFakeManager.wikipedia_url
removable_fake_pool()test_remove_orphans_falls_back_to_plain_removal()test_cleanup_orphans_reports_the_sweep()test_cleanup_category_selection()test_cleanup_trail_names_categories()test_cleanup_all_categories_skipped_errors()ReasonKeepingFakeManagerReasonKeepingFakeManager.callsReasonKeepingFakeManager.search()ReasonKeepingFakeManager.install()ReasonKeepingFakeManager.mark_explicit()ReasonKeepingFakeManager.cli_namesReasonKeepingFakeManager.documentation_urlReasonKeepingFakeManager.homepage_urlReasonKeepingFakeManager.idReasonKeepingFakeManager.nameReasonKeepingFakeManager.repository_urlReasonKeepingFakeManager.virtualReasonKeepingFakeManager.wikipedia_url
FailingMarkFakeManagerFailingMarkFakeManager.mark_explicit()FailingMarkFakeManager.cli_namesFailingMarkFakeManager.documentation_urlFailingMarkFakeManager.homepage_urlFailingMarkFakeManager.idFailingMarkFakeManager.nameFailingMarkFakeManager.repository_urlFailingMarkFakeManager.virtualFailingMarkFakeManager.wikipedia_url
test_install_marks_an_installed_package_explicit()test_install_leaves_a_fresh_package_alone()test_install_survives_a_failed_mark()test_restore_marks_an_installed_package_explicit()test_invocation_drops_inventory_caches()
tests.test_poolmoduletest_manager_definition_inventory()test_manager_classes_order()test_manager_count()test_shared_lock_families_are_disjoint()test_shared_lock_family_members_exist_in_pool()test_lock_families_nest_in_label_groups()test_delegating_managers_share_their_target_lock()test_pacman_subclasses_share_the_pacman_lock()test_ebuild_based_managers_share_one_lock_family()test_cached_pool()test_maintained_managers()test_supported_managers()test_unsupported_managers()test_manager_groups()DERIVED_EXTRA_OPTIONStest_extra_option_allowlist()test_select_managers()test_select_managers_allow_empty_lets_an_empty_selection_through()test_select_managers_timeout_stamping()test_select_managers_cooldown_policy_keeps_precedence()test_warm_availability_skips_without_context()test_warm_availability_skips_when_not_concurrent()test_warm_availability_probes_concurrently()test_merge_into_probe_lanes_groups_by_signature()test_merge_into_probe_lanes_partitions_the_whole_pool()test_warm_availability_shares_one_cache_within_a_lane()
tests.test_purl_specmoduletests.test_sbommoduleassert_valid_cyclonedx()test_package_purl_carries_the_namespace()test_registered_purl()test_cyclonedx_publishes_the_registered_purl()test_spdx_leads_with_the_registered_purl()test_advisory_of_the_registered_purl_reaches_the_package()test_file_autodetect()test_normalize_spdx_id()test_minimal_mode_emits_bare_spdx_payload()test_bundled_mode_spdx_populates_rich_fields()test_bundled_mode_cyclonedx_populates_rich_fields()test_cyclonedx_compound_license_expression_details()test_spdx_license_normalization()test_spdx_merges_external_per_package_sbom()test_stats_track_per_manager_and_merge_counts()test_cyclonedx_stats_count_external_bom_refs()test_spdx_renders_attached_vulnerabilities()test_cyclonedx_renders_attached_vulnerabilities()UPSTREAM_ALIAStest_all_purls_yields_aliases()test_resolve_purl_targets_names_every_owner()test_one_coordinate_shared_by_two_packages_reaches_both()test_cyclonedx_one_advisory_reaches_every_alias_owner()test_stats_count_the_packages_an_alias_reaches()test_spdx_advisory_found_under_an_alias_lands_on_the_formula()test_cyclonedx_advisory_found_under_an_alias_affects_the_formula()test_shared_advisory_deduplicated_in_cyclonedx()
tests.test_sbom_basemoduletests.test_sbom_vulnerabilitiesmoduleclient()test_network_client_caches_responses()test_network_client_retries_then_raises()test_network_client_raises_on_invalid_json()test_network_client_needs_the_online_extra()test_network_client_defaults_to_the_user_cache()test_network_client_works_without_a_cache()test_network_client_reports_a_client_that_cannot_start()test_network_client_refetches_an_unusable_cache_entry()test_network_client_skips_a_body_it_cannot_cache()test_network_client_retries_a_dropped_connection()test_sleep_backoff_honors_a_retry_after_in_seconds()test_normalize_severity()test_extract_fixed_versions_dedupes()test_normalize_osv_record_full()test_parse_purls_maps_ecosystems()test_osv_ecosystems_cover_every_canonical_alias_type()test_osv_ecosystems_cover_every_manager_of_an_indexed_type()test_parse_purls_skips_an_unparsable_purl()test_parse_timestamp()test_fetch_detail_drops_a_record_that_is_not_an_object()test_parse_purls_dedupes_identical_coordinates()test_scan_vulnerabilities_end_to_end()test_scan_vulnerabilities_shared_advisory_fans_out()test_scan_vulnerabilities_no_supported_purls()test_scan_vulnerabilities_skips_bad_detail()test_vulnerability_dataclass_is_frozen()test_batch_chunks_beyond_limit()test_querybatch_request_shape()
tests.test_shell_envmodulefake_shell()bare_environ()test_shell_argv()test_read_shell_env_returns_the_exports()test_read_shell_env_rejects_a_broken_shell()test_read_shell_env_times_out()test_import_shell_env_adopts_the_answer()test_import_shell_env_reports_an_unchanged_path()test_import_shell_env_skips_inside_a_probe()test_import_shell_env_warns_on_a_failing_shell()test_import_shell_env_needs_a_shell()test_import_shell_env_falls_back_to_the_passwd_shell()test_import_shell_env_is_ignored_on_windows()test_cli_shell_env_option()test_cli_shell_env_is_off_by_default()
tests.test_specifiermoduletests.test_sphinx_crossrefsmoduletests.test_sudomoduleINSTALL_RUNtest_default_sudo_matches_system_managers()test_internal_sudo_matches_internal_escalators()test_resets_sudo_timestamp_matches_the_tools_dropping_the_cache()test_internal_sudo_operations_are_narrowed_by_cask_alone()test_hidden_prompt_risk_follows_the_operations_a_tool_escalates_in()only_escalator()prime_sudo_env()test_prime_sudo_skips_when_no_manager_escalates()test_prime_sudo_skips_a_run_of_unprivileged_operations()test_prime_sudo_counts_an_internal_escalator_on_its_policy()test_prime_sudo_leaves_a_stock_windows_run_alone()test_prime_sudo_probes_gsudo_when_windows_escalation_is_asked_for()test_prime_sudo_skips_when_root()test_prime_sudo_skips_on_simulation()test_prime_sudo_warns_without_tty()test_prime_sudo_skips_the_prompt_under_a_passwordless_policy()test_passwordless_probe_asks_about_escalated_binaries_alone()test_escalation_probes_run_in_the_forced_locale()test_passwordless_probe_answers_no_when_unsure()test_prime_sudo_authenticates_and_keeps_alive_on_tty()test_prime_sudo_is_idempotent()test_prime_sudo_warm_probe_stays_silent_on_tty()test_prime_sudo_warm_probe_keeps_alive_off_tty()test_keepalive_drop_warns_once_and_rearms()test_keepalive_refresh_of_warm_credentials_stays_at_debug()test_keepalive_drops_a_refresh_answered_after_the_stop_request()test_prime_sudo_narrates_warm_probe_at_info()test_prime_sudo_narrates_internal_only_skip_at_info()test_prime_sudo_cold_internal_only_never_prompts_on_tty()test_prime_sudo_cold_internal_only_stays_silent_off_tty()test_prime_sudo_denied_user_skips_prompt()test_prime_sudo_denied_doas_probe_speaks_for_its_command_alone()test_prime_sudo_denied_internal_only_stays_silent()test_prime_sudo_audits_escalated_binaries()test_prime_sudo_warns_when_sudo_cannot_run()test_prime_sudo_notice_names_managers_and_subcommand()test_sudo_prompt_respects_sudo_constraints()test_sudo_prompt_names_the_account_that_owns_the_password()RUN0_REFUSALPKEXEC_NO_AGENTtest_is_sudo_auth_failure()test_is_sudo_denied()test_is_permission_failure()test_inspect_install_root()test_inspect_install_root_swallows_probe_failures()test_inspect_install_root_needs_posix_ownership()test_inspect_install_root_names_an_unknown_owner_by_uid()test_install_root_probes_run_the_documented_verb()test_escalator_registry_prefers_sudo()test_escalator_binary_name_defaults_to_its_id()test_win_sudo_identity_rejects_every_other_sudo()test_win_sudo_probe_only_accepts_inline_mode()test_denial_matches_both_subjects_of_the_sudo_wording()test_gsudo_probe_reads_its_output_not_its_exit_code()test_run0_forwards_a_forced_environment()test_escalator_without_a_template_forwards_nothing()test_run0_names_each_unit_after_mpm_and_its_manager()test_escalator_without_a_unit_template_names_nothing()test_probe_without_markers_reads_the_exit_code()test_pkexec_probe_substitutes_the_running_pid()test_probe_args_resolve_for_every_escalator()test_prompt_args_resolve_for_every_escalator()test_run0_prompts_in_a_unit_named_after_mpm()test_resolve_escalator_detects_what_the_host_carries()test_escalator_identity_probe_reads_the_binary()test_escalator_without_identity_args_is_genuine()test_escalator_identity_probe_survives_a_missing_binary()test_escalator_probes_never_reach_the_terminal()test_pkexec_keeps_cwd_from_polkit_121()test_supported_options_survive_a_missing_binary()test_escalators_without_gated_options_spend_no_probe()test_resolve_escalator_skips_an_impostor_for_the_real_thing()test_resolve_escalator_keeps_sudo_on_a_sudo_rs_host()test_resolve_escalator_falls_back_to_a_lone_impostor_off_windows()test_resolve_escalator_override_wins_over_detection()test_resolve_escalator_rejects_an_unknown_name()test_escalator_choice_is_machine_level()test_per_manager_sudo_command_is_refused()test_sudo_command_reaches_the_config_file()test_build_cli_escalates_with_the_selected_binary()test_build_cli_skips_escalation_without_an_escalator()test_prime_sudo_warns_without_any_escalator()test_prime_sudo_probes_and_prompts_through_doas()test_doas_gets_no_keepalive_thread()test_prime_sudo_names_the_remedy_without_tty()PROMPT_BLINDtest_prime_sudo_warns_when_the_prompt_keeps_nothing()test_prime_sudo_prompts_only_when_polkit_keeps_it()test_prime_sudo_asks_polkit_before_prompting_for_run0()test_run0_reads_whether_polkit_shares_what_it_keeps()test_prime_sudo_asks_no_run0_password_under_a_polkit_before_127()test_every_escalator_names_a_remedy()test_credential_probe_keeps_the_terminal_but_not_its_input()test_override_warns_on_a_stand_in()test_diagnose_escalation_on_slitaz()test_diagnose_escalation_as_root()test_diagnose_doas_credentials()test_diagnose_escalation_without_escalator()test_diagnose_escalation_tells_unrunnable_from_stand_in()test_diagnose_escalation_under_a_passwordless_policy()test_diagnose_escalation_when_polkit_keeps_the_authorization()test_diagnose_run0_under_a_polkit_before_127()test_diagnose_escalation_flags_a_chosen_stand_in()test_stall_watchdog_notices_silent_internal_escalator()test_stall_watchdog_ignores_the_command_line()test_stall_watchdog_notice_starts_on_a_fresh_line()test_stall_watchdog_notice_without_an_output_line()test_stall_watchdog_reports_a_record_it_cannot_format()terminal()test_stall_watchdog_holds_the_notice_back_for_a_prompt_on_screen()test_timeout_names_an_unanswered_password_prompt()test_terminal_helpers_answer_nothing_on_windows()test_terminal_echo_reads_the_local_flags()test_terminal_modes_survive_a_terminal_that_cannot_answer()test_stall_watchdog_negative_gates()test_hidden_prompt_risk_holds_the_spinner_still()test_still_call_prints_its_label_once()test_stall_watchdog_tee_gates_debug_lines_at_default_verbosity()test_stall_watchdog_tee_forwards_verbatim_at_debug()
tests.test_versionmodulereverse_fixtures()test_token_allowed_instantiation()test_token_unauthorized_instantiation()test_token_eq()test_token_ne()test_token_gt()test_token_lt()test_token_ge()test_token_le()test_token_hash()test_token_str()test_token_len()test_token_int()test_token_int_none_for_non_integers()test_token_isint()test_token_repr()test_token_format()test_token_mixed_type_not_equal()test_tokenized_string_allowed_instantiation()test_tokenized_string_unauthorized_instantiation()test_tokenized_string_hash()test_tokenized_string_noop_instantiation()test_tokenized_string_idempotent_instantiation()test_tokenized_string_deepcopy()test_tokenized_string_str()test_tokenized_string_len()test_tokenized_string_repr()test_tokenized_string_format()test_tokenized_string_iter()test_tokenized_string_from_integer()test_tokenized_string_empty_tokens()test_tokenized_string_comparison_edge_cases()test_tokenized_string_separators_and_pretty_print()test_tokenized_string_separators_and_lossy_pretty_print()test_version_tokenizer()test_is_version()test_has_hex_hash()test_version_comparison_gt()test_version_comparison_lt()test_underscore_post_release_tag_outranks_its_base()test_post_release_tag_needs_its_underscore()test_version_comparison_eq()test_version_sorting()test_version_range()test_version_range_empty_spec()test_version_range_repr()test_parse_version_is_tokenized_string()styled_split()test_diff_versions()test_diff_versions_accepts_tokenized_strings()