feat: add json format output to run:list

Also add some unit tests to the command.

Closes #5171
This commit is contained in:
Jose Diaz-Gonzalez
2022-08-22 22:25:46 -04:00
parent 6348126f0c
commit 69738abec2
6 changed files with 137 additions and 17 deletions

View File

@@ -12,7 +12,7 @@ teardown() {
global_teardown
}
@test "(core) run" {
@test "(run) run" {
deploy_app
run /bin/bash -c "dokku run $TEST_APP echo $TEST_APP"
@@ -26,7 +26,7 @@ teardown() {
assert_failure
}
@test "(core) run:detached" {
@test "(run) run:detached" {
deploy_app
RANDOM_RUN_CID="$(dokku --label=com.dokku.test-label=value run:detached $TEST_APP sleep 300)"
@@ -52,7 +52,7 @@ teardown() {
sleep 5 # wait for dokku cleanup to happen in the background
}
@test "(core) run (with tty)" {
@test "(run) run (with tty)" {
deploy_app
run /bin/bash -c "dokku run $TEST_APP ls /app/null"
echo "output: $output"
@@ -60,7 +60,7 @@ teardown() {
assert_success
}
@test "(core) run (without tty)" {
@test "(run) run (without tty)" {
deploy_app
run /bin/bash -c ": |dokku run $TEST_APP ls /app/null"
echo "output: $output"
@@ -68,7 +68,7 @@ teardown() {
assert_success
}
@test "(core) run command from Procfile" {
@test "(run) run command from Procfile" {
deploy_app
run /bin/bash -c "dokku run $TEST_APP custom 'hi dokku' | tail -n 1"
echo "output: $output"
@@ -77,3 +77,60 @@ teardown() {
assert_success
assert_output 'hi dokku'
}
@test "(run) list" {
deploy_app
run /bin/bash -c "dokku --quiet run:list $TEST_APP"
echo "output: $output"
echo "status: $status"
assert_success
run /bin/bash -c "dokku run:detached $TEST_APP sleep 300"
echo "output: $output"
echo "status: $status"
assert_success
# includes headers
run /bin/bash -c "dokku --quiet run:list $TEST_APP | wc -l"
echo "output: $output"
echo "status: $status"
assert_success
assert_output "2"
run /bin/bash -c "dokku run:list $TEST_APP --format json | jq '. | length'"
echo "output: $output"
echo "status: $status"
assert_success
assert_output "1"
run /bin/bash -c "dokku run:list --format json $TEST_APP | jq '. | length'"
echo "output: $output"
echo "status: $status"
assert_success
assert_output "1"
run /bin/bash -c "dokku run:detached $TEST_APP sleep 300"
echo "output: $output"
echo "status: $status"
assert_success
# includes headers
run /bin/bash -c "dokku --quiet run:list $TEST_APP | wc -l"
echo "output: $output"
echo "status: $status"
assert_success
assert_output "3"
run /bin/bash -c "dokku run:list $TEST_APP --format json | jq '. | length'"
echo "output: $output"
echo "status: $status"
assert_success
assert_output "2"
run /bin/bash -c "dokku run:list --format json $TEST_APP | jq '. | length'"
echo "output: $output"
echo "status: $status"
assert_success
assert_output "2"
}