Now that there is no giant list of test cases in testsuite.lua, we ought to go through and rename all the test cases so that they are in sensible clusters, and so they are run in a sensible order (very basic tests first). This page is for working out what the new names should be. If you edit this, please please keep it in alphabetical order by new name.

Notes on naming conventions.

  • 00 prefix for tests that should run first. Currently only 00_basic_invocation_and_options.
  • Avoid the terms "check", "test", and similar. We know these are tests.
  • Suggest clustering by command when there is a primary command being tested.
  • When there isn't, suggest clustering by the name of the most important algorithm (merge, for instance)
  • Suggest putting parentheticals like "(todo)" at the end of the string, so they cluster with the feature.
  • Tests that have not yet been renamed have their old name in the "new name" column too, but in italics.

|| New name (proposed) || Old name || || 00_basic_invocation_and_options || basic_invocation_and_options || || add_and_then_drop_file_does_nothing || add_and_then_drop_file_does_nothing || || add_executable || add_executable || || add_ignored || add_ignored || || add_ignores__MTN || add_ignores__MTN || || add_inside__MTN_ || add_inside__MTN_ || || add_in_subdir || add_in_subdir || || addition_of_files_and_directories || addition_of_files_and_directories || || add_workspace_commit_in_another || add_workspace_commit_in_another || || annotate_file_added_on_different_forks || annotate_file_added_on_different_forks || || annotate_file_on_multirooted_branch || annotate_file_on_multirooted_branch || || annotate_file_whose_name_changed || annotate_file_whose_name_changed || || annotate_where_lineage_depends_on_traversal || annotate_where_lineage_depends_on_traversal || || annotate_where_line_splits || annotate_where_line_splits || || annotate_where_one_parent_is_full_copy || annotate_where_one_parent_is_full_copy || || annotate_with_human_output || annotate_with_human_output || || annotate_with_no_revs || annotate_with_no_revs || || attr_command_in_subdirs || attr_command_in_subdirs || || attr_drop || attr_drop || || attr_init_functions || attr_init_functions || || attr_set_attr_get || attr_set_attr_get || || attr_set_get_commands || attr_set_get_commands || || _--author,_--date || _--author,_--date || || automate_ancestors || automate_ancestors || || automate_ancestry_difference || automate_ancestry_difference || || automate_attributes || automate_attributes || || automate_branches || automate_branches || || automate_certs || automate_certs || || automate_common_ancestors || automate_common_ancestors || || automate_content_diff || automate_content_diff || || automate_descendents || automate_descendents || || automate_erase_ancestors || automate_erase_ancestors || || automate_genkey || automate_genkey || || automate_get_base_revision_id || automate_get_base_revision_id || || automate_get_content_changed || automate_get_content_changed || || automate_get_corresponding_path || automate_get_corresponding_path || || automate_get_current_revision_id || automate_get_current_revision_id || || automate_get_file,_automate_get_file_of || automate_get_file,_automate_get_file_of || || automate_get_manifest_of || automate_get_manifest_of || || automate_get_revision || automate_get_revision || || automate_graph || automate_graph || || automate_heads || automate_heads || || automate_interface_version || automate_interface_version || || automate_inventory || automate_inventory || || automate_keys || automate_keys || || automate_leaves || automate_leaves || || automate_parents,_automate_children || automate_parents,_automate_children || || automate_select || automate_select || || automate_stdio || automate_stdio || || automate_stdio_options || automate_stdio_options || || automate_tags || automate_tags || || automate_toposort || automate_toposort || || bad_packet_args || bad_packet_args || || b_and_h_selectors || b_and_h_selectors || || branch-based_checkout || branch-based_checkout || || branch_handling_in_disapprove || branch_handling_in_disapprove || || b_t_and_a_selector_globbing || b_t_and_a_selector_globbing || || calculation_of_other_unidiffs || calculation_of_other_unidiffs || || calculation_of_unidiffs || calculation_of_unidiffs || || can_execute_things || can_execute_things || || cat_-r_REV_PATH || cat_-r_REV_PATH || || changing_passphrase_of_a_private_key || changing_passphrase_of_a_private_key || || checking_a_few_command_specific_options || checking_a_few_command_specific_options || || checking_that_certain_commands_ignores_the_contents_of__MTN_options || checking_that_certain_commands_ignores_the_contents_of__MTN_options || || check_later_and_earlier_selectors || check_later_and_earlier_selectors || || check_--log || check_--log || || checkout_creates__MTN_log || checkout_creates__MTN_log || || checkout_creates_right__MTN_options || checkout_creates_right__MTN_options || || checkout_does_not_clobber_workspace || checkout_does_not_clobber_workspace || || checkout_fails_with_multiple_heads || checkout_fails_with_multiple_heads || || checkout_-r_no_dir || checkout_-r_no_dir || || checkout_validates_target_directory || checkout_validates_target_directory || || checkout_without_--branch_sets_branch || checkout_without_--branch_sets_branch || || check_same_db_contents_macro || check_same_db_contents_macro || || check_that_--xargs_and_-(at)_behave_correctly || check_that_--xargs_and_-(at)_behave_correctly || || command_completion || command_completion || || committing_with_a_non-english_message || committing_with_a_non-english_message || || commit_update_multiple_heads_message || commit_update_multiple_heads_message || || commit_using__MTN_log_and_--message || commit_using__MTN_log_and_--message || || commit_using__MTN_log || commit_using__MTN_log || || commit_validation_lua_hook || commit_validation_lua_hook || || commit_with_--message-file || commit_with_--message-file || || commit_w_o__MTN_log_being_present || commit_w_o__MTN_log_being_present || || commit_writes_message_back_to__MTN_log || commit_writes_message_back_to__MTN_log || || _--confdir_option_and_get_confdir_lua_function_work || _--confdir_option_and_get_confdir_lua_function_work || || creating_a_bad_criss-cross_merge || creating_a_bad_criss-cross_merge || || creating_a_fork_and_merging || creating_a_fork_and_merging || || creating_a_fork_and_updating || creating_a_fork_and_updating || || creating_a_fork || creating_a_fork || || creating_a_good_and_bad_test_result || creating_a_good_and_bad_test_result || || CRLF_line_normalization || CRLF_line_normalization || || database_check || database_check || || database_dump_load || database_dump_load || || database_is_closed_on_signal_exit || database_is_closed_on_signal_exit || || db_check_and_non-serious_errors || db_check_and_non-serious_errors || || db_check_(heights) || db_check_(heights) || || db_data_format_checking || db_data_format_checking || || db_execute || db_execute || || db_info_of_new_database || db_info_of_new_database || || db_kill_branch_certs_locally_command || db_kill_branch_certs_locally_command || || db_kill_rev_and_recommit || db_kill_rev_and_recommit || || db_kill_rev_locally_command_2 || db_kill_rev_locally_command_2 || || db_kill_rev_locally_command || db_kill_rev_locally_command || || db_kill_tag_locally || db_kill_tag_locally || || db_load_must_create_a_new_db || db_load_must_create_a_new_db || || db_missing || db_missing || || db_rosterify_on_a_db_with_a_root_suture || db_rosterify_on_a_db_with_a_root_suture || || db_rosterify_preserves_renames || db_rosterify_preserves_renames || || db_rosterify_twice_gives_an_error_second_time || db_rosterify_twice_gives_an_error_second_time || || _--db_with_parent_dir || _--db_with_parent_dir || || delete_work_file_on_checkout || delete_work_file_on_checkout || || diff_a_binary_file || diff_a_binary_file || || diff_against_empty_file || diff_against_empty_file || || diff_--external || diff_--external || || diff_in_a_never-committed_project || diff_in_a_never-committed_project || || diffing_a_file_within_revision_outside_a_workspace || diffing_a_file_within_revision_outside_a_workspace || || diffing_a_revision_with_an_added_file || diffing_a_revision_with_an_added_file || || diffing_with_explicit_rev_same_as_wc_rev || diffing_with_explicit_rev_same_as_wc_rev || || diff_output_formats || diff_output_formats || || diff_respects_restrictions || diff_respects_restrictions || || diff_-rREV1_-rREV2_UNCHANGED-FILE || diff_-rREV1_-rREV2_UNCHANGED-FILE || || diff_shows_renames || diff_shows_renames || || disallowing_persistence_of_passphrase || disallowing_persistence_of_passphrase || || disapproving_of_a_revision || disapproving_of_a_revision || || disapproving_with_message || disapproving_with_message || || do_not_log_the_result_of_hook_get_passphrase || do_not_log_the_result_of_hook_get_passphrase || || drop_a_public_and_private_key || drop_a_public_and_private_key || || drop_a_public_key || drop_a_public_key || || drop_directory_with_unversioned_files_and_update || drop_directory_with_unversioned_files_and_update || || drop_missing_and_unknown_files || drop_missing_and_unknown_files || || drop_removes_attributes || drop_removes_attributes || || drop_with_actual_removal || drop_with_actual_removal || || dump_on_crash || dump_on_crash || || empty_environment || empty_environment || || empty_id_completion || empty_id_completion || || empty_string_as_a_path_name || empty_string_as_a_path_name || || escaped_selectors || escaped_selectors || || exchanging_work_via_netsync || exchanging_work_via_netsync || || exchanging_work_via_netsync,_with_notes || exchanging_work_via_netsync,_with_notes || || explicit_merge || explicit_merge || || explicit_merge_LEFT_RIGHT_ANC_BRANCH || explicit_merge_LEFT_RIGHT_ANC_BRANCH || || external_unit_test_of_the_line_merger || external_unit_test_of_the_line_merger || || fail_cleanly_on_unreadable_db || fail_cleanly_on_unreadable_db || || fail_cleanly_on_unreadable__MTN_options || fail_cleanly_on_unreadable__MTN_options || || fail_cleanly_when__MTN_format_corrupt || fail_cleanly_when__MTN_format_corrupt || || failed_checkout_is_a_no-op || failed_checkout_is_a_no-op || || filenames_in_diff_after_rename || filenames_in_diff_after_rename || || files_with_intermediate__MTN_path_elements || files_with_intermediate__MTN_path_elements || || files_with_spaces_at_the_end || files_with_spaces_at_the_end || || first_extent_normalization_pass || first_extent_normalization_pass || || generating_and_extracting_keys_and_certs || generating_and_extracting_keys_and_certs || || get_netsync_read_permitted || get_netsync_read_permitted || || heads || heads || || heads_with_discontinuous_branches || heads_with_discontinuous_branches || || i18n_commit_messages || i18n_commit_messages || || (imp)_deleting_directories || (imp)_deleting_directories || || (imp)_merge((patch_foo_a),_(delete_foo_)) || (imp)_merge((patch_foo_a),_(delete_foo_)) || || import || import || || importing_a_file || importing_a_file || || importing_cvs_branches || renamed by 8464d0026f283262d11181b161d1bf0b37849bff || || importing_cvs_deleted_file || renamed by 8464d0026f283262d11181b161d1bf0b37849bff || || importing_cvs_file_added_on_a_branch || renamed by 8464d0026f283262d11181b161d1bf0b37849bff || || importing_cvs_file_dead_on_head_and_branch || renamed by 8464d0026f283262d11181b161d1bf0b37849bff || || importing_cvs_file_with_one_version || renamed by 8464d0026f283262d11181b161d1bf0b37849bff || || importing_cvs_files || no renaming necessary || || importing_cvs_files_with_identical_logs || no renaming necessary || || importing_cvs_problematic_repo || renamed by 8464d0026f283262d11181b161d1bf0b37849bff || || importing_cvs_small_real_repo || renamed by 8464d0026f283262d11181b161d1bf0b37849bff || || importing_cvs_tricky_repo_with_tags || renamed by 8464d0026f283262d11181b161d1bf0b37849bff || || importing_cvs_with_vendor_imports_and_branches || no renaming necessary || || importing_files_with_non-english_names || importing_files_with_non-english_names || || (imp)_persistent_netsync_server_-_keys_2 || (imp)_persistent_netsync_server_-_keys_2 || || include()_includedir()_and_includedirpattern()_lua_functions || include()_includedir()_and_includedirpattern()_lua_functions || || inodeprints || inodeprints || || invalid_--root_settings || invalid_--root_settings || || key_management_without_a_database || key_management_without_a_database || || largish_file || largish_file || || list_branches || list_branches || || listing_changed_files || listing_changed_files || || listing_workspace_manifests || listing_workspace_manifests || || list_missing_files || list_missing_files || || locked_workspace || locked_workspace || || log_and_selectors_returning_multiple_rids || log_and_selectors_returning_multiple_rids || || log_--brief || log_--brief || || log_--diffs || log_--diffs || || log_dir || log_dir || || logging_a_file_within_revision_outside_a_workspace || logging_a_file_within_revision_outside_a_workspace || || log_hides_deleted_renamed_files || log_hides_deleted_renamed_files || || log_--last=N_FILENAME || log_--last=N_FILENAME || || log_--last=N_--next=N || log_--last=N_--next=N || || log_--no-files_and_--merges || log_--no-files_and_--merges || || log_quits_on_SIGPIPE || log_quits_on_SIGPIPE || || log_--to || log_--to || || log_with_restriction || log_with_restriction || || ls_epochs || ls_epochs || || ls_tags_with_ambiguous_tags || ls_tags_with_ambiguous_tags || || ls_unknown_in_subdir || ls_unknown_in_subdir || || ls_unknown_of_unknown_subdir || ls_unknown_of_unknown_subdir || || lua_function_existsonpath || lua_function_existsonpath || || magic__MTN_in_restrictions || magic__MTN_in_restrictions || || manifest_restrictions || manifest_restrictions || || merge((add_a),_(add_a,_drop_a,_add_a)) || merge((add_a),_(add_a,_drop_a,_add_a)) || || merge((),_(add_a,_drop_a,_add_a)) || merge((),_(add_a,_drop_a,_add_a)) || || merge((),_(add_a,_patch_a,_drop_a,_add_a)) || merge((),_(add_a,_patch_a,_drop_a,_add_a)) || || merge_a_project_into_a_subdirectory_of_an_unrelated_project || merge_a_project_into_a_subdirectory_of_an_unrelated_project || || merge_conflict_with_no_lca || merge_conflict_with_no_lca || || merge((drop_a),_(drop_a,_add_a)) || merge((drop_a),_(drop_a,_add_a)) || || merge((drop_a),_(rename_a_b,_patch_b)) || merge((drop_a),_(rename_a_b,_patch_b)) || || merge((),_(drop_a,_rename_b_a,_patch_a)) || merge((),_(drop_a,_rename_b_a,_patch_a)) || || merge_into_workspace_attr_corpse || merge_into_workspace_attr_corpse || || merge_into_workspace || merge_into_workspace || || merge_into_workspace_files_added || merge_into_workspace_files_added || || merge_into_workspace_no_changes || merge_into_workspace_no_changes || || merge_into_workspace_same_rev || merge_into_workspace_same_rev || || merge_manual_file || merge_manual_file || || merge_multiple_heads_1 || merge_multiple_heads_1 || || merge_normalization_edge_case || merge_normalization_edge_case || || merge((),_(patch_a,_drop_a,_add_a)) || merge((),_(patch_a,_drop_a,_add_a)) || || merge((patch_a),_(drop_a,_add_a)) || merge((patch_a),_(drop_a,_add_a)) || || merge((patch_foo_a),_(rename_foo__bar_)) || merge((patch_foo_a),_(rename_foo__bar_)) || || merge((rename_a_b),_(rename_a_c)) || merge((rename_a_b),_(rename_a_c)) || || merge_rename_file_and_rename_dir || merge_rename_file_and_rename_dir || || merge_rev_with_ancestor || merge_rev_with_ancestor || || merge_with_add,_rename_file,_and_rename_dir || merge_with_add,_rename_file,_and_rename_dir || || merging_(add_a,_rename_a_b)_with_(add_b) || merging_(add_a,_rename_a_b)_with_(add_b) || || merging_(add_a)_with_(add_a,_drop_a) || merging_(add_a)_with_(add_a,_drop_a) || || merging_adds || merging_adds || || merging_adds_in_unrelated_revisions || merging_adds_in_unrelated_revisions || || merging_an_add_edge || merging_an_add_edge || || merging_a_rename_twice || merging_a_rename_twice || || merging_data_in_unrelated_files || merging_data_in_unrelated_files || || merging_data_in_unrelated_revisions || merging_data_in_unrelated_revisions || || migrate_workspace || migrate_workspace || || (minor)_add_own_db || (minor)_add_own_db || || (minor)_drop_in_subdir || (minor)_drop_in_subdir || || (minor)_test_a_merge_3 || (minor)_test_a_merge_3 || || (minor)_test_a_merge_4 || (minor)_test_a_merge_4 || || (minor)_update_cleans_emptied_directories || (minor)_update_cleans_emptied_directories || || missing_empty_dir || missing_empty_dir || || mkdir || mkdir || || modification_of_an_empty_file || modification_of_an_empty_file || || mtn_add_dot || mtn_add_dot || || _MTN_case-folding_security_patch || _MTN_case-folding_security_patch || || mtn_execute_attr_respects_umask || mtn_execute_attr_respects_umask || || _MTN_files_handled_correctly_in_aborted_commit || _MTN_files_handled_correctly_in_aborted_commit || || mtn_read_FILE || mtn_read_FILE || || _MTN_revision_is_required || _MTN_revision_is_required || || mtn_up || mtn_up || || multiple_message_commit || multiple_message_commit || || multiple_version_committing || multiple_version_committing || || netsync_badhost_gives_nice_error || netsync_badhost_gives_nice_error || || netsync_client_absorbs_and_checks_epochs || netsync_client_absorbs_and_checks_epochs || || netsync_client_absorbs_server_key || netsync_client_absorbs_server_key || || netsync_default_server_pattern || netsync_default_server_pattern || || netsync_default_server_pattern_setting || netsync_default_server_pattern_setting || || netsync_epoch_refinement || netsync_epoch_refinement || || netsync_epochs_are_not_sent_upstream_by_pull || netsync_epochs_are_not_sent_upstream_by_pull || || netsync,--exclude,defaults || netsync,--exclude,defaults || || netsync_hook_errcodes || netsync_hook_errcodes || || netsync_is_not_interrupted_by_SIGPIPE || netsync_is_not_interrupted_by_SIGPIPE || || netsync_largish_file || netsync_largish_file || || netsync_over_pipes || netsync_over_pipes || || netsync_permissions || netsync_permissions || || netsync_permissions_wildcards || netsync_permissions_wildcards || || netsync_server_absorbs_and_checks_epochs || netsync_server_absorbs_and_checks_epochs || || netsync,--set-default || netsync,--set-default || || netsync_transfers_public_keys || netsync_transfers_public_keys || || netsync_verifies_server_keys || netsync_verifies_server_keys || || netsync_with_globs || netsync_with_globs || || no-change_deltas_disappear || no-change_deltas_disappear || || normalized_filenames || normalized_filenames || || (normal)_netsync_on_partially_unrelated_revisions || (normal)_netsync_on_partially_unrelated_revisions || || (normal)_netsync_revision_with_no_certs || (normal)_netsync_revision_with_no_certs || || (normal)_update_across_discontinuity || (normal)_update_across_discontinuity || || one-way_netsync_where_the_sink_has_more_epochs || one-way_netsync_where_the_sink_has_more_epochs || || persistence_of_passphrase || persistence_of_passphrase || || persistent_netsync_server_-_keys || persistent_netsync_server_-_keys || || persistent_netsync_server_-_revs_&_certs || persistent_netsync_server_-_revs_&_certs || || pid_file_and_log_handles_open_failures || pid_file_and_log_handles_open_failures || || pid_file_cleanup || pid_file_cleanup || || pivot_root || pivot_root || || pivot_root_to_new_dir || pivot_root_to_new_dir || || pluck_basics || pluck_basics || || pluck_does_not_clobber_workspace || pluck_does_not_clobber_workspace || || pluck_lifecycle || pluck_lifecycle || || pluck_restricted || pluck_restricted || || propagate_a_descendent || propagate_a_descendent || || propagate_an_ancestor || propagate_an_ancestor || || pull_a_netsync_branch_which_has_a_parent_from_another_branch || pull_a_netsync_branch_which_has_a_parent_from_another_branch || || quiet_turns_off_tickers_but_not_warnings || quiet_turns_off_tickers_but_not_warnings || || _--rcfile=directory || _--rcfile=directory || || _--rcfile=- || _--rcfile=- || || _--rcfile_requires_extant_file || _--rcfile_requires_extant_file || || read_and_convert_old_privkey_packet || read_and_convert_old_privkey_packet || || reallyquiet_turns_off_tickers_and_warnings || reallyquiet_turns_off_tickers_and_warnings || || refresh_inodeprints || refresh_inodeprints || || rename_cannot_overwrite_files || rename_cannot_overwrite_files || || rename_dir_to_non-sibling || rename_dir_to_non-sibling || || rename_files_into_a_directory || rename_files_into_a_directory || || rename_file_to_dir || rename_file_to_dir || || rename_in_new_workspace || rename_in_new_workspace || || rename_in_subdir || rename_in_subdir || || rename_moves_attributes || rename_moves_attributes || || rename_with_actual_file_rename || rename_with_actual_file_rename || || renaming_a_deleted_file || renaming_a_deleted_file || || renaming_a_directory_and_then_adding_a_new_with_the_old_name || renaming_a_directory_and_then_adding_a_new_with_the_old_name || || renaming_a_directory || renaming_a_directory || || renaming_a_file || renaming_a_file || || renaming_and_editing_a_file || renaming_and_editing_a_file || || renaming_a_patched_file || renaming_a_patched_file || || repeatedly_exchanging_work_via_netsync || repeatedly_exchanging_work_via_netsync || || replace_dir_with_file || replace_dir_with_file || || replace_file_with_dir || replace_file_with_dir || || restricted_commands_are_consistent || restricted_commands_are_consistent || || restricted_commit_with_inodeprints || restricted_commit_with_inodeprints || || restriction_excludes_parent_dir || restriction_excludes_parent_dir || || restrictions_when_pwd_is_mixed_case || restrictions_when_pwd_is_mixed_case || || restrictions_with_deletes || restrictions_with_deletes || || restrictions_with_renames_and_adds || restrictions_with_renames_and_adds || || revert_directories || revert_directories || || revert_file_blocked_by_unversioned_directory || revert_file_blocked_by_unversioned_directory || || revert_file_in_new_project || revert_file_in_new_project || || revert_file_to_base_revision || revert_file_to_base_revision || || revert_ignored_files || revert_ignored_files || || reverting_a_pivot_root || reverting_a_pivot_root || || revert_in_subdirs || revert_in_subdirs || || revert_--missing_in_subdir || revert_--missing_in_subdir || || revert_moving_a_file_to_a_renamed_directory || revert_moving_a_file_to_a_renamed_directory || || revert_renames || revert_renames || || revert_the_middle_of_a_sequence || revert_the_middle_of_a_sequence || || revert_unchanged_file_preserves_mtime || revert_unchanged_file_preserves_mtime || || revert_works_with_restrictions || revert_works_with_restrictions || || rosterify_--drop-attr || rosterify_--drop-attr || || rosterify_handles_.mt-ignore_files || rosterify_handles_.mt-ignore_files || || rosterify_migrates_file_dir_attrs || rosterify_migrates_file_dir_attrs || || rosterify_on_a_db_with_1_rev || rosterify_on_a_db_with_1_rev || || rosterify_on_a_db_with_an_empty_manifest || rosterify_on_a_db_with_an_empty_manifest || || scanning_trees || scanning_trees || || schema_migration_bad_schema || schema_migration_bad_schema || || schema_migration || schema_migration || || schema_migration_error_recovery || schema_migration_error_recovery || || schema_migration_with_rosterify || schema_migration_with_rosterify || || selecting_arbitrary_certs || selecting_arbitrary_certs || || serve_pull_with_--exclude || serve_pull_with_--exclude || || setup_checkout_touch_new__MTN_options_only || setup_checkout_touch_new__MTN_options_only || || setup_creates__MTN_log || setup_creates__MTN_log || || setup_in_subdirectory || setup_in_subdirectory || || setup_on_existing_path || setup_on_existing_path || || short_options_work_correctly || short_options_work_correctly || || show_conflicts || show_conflicts || || single_character_filename_support || single_character_filename_support || || single_manifest_netsync || single_manifest_netsync || || spawn_redirected_hook_helper || spawn_redirected_hook_helper || || sql_function_gunzip_(which_replaced_unpack) || sql_function_gunzip_(which_replaced_unpack) || || status || status || || status_with_missing_files || status_with_missing_files || || sticky_branches || sticky_branches || || subdirectory_restrictions || subdirectory_restrictions || || sync_server_--exclude_foo || sync_server_--exclude_foo || || tags_and_tagging_of_revisions || tags_and_tagging_of_revisions || || test_a_merge_2 || test_a_merge_2 || || test_a_merge_5 || test_a_merge_5 || || test_a_merge_6 || test_a_merge_6 || || test_a_merge_7 || test_a_merge_7 || || test_a_merge_8 || test_a_merge_8 || || test_a_merge || test_a_merge || || test_annotate_command || test_annotate_command || || test_some_hook_helper_functions || test_some_hook_helper_functions || || test_the_approve_command || test_the_approve_command || || test_the_help_command || test_the_help_command || || things_in_.mtn-ignore_get_ignored || things_in_.mtn-ignore_get_ignored || || (todo)_design_approval_semantics || (todo)_design_approval_semantics || || (todo)_undo_update_command || (todo)_undo_update_command || || (todo)_vcheck || (todo)_vcheck || || (todo)_write_monotone-agent || (todo)_write_monotone-agent || || trust_hooks_and_trusted_command || trust_hooks_and_trusted_command || || two_parent_workspace_add_drop_rename || two_parent_workspace_add_drop_rename || || two_parent_workspace_annotate || two_parent_workspace_annotate || || two_parent_workspace_attrs || two_parent_workspace_attrs || || two_parent_workspace_commands_that_fail || two_parent_workspace_commands_that_fail || || two_parent_workspace_inodeprint_from_birth || two_parent_workspace_inodeprint_from_birth || || two_parent_workspace_inodeprints || two_parent_workspace_inodeprints || || two_parent_workspace_list || two_parent_workspace_list || || two_parent_workspace_pivot_root || two_parent_workspace_pivot_root || || two_parent_workspace_pluck || two_parent_workspace_pluck || || unnormalized_paths_in_database || unnormalized_paths_in_database || || update_1 || update_1 || || update_-b_foo_updates__MTN_options_correctly || update_-b_foo_updates__MTN_options_correctly || || update_-b_switches_branches_even_when_noop || update_-b_switches_branches_even_when_noop || || update_does_not_clobber_workspace || update_does_not_clobber_workspace || || update_does_not_stomp_non-monotone_files || update_does_not_stomp_non-monotone_files || || update_no-ops_when_no_parent_revision || update_no-ops_when_no_parent_revision || || update_to_non-existent_rev || update_to_non-existent_rev || || update_to_off-branch_rev || update_to_off-branch_rev || || update_updates_inodeprints || update_updates_inodeprints || || update_with_blocked_rename || update_with_blocked_rename || || update_with_multiple_candidates || update_with_multiple_candidates || || update_with_pending_add || update_with_pending_add || || update_with_pending_drop || update_with_pending_drop || || update_with_pending_rename || update_with_pending_rename || || updating_from_a_merge_which_adds_a_file || updating_from_a_merge_which_adds_a_file || || updating_through_a_pivot_root || updating_through_a_pivot_root || || updating_to_a_given_revision || updating_to_a_given_revision || || usage_output_streams || usage_output_streams || || use_inodeprints_hook || use_inodeprints_hook || || use_restrictions_with_--exclude_and_inodeprints || use_restrictions_with_--exclude_and_inodeprints || || use_restrictions_with_--exclude || use_restrictions_with_--exclude || || vars || vars || || verification_of_command_line_options || verification_of_command_line_options || || warn_on_bad_restriction || warn_on_bad_restriction || || workspace_migration || workspace_migration || || ws_ops_with_wrong_node_type || ws_ops_with_wrong_node_type ||