From e0554cb512e0cf49b1824a56cf811ccf6bee7a3d Mon Sep 17 00:00:00 2001 From: Nils Winkler Date: Fri, 15 Sep 2017 08:10:16 +0200 Subject: [PATCH] Test cases and fix for bash-it help aliases foo --- lib/helpers.bash | 2 +- test/lib/helpers.bats | 25 ++++++++++++++++++++++--- 2 files changed, 23 insertions(+), 4 deletions(-) diff --git a/lib/helpers.bash b/lib/helpers.bash index 75894ee0..8c6c7380 100644 --- a/lib/helpers.bash +++ b/lib/helpers.bash @@ -471,7 +471,7 @@ _help-aliases() _help-list-aliases () { - typeset file=$(basename $1 | sed -e 's/\(.*\)\..*\.bash/\1/g') + typeset file=$(basename $1 | sed -e 's/[0-9]*[-]*\(.*\)\..*\.bash/\1/g') printf '\n\n%s:\n' "${file%%.*}" # metafor() strips trailing quotes, restore them with sed.. cat $1 | metafor alias | sed "s/$/'/" diff --git a/test/lib/helpers.bats b/test/lib/helpers.bats index 299a4ebb..076ac59e 100644 --- a/test/lib/helpers.bats +++ b/test/lib/helpers.bats @@ -40,17 +40,36 @@ function local_setup { assert_line "0" "" } +@test "helpers: bash-it help list aliases without any aliases enabled" { + run _help-list-aliases "$BASH_IT/aliases/available/ag.aliases.bash" + assert_line "0" "ag:" +} + +@test "helpers: bash-it help list aliases with ag aliases enabled" { + ln -s $BASH_IT/aliases/available/ag.aliases.bash $BASH_IT/aliases/enabled/150---ag.aliases.bash + assert [ -L "$BASH_IT/aliases/enabled/150---ag.aliases.bash" ] + + run _help-list-aliases "$BASH_IT/aliases/enabled/150---ag.aliases.bash" + assert_line "0" "ag:" +} + +@test "helpers: bash-it help list aliases with ag aliases enabled in global directory" { + ln -s $BASH_IT/aliases/available/ag.aliases.bash $BASH_IT/enabled/150---ag.aliases.bash + assert [ -L "$BASH_IT/enabled/150---ag.aliases.bash" ] + + run _help-list-aliases "$BASH_IT/enabled/150---ag.aliases.bash" + assert_line "0" "ag:" +} + @test "helpers: bash-it help aliases one alias enabled in the old directory" { ln -s $BASH_IT/aliases/available/ag.aliases.bash $BASH_IT/aliases/enabled/150---ag.aliases.bash assert [ -L "$BASH_IT/aliases/enabled/150---ag.aliases.bash" ] run bash-it help aliases - - echo "${lines[@]}" assert_line "0" "ag:" } -@test "helpers: bash-it help aliases one alias enabled" { +@test "helpers: bash-it help aliases one alias enabled in global directory" { run bash-it enable alias "ag" assert_line "0" 'ag enabled with priority 150.' assert [ -L "$BASH_IT/enabled/150---ag.aliases.bash" ]