mirror of
https://github.com/pyenv/pyenv.git
synced 2025-11-16 23:33:45 -05:00
add tests for help and rbenv --version
This commit is contained in:
115
test/help.bats
Normal file
115
test/help.bats
Normal file
@@ -0,0 +1,115 @@
|
||||
#!/usr/bin/env bats
|
||||
|
||||
load test_helper
|
||||
|
||||
@test "without args shows summary of common commands" {
|
||||
run rbenv-help
|
||||
assert_success
|
||||
assert_line "Usage: rbenv <command> [<args>]"
|
||||
assert_line "Some useful rbenv commands are:"
|
||||
}
|
||||
|
||||
@test "invalid command" {
|
||||
run rbenv-help hello
|
||||
assert_failure "rbenv: no such command \`hello'"
|
||||
}
|
||||
|
||||
@test "shows help for a specific command" {
|
||||
mkdir -p "${RBENV_TEST_DIR}/bin"
|
||||
cat > "${RBENV_TEST_DIR}/bin/rbenv-hello" <<SH
|
||||
#!shebang
|
||||
# Usage: rbenv hello <world>
|
||||
# Summary: Says "hello" to you, from rbenv
|
||||
# This command is useful for saying hello.
|
||||
echo hello
|
||||
SH
|
||||
|
||||
run rbenv-help hello
|
||||
assert_success
|
||||
assert_output <<SH
|
||||
Usage: rbenv hello <world>
|
||||
|
||||
This command is useful for saying hello.
|
||||
SH
|
||||
}
|
||||
|
||||
@test "replaces missing extended help with summary text" {
|
||||
mkdir -p "${RBENV_TEST_DIR}/bin"
|
||||
cat > "${RBENV_TEST_DIR}/bin/rbenv-hello" <<SH
|
||||
#!shebang
|
||||
# Usage: rbenv hello <world>
|
||||
# Summary: Says "hello" to you, from rbenv
|
||||
echo hello
|
||||
SH
|
||||
|
||||
run rbenv-help hello
|
||||
assert_success
|
||||
assert_output <<SH
|
||||
Usage: rbenv hello <world>
|
||||
|
||||
Says "hello" to you, from rbenv
|
||||
SH
|
||||
}
|
||||
|
||||
@test "extracts only usage" {
|
||||
mkdir -p "${RBENV_TEST_DIR}/bin"
|
||||
cat > "${RBENV_TEST_DIR}/bin/rbenv-hello" <<SH
|
||||
#!shebang
|
||||
# Usage: rbenv hello <world>
|
||||
# Summary: Says "hello" to you, from rbenv
|
||||
# This extended help won't be shown.
|
||||
echo hello
|
||||
SH
|
||||
|
||||
run rbenv-help --usage hello
|
||||
assert_success "Usage: rbenv hello <world>"
|
||||
}
|
||||
|
||||
@test "multiline usage section" {
|
||||
mkdir -p "${RBENV_TEST_DIR}/bin"
|
||||
cat > "${RBENV_TEST_DIR}/bin/rbenv-hello" <<SH
|
||||
#!shebang
|
||||
# Usage: rbenv hello <world>
|
||||
# rbenv hi [everybody]
|
||||
# rbenv hola --translate
|
||||
# Summary: Says "hello" to you, from rbenv
|
||||
# Help text.
|
||||
echo hello
|
||||
SH
|
||||
|
||||
run rbenv-help hello
|
||||
assert_success
|
||||
assert_output <<SH
|
||||
Usage: rbenv hello <world>
|
||||
rbenv hi [everybody]
|
||||
rbenv hola --translate
|
||||
|
||||
Help text.
|
||||
SH
|
||||
}
|
||||
|
||||
@test "multiline extended help section" {
|
||||
mkdir -p "${RBENV_TEST_DIR}/bin"
|
||||
cat > "${RBENV_TEST_DIR}/bin/rbenv-hello" <<SH
|
||||
#!shebang
|
||||
# Usage: rbenv hello <world>
|
||||
# Summary: Says "hello" to you, from rbenv
|
||||
# This is extended help text.
|
||||
# It can contain multiple lines.
|
||||
#
|
||||
# And paragraphs.
|
||||
|
||||
echo hello
|
||||
SH
|
||||
|
||||
run rbenv-help hello
|
||||
assert_success
|
||||
assert_output <<SH
|
||||
Usage: rbenv hello <world>
|
||||
|
||||
This is extended help text.
|
||||
It can contain multiple lines.
|
||||
|
||||
And paragraphs.
|
||||
SH
|
||||
}
|
||||
Reference in New Issue
Block a user