jj/cli/tests
Danny Hooper 89f5d16dc0 cli jj fix: add ability to configure multiple tools for different filesets
The high level changes include:
 - Reworking `fix_file_ids()` to loop over multiple candidate tools per file,
   piping file content between them. Only the final file content is written to
   the store, and content is no longer read for changed files that don't match
   any of the configured patterns.
 - New struct `ToolsConfig` to represent the parsed/validated configuration.
 - New function `get_tools_config()` to create a `ToolsConfig` from a `Config`.
 - New tests; the only old behavior that has changed is that we don't require
   `fix.tool-command` if `fix.tools` defines one or more tools. The general
   approach to validating the config is to fail early if anything is weird.

Co-Authored-By: Josh Steadmon <steadmon@google.com>
2024-07-25 13:40:18 -05:00
..
common rebase: rewrite rebase_revision to use transform_descendants 2024-04-22 21:05:49 +08:00
cli-reference@.md.snap cli jj fix: add ability to configure multiple tools for different filesets 2024-07-25 13:40:18 -05:00
runner.rs git: add git.private-commits setting for preventing commits from being pushed 2024-07-23 08:45:51 -07:00
test_abandon_command.rs Enable the new graph nodes by default. 2024-07-16 12:54:24 +02:00
test_acls.rs diff: fix typo in Git diff "index old..new" header 2024-07-15 14:45:59 +09:00
test_advance_branches.rs Enable the new graph nodes by default. 2024-07-16 12:54:24 +02:00
test_alias.rs Enable the new graph nodes by default. 2024-07-16 12:54:24 +02:00
test_backout_command.rs Enable the new graph nodes by default. 2024-07-16 12:54:24 +02:00
test_branch_command.rs str_util: add regex pattern 2024-07-22 12:00:52 +09:00
test_builtin_aliases.rs Enable the new graph nodes by default. 2024-07-16 12:54:24 +02:00
test_checkout.rs Enable the new graph nodes by default. 2024-07-16 12:54:24 +02:00
test_commit_command.rs cli: port description template to templater 2024-07-25 22:39:00 +09:00
test_commit_template.rs str_util: add regex pattern 2024-07-22 12:00:52 +09:00
test_concurrent_operations.rs Enable the new graph nodes by default. 2024-07-16 12:54:24 +02:00
test_config_command.rs windows: avoid UNC paths in run_ui_editor 2024-07-04 11:30:20 +10:00
test_copy_detection.rs copy-tracking: add a command line driver with a simple test 2024-07-03 20:26:30 -04:00
test_debug_command.rs tests: avoid deprecated jj init --git/--git-repo 2024-05-17 13:55:20 -07:00
test_describe_command.rs cli: port description template to templater 2024-07-25 22:39:00 +09:00
test_diff_command.rs cli: enable fileset by default 2024-07-24 10:49:46 +09:00
test_diffedit_command.rs diff: fix typo in Git diff "index old..new" header 2024-07-15 14:45:59 +09:00
test_duplicate_command.rs Enable the new graph nodes by default. 2024-07-16 12:54:24 +02:00
test_edit_command.rs Enable the new graph nodes by default. 2024-07-16 12:54:24 +02:00
test_file_chmod_command.rs cli_util: add missing word in conflict resolution instructions 2024-07-17 08:10:25 +02:00
test_file_print_command.rs cli: rename jj file print (formerly jj cat) to jj file show 2024-06-26 17:11:16 -07:00
test_fix_command.rs cli jj fix: add ability to configure multiple tools for different filesets 2024-07-25 13:40:18 -05:00
test_generate_md_cli_help.rs test_generate_cli_reference: fixup to 52c415e, remove mysterious comment 2024-06-15 20:30:40 -07:00
test_git_clone.rs cli: error out on "init --at-op/--ignore-working-copy" or "clone --at-op" 2024-07-24 18:06:09 +09:00
test_git_colocated.rs git: on abandoning unreachable commits, don't count HEAD ref 2024-07-24 21:22:26 +09:00
test_git_fetch.rs Enable the new graph nodes by default. 2024-07-16 12:54:24 +02:00
test_git_import_export.rs commit_builder: reset author timestamp on discardable commits 2024-06-29 08:35:53 -05:00
test_git_init.rs cli: error out on "init --at-op/--ignore-working-copy" or "clone --at-op" 2024-07-24 18:06:09 +09:00
test_git_private_commits.rs git: add --allow-private option to push command 2024-07-23 08:45:51 -07:00
test_git_push.rs Enable the new graph nodes by default. 2024-07-16 12:54:24 +02:00
test_git_remotes.rs Enable the new graph nodes by default. 2024-07-16 12:54:24 +02:00
test_git_submodule.rs tests: avoid deprecated jj init --git/--git-repo 2024-05-17 13:55:20 -07:00
test_gitignores.rs diff: fix typo in Git diff "index old..new" header 2024-07-15 14:45:59 +09:00
test_global_opts.rs cli: enable fileset by default 2024-07-24 10:49:46 +09:00
test_immutable_commits.rs Enable the new graph nodes by default. 2024-07-16 12:54:24 +02:00
test_init_command.rs cli: error out on "init --at-op/--ignore-working-copy" or "clone --at-op" 2024-07-24 18:06:09 +09:00
test_interdiff_command.rs diff: fix typo in Git diff "index old..new" header 2024-07-15 14:45:59 +09:00
test_log_command.rs cli: enable fileset by default 2024-07-24 10:49:46 +09:00
test_move_command.rs Enable the new graph nodes by default. 2024-07-16 12:54:24 +02:00
test_new_command.rs Enable the new graph nodes by default. 2024-07-16 12:54:24 +02:00
test_next_prev_commands.rs Enable the new graph nodes by default. 2024-07-16 12:54:24 +02:00
test_obslog_command.rs Enable the new graph nodes by default. 2024-07-16 12:54:24 +02:00
test_operations.rs cli: exit with CLI error status on "op abandon --at-op" 2024-07-24 18:06:09 +09:00
test_parallelize_command.rs Enable the new graph nodes by default. 2024-07-16 12:54:24 +02:00
test_rebase_command.rs Enable the new graph nodes by default. 2024-07-16 12:54:24 +02:00
test_repo_change_report.rs cli_util: add missing word in conflict resolution instructions 2024-07-17 08:10:25 +02:00
test_resolve_command.rs cli_util: add missing word in conflict resolution instructions 2024-07-17 08:10:25 +02:00
test_restore_command.rs cli_util: add missing word in conflict resolution instructions 2024-07-17 08:10:25 +02:00
test_revset_output.rs str_util: add regex pattern 2024-07-22 12:00:52 +09:00
test_root.rs compile integration tests as a single binary 2024-02-06 18:19:41 -08:00
test_shell_completion.rs compile integration tests as a single binary 2024-02-06 18:19:41 -08:00
test_show_command.rs tests: avoid deprecated jj init --git/--git-repo 2024-05-17 13:55:20 -07:00
test_sparse_command.rs windows: avoid UNC paths in run_ui_editor 2024-07-04 11:30:20 +10:00
test_split_command.rs cli: port description template to templater 2024-07-25 22:39:00 +09:00
test_squash_command.rs cli_util: add missing word in conflict resolution instructions 2024-07-17 08:10:25 +02:00
test_status_command.rs cli_util: add missing word in conflict resolution instructions 2024-07-17 08:10:25 +02:00
test_tag_command.rs templater: add helper method that unwraps Option<T> property 2024-05-09 08:51:34 +09:00
test_templater.rs Enable the new graph nodes by default. 2024-07-16 12:54:24 +02:00
test_undo.rs Enable the new graph nodes by default. 2024-07-16 12:54:24 +02:00
test_unsquash_command.rs Enable the new graph nodes by default. 2024-07-16 12:54:24 +02:00
test_untrack_command.rs cli: create jj file list and deprecate jj files 2024-06-17 14:13:36 -04:00
test_util_command.rs cli jj fix: add ability to configure multiple tools for different filesets 2024-07-25 13:40:18 -05:00
test_working_copy.rs cli: create jj file list and deprecate jj files 2024-06-17 14:13:36 -04:00
test_workspaces.rs conflicts: use non-legacy MergedTreeId for root commit 2024-07-24 14:33:05 +02:00