integration/unix/commander_test.yaml
tests:
it should fail:
command: /bin/bash invalid
stderr: "/bin/bash: invalid: No such file or directory"
exit-code: 127
it should exit with error code:
command: exit 1
exit-code: 1
it should assert stdout:
command: echo hello
stdout: hello
exit-code: 0
it should assert stderr:
command: '>&2 echo "error"'
stderr: error
exit-code: 0
it should assert line-count:
command: printf "hello\nline2"
stdout:
line-count: 2
exit-code: 0
it should assert zero line count:
command: exit 0
stdout:
line-count: 0
exit-code: 0
it should assert a specifc line:
command: printf "line1\nline2\nline3\nline4"
stdout:
lines:
1: line1
2: line2
4: line4
exit-code: 0
it should validate not contains:
command: echo lorem ipsum
stdout:
not-contains:
- not contains
it should assert json:
command: cat ./integration/unix/_fixtures/book.json
stdout:
json:
books.0.author: J. R. R. Tolkien
books.1.author: Joanne K. Rowling
it should assert xml:
command: cat ./integration/unix/_fixtures/book.xml
stdout:
xml:
/books/0/author: J. R. R. Tokien
/books/1/author: Joanne K. Rowling
it should assert file contents on stdout:
command: cat ./integration/unix/_fixtures/big_out.txt
stdout:
file: ./integration/unix/_fixtures/big_out.txt
it should assert file contents on stderr:
command: cat ./integration/unix/_fixtures/big_out.txt >&2
stderr:
file: ./integration/unix/_fixtures/big_out.txt
it should handle a trailing newline in the file:
command: cat ./integration/unix/_fixtures/trailing_newline.txt
stdout:
file: ./integration/unix/_fixtures/trailing_newline.txt
it should inherit from parent env:
config:
inherit-env: true
command: echo $USER
stdout: from_parent
exit-code: 0
it should skip:
command: whoami
stdout: root
skip: true