Skip to content

Commit

Permalink
lib/helpers: remove log message from _command_exists() et al
Browse files Browse the repository at this point in the history
- and move them to `lib/utilities`
  • Loading branch information
gaelicWizard committed Feb 18, 2022
1 parent cf4c39a commit 4eb297e
Show file tree
Hide file tree
Showing 4 changed files with 101 additions and 101 deletions.
61 changes: 0 additions & 61 deletions lib/helpers.bash
Original file line number Diff line number Diff line change
Expand Up @@ -19,51 +19,6 @@ case "$OSTYPE" in
'darwin'*) BASH_IT_SED_I_PARAMETERS=('-i' '') ;;
esac

function _command_exists() {
_about 'checks for existence of a command'
_param '1: command to check'
_param '2: (optional) log message to include when command not found'
_example '$ _command_exists ls && echo exists'
_group 'lib'
local msg="${2:-Command '$1' does not exist}"
if type -t "$1" > /dev/null; then
return 0
else
_log_debug "$msg"
return 1
fi
}

function _binary_exists() {
_about 'checks for existence of a binary'
_param '1: binary to check'
_param '2: (optional) log message to include when binary not found'
_example '$ _binary_exists ls && echo exists'
_group 'lib'
local msg="${2:-Binary '$1' does not exist}"
if type -P "$1" > /dev/null; then
return 0
else
_log_debug "$msg"
return 1
fi
}

function _completion_exists() {
_about 'checks for existence of a completion'
_param '1: command to check'
_param '2: (optional) log message to include when completion is found'
_example '$ _completion_exists gh && echo exists'
_group 'lib'
local msg="${2:-Completion for '$1' already exists}"
if complete -p "$1" &> /dev/null; then
_log_debug "$msg"
return 0
else
return 1
fi
}

function _bash_it_homebrew_check() {
if _binary_exists 'brew'; then
# Homebrew is installed
Expand Down Expand Up @@ -200,22 +155,6 @@ function bash-it() {
fi
}

function _is_function() {
_about 'sets $? to true if parameter is the name of a function'
_param '1: name of alleged function'
_param '2: (optional) log message to include when function not found'
_group 'lib'
_example '$ _is_function ls && echo exists'
_group 'lib'
local msg="${2:-Function '$1' does not exist}"
if LC_ALL=C type -t "$1" | _bash-it-egrep -q 'function'; then
return 0
else
_log_debug "$msg"
return 1
fi
}

function _bash-it-aliases() {
_about 'summarizes available bash_it aliases'
_group 'lib'
Expand Down
36 changes: 36 additions & 0 deletions lib/utilities.bash
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,42 @@ function _bash-it-egrep() {
"${BASH_IT_GREP:-/usr/bin/grep}" -E "$@"
}

function _command_exists() {
: _about 'checks for existence of a command'
: _param '1: command to check'
: _example '$ _command_exists ls && echo exists'
: _group 'lib'

type -t "${1?}" > /dev/null
}

function _binary_exists() {
: _about 'checks for existence of a binary'
: _param '1: binary to check'
: _example '$ _binary_exists ls && echo exists'
: _group 'lib'

type -P "${1?}" > /dev/null
}

function _completion_exists() {
: _about 'checks for existence of a completion'
: _param '1: command to check'
: _example '$ _completion_exists gh && echo exists'
: _group 'lib'

complete -p "${1?}" &> /dev/null
}

function _is_function() {
: _about 'sets $? to true if parameter is the name of a function'
: _param '1: name of alleged function'
: _example '$ _is_function ls && echo exists'
: _group 'lib'

declare -F "${1?}" > /dev/null
}

###########################################################################
# Component-specific functions (component is either an alias, a plugin, or a
# completion).
Expand Down
40 changes: 0 additions & 40 deletions test/lib/helpers.bats
Original file line number Diff line number Diff line change
Expand Up @@ -26,46 +26,6 @@ function local_setup {
assert_file_exist "$BASH_IT/profiles/test-bad-type.bash_it"
}

@test "helpers: _command_exists function exists" {
run type -a _command_exists &> /dev/null
assert_success
}

@test "helpers: _command_exists function positive test ls" {
run _command_exists ls
assert_success
}

@test "helpers: _command_exists function positive test bash-it" {
run _command_exists bash-it
assert_success
}

@test "helpers: _command_exists function negative test" {
run _command_exists __addfkds_dfdsjdf
assert_failure
}

@test "helpers: _binary_exists function exists" {
run type -a _binary_exists &> /dev/null
assert_success
}

@test "helpers: _binary_exists function positive test ls" {
run _binary_exists ls
assert_success
}

@test "helpers: _binary_exists function negative test function" {
run _binary_exists _binary_exists
assert_failure
}

@test "helpers: _binary_exists function negative test" {
run _binary_exists __addfkds_dfdsjdf
assert_failure
}

@test "helpers: bash-it help aliases ag" {
run bash-it help aliases "ag"
assert_line -n 0 "ag='ag --smart-case --pager=\"less -MIRFX'"
Expand Down
65 changes: 65 additions & 0 deletions test/lib/utilities.bats
100644 → 100755
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,71 @@ function local_setup {
setup_test_fixture
}

@test "utilities: _is_function: _command_exists" {
run _is_function _command_exists
assert_success
}

@test "utilities: _command_exists function positive test ls" {
run _command_exists ls
assert_success
}

@test "utilities: _command_exists function positive test bash-it" {
run _command_exists bash-it
assert_success
}

@test "utilities: _command_exists function negative test" {
run _command_exists "__addfkds_dfdsjdf_${RANDOM:-}"
assert_failure
}

@test "utilities: _is_function: _binary_exists" {
run _is_function _binary_exists
assert_success
}

@test "utilities: _binary_exists function positive test ls" {
run _binary_exists ls
assert_success
}

@test "utilities: _binary_exists function negative test function" {
run _binary_exists _binary_exists
assert_failure
}

@test "utilities: _binary_exists function negative test" {
run _binary_exists "__addfkds_dfdsjdf_${RANDOM:-}"
assert_failure
}

@test "utilities: _is_function: _completion_exists" {
run _is_function _completion_exists
assert_success
}

@test "utilities: _is_function new function" {
local teh_new_func="__addfkds_dfdsjdf_${RANDOM:-}"
run _is_function "${teh_new_func?}"
assert_failure

cite "${teh_new_func?}"
run _is_function "${teh_new_func?}"
assert_success
}

@test "utilities: _command_exists new function" {
local teh_new_func="__addfkds_dfdsjdf_${RANDOM:-}"
run _command_exists "${teh_new_func?}"
assert_failure

cite "${teh_new_func?}"
run _command_exists "${teh_new_func?}"
assert_success
}

@test "_bash-it-component-item-is-enabled() - for a disabled item" {
run _bash-it-component-item-is-enabled aliases svn
assert_failure
Expand Down

0 comments on commit 4eb297e

Please sign in to comment.