diff options
author | Jesse Luehrs <doy@tozt.net> | 2023-03-26 01:07:59 -0400 |
---|---|---|
committer | Jesse Luehrs <doy@tozt.net> | 2023-03-26 01:07:59 -0400 |
commit | 3abb883aafeb06e358a7b4cbc03d54b83e1fd445 (patch) | |
tree | b305166ff3c19da837e92cf92058bf9f4c72000e /src/prompt.rs | |
parent | 2c4bc6762db661011f4d13a858dae8f8dd72fcc2 (diff) | |
download | fancy-prompt-3abb883aafeb06e358a7b4cbc03d54b83e1fd445.tar.gz fancy-prompt-3abb883aafeb06e358a7b4cbc03d54b83e1fd445.zip |
handle alternate default branches
Diffstat (limited to 'src/prompt.rs')
-rw-r--r-- | src/prompt.rs | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/src/prompt.rs b/src/prompt.rs index 6c95c0e..f319a96 100644 --- a/src/prompt.rs +++ b/src/prompt.rs @@ -299,7 +299,7 @@ fn format_vcs(vcs_info: Option<&dyn vcs::VcsInfo>) -> Option<String> { let branch = vcs_info .branch() .map(|branch| { - if branch == "master" { + if Some(branch.clone()) == vcs_info.default_branch() { String::new() } else { branch @@ -456,6 +456,7 @@ mod test { active_operation: vcs::ActiveOperation, branch: Option<String>, remote_branch_diff: Option<(usize, usize)>, + default_branch: Option<String>, } impl vcs::VcsInfo for TestVcs { @@ -483,6 +484,9 @@ mod test { fn remote_branch_diff(&self) -> Option<(usize, usize)> { self.remote_branch_diff } + fn default_branch(&self) -> Option<String> { + self.default_branch + } } #[test] @@ -605,6 +609,7 @@ mod test { active_operation: vcs::ActiveOperation::None, branch: Some(String::from("master")), remote_branch_diff: Some((0, 0)), + default_branch: Some(String::from("master")), }; assert_eq!(format_vcs(Some(&test_vcs)), Some(String::from("g"))); @@ -620,6 +625,7 @@ mod test { active_operation: vcs::ActiveOperation::None, branch: Some(String::from("dev")), remote_branch_diff: Some((0, 0)), + default_branch: Some(String::from("master")), }; assert_eq!( @@ -638,6 +644,7 @@ mod test { active_operation: vcs::ActiveOperation::None, branch: Some(String::from("master")), remote_branch_diff: None, + default_branch: Some(String::from("master")), }; assert_eq!( @@ -656,6 +663,7 @@ mod test { active_operation: vcs::ActiveOperation::None, branch: Some(String::from("dev")), remote_branch_diff: None, + default_branch: Some(String::from("master")), }; assert_eq!( @@ -674,6 +682,7 @@ mod test { active_operation: vcs::ActiveOperation::None, branch: Some(String::from("master")), remote_branch_diff: None, + default_branch: Some(String::from("master")), }; assert_eq!( @@ -692,6 +701,7 @@ mod test { active_operation: vcs::ActiveOperation::None, branch: Some(String::from("dev")), remote_branch_diff: None, + default_branch: Some(String::from("master")), }; assert_eq!( @@ -710,6 +720,7 @@ mod test { active_operation: vcs::ActiveOperation::None, branch: None, remote_branch_diff: None, + default_branch: Some(String::from("master")), }; assert_eq!(format_vcs(Some(&test_vcs)), Some(String::from("g!"))); @@ -725,6 +736,7 @@ mod test { active_operation: vcs::ActiveOperation::None, branch: Some(String::from("master")), remote_branch_diff: Some((2, 3)), + default_branch: Some(String::from("master")), }; assert_eq!( |