Commit bce3fff1 authored by Bruno Pinto's avatar Bruno Pinto

--to-be-false and --to-be-true expectations

parent 9d889f50
...@@ -4,9 +4,11 @@ ...@@ -4,9 +4,11 @@
# SYNOPSIS # SYNOPSIS
# expect <expected>... # expect <expected>...
# <condition> # <condition>
# --to-equal <actual> value equals <expected> value # --to-be-false exit status is falsy
# --to-be-true exit status is truthy
# --to-contain <actual> value exists in <expected> list # --to-contain <actual> value exists in <expected> list
# --to-no-contain <actual> value does not exist in <expected> list # --to-no-contain <actual> value does not exist in <expected> list
# --to-equal <actual> value equals <expected> value
# <actual> # <actual>
# #
# EXAMPLE # EXAMPLE
...@@ -31,16 +33,27 @@ function expect ...@@ -31,16 +33,27 @@ function expect
set -l condition $argv[-2] set -l condition $argv[-2]
set -l actual $argv[-1] set -l actual $argv[-1]
set -l result 0 set -l result 0
if [ (echo "$actual" | grep '\-\-') ]
set expected $argv[1..-2]
set condition $actual
set actual ""
end
# Test conditions and save success/fail $status to return later. # Test conditions and save success/fail $status to return later.
switch $condition switch $condition
case --to-eq\* case --to-be-false
test "$expected" = "$actual" eval "$expected"
test $status -ne 0
case --to-be-true
eval "$expected"
test $status -eq 0
case --to-contain case --to-contain
set actual_text "To contain"
contains -- "$actual" $expected contains -- "$actual" $expected
case --to-not-contain case --to-not-contain
set actual_text "To not contain"
not contains -- "$actual" $expected not contains -- "$actual" $expected
case --to-eq\*
test "$expected" = "$actual"
end end
set result $status set result $status
if [ $result -eq 0 ] if [ $result -eq 0 ]
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment