summaryrefslogtreecommitdiffstats
path: root/src/features/mod.rs
diff options
context:
space:
mode:
authorDan Davison <dandavison7@gmail.com>2020-06-20 14:26:23 -0400
committerDan Davison <dandavison7@gmail.com>2020-06-20 16:49:27 -0400
commit9c7c855d7ad72bd2475db0c4e1ff7320898ec011 (patch)
tree7b05a4d55b79dff77ad395c10f909d5cae5500a1 /src/features/mod.rs
parent3aaa9606e6a64e8dd16fb46520da01a8186367da (diff)
Reimplement --navigate as a feature
Diffstat (limited to 'src/features/mod.rs')
-rw-r--r--src/features/mod.rs45
1 files changed, 5 insertions, 40 deletions
diff --git a/src/features/mod.rs b/src/features/mod.rs
index ac230d45..2b025a51 100644
--- a/src/features/mod.rs
+++ b/src/features/mod.rs
@@ -39,6 +39,10 @@ pub fn make_builtin_features() -> HashMap<String, BuiltinFeature> {
"diff-so-fancy".to_string(),
diff_so_fancy::make_feature().into_iter().collect(),
),
+ (
+ "navigate".to_string(),
+ navigate::make_feature().into_iter().collect(),
+ ),
]
.into_iter()
.collect()
@@ -68,6 +72,7 @@ macro_rules! builtin_feature {
pub mod diff_highlight;
pub mod diff_so_fancy;
+pub mod navigate;
impl From<bool> for OptionValue {
fn from(value: bool) -> Self {
@@ -335,46 +340,6 @@ mod tests {
}
#[test]
- fn test_file_modified_label() {
- let git_config_contents = b"
-[delta]
- navigate = true
- file-modified-label = \"modified: \"
-";
- let git_config_path = "delta__test_file_modified_label.gitconfig";
-
- assert_eq!(make_config(&[], None, None).file_modified_label, "");
- assert_eq!(
- make_config(&["--navigate"], None, None).file_modified_label,
- "Δ"
- );
- assert_eq!(
- make_config(&[], Some(git_config_contents), Some(git_config_path)).file_modified_label,
- "modified: "
- );
-
- let git_config_contents = b"
-[delta \"my-navigate-feature\"]
- navigate = true
- file-modified-label = \"modified: \"
-";
-
- assert_eq!(
- make_config(&[], Some(git_config_contents), Some(git_config_path)).file_modified_label,
- ""
- );
- assert_eq!(
- make_config(
- &["--features", "my-navigate-feature"],
- Some(git_config_contents),
- Some(git_config_path)
- )
- .file_modified_label,
- "modified: "
- );
- }
-
- #[test]
fn test_diff_highlight_defaults() {
let config = make_config(&["--features", "diff-highlight"], None, None);