Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
O
oh-my-fish
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Locked Files
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Security & Compliance
Security & Compliance
Dependency List
License Compliance
Packages
Packages
List
Container Registry
Analytics
Analytics
CI / CD
Code Review
Insights
Issues
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
nanahira
oh-my-fish
Commits
081f3f5b
Commit
081f3f5b
authored
Jan 13, 2015
by
Bruno Pinto
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
allow --to-contain to receive an array, and check each item individually
parent
bce3fff1
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
25 additions
and
12 deletions
+25
-12
plugins/fish-spec/expect.fish
plugins/fish-spec/expect.fish
+25
-12
No files found.
plugins/fish-spec/expect.fish
View file @
081f3f5b
...
@@ -6,8 +6,8 @@
...
@@ -6,8 +6,8 @@
# <condition>
# <condition>
# --to-be-false exit status is falsy
# --to-be-false exit status is falsy
# --to-be-true exit status is truthy
# --to-be-true exit status is truthy
# --to-contain <actual> value
exists
in <expected> list
# --to-contain <actual> value
s exist
in <expected> list
# --to-no-contain <actual> value does not exist in <expected> list
# --to-no-contain <actual> value
s
does not exist in <expected> list
# --to-equal <actual> value equals <expected> value
# --to-equal <actual> value equals <expected> value
# <actual>
# <actual>
#
#
...
@@ -29,15 +29,18 @@ function expect
...
@@ -29,15 +29,18 @@ function expect
return 1
return 1
end
end
set -l expected $argv[1..-3]
for i in (seq (count $argv))
set -l condition $argv[-2]
if [ (echo $argv[$i] | grep '\-\-') ] # Expectation argument found
set -l actual $argv[-1
]
set -g condition $argv[$i
]
set -l result 0
set -g expected $argv[1..(math "$i - 1")]
if [ (echo "$actual" | grep '\-\-') ]
# No comparison required e.g. --to-be-true
set expected $argv[1..-2]
if not [ (count $argv) = $i ]
set condition $actual
set -g actual $argv[(math "$i + 1")..-1]
set actual ""
end
break
end
end
end
# Test conditions and save success/fail $status to return later.
# Test conditions and save success/fail $status to return later.
...
@@ -49,9 +52,19 @@ function expect
...
@@ -49,9 +52,19 @@ function expect
eval "$expected"
eval "$expected"
test $status -eq 0
test $status -eq 0
case --to-contain
case --to-contain
contains -- "$actual" $expected
set result 0
for item in $actual
contains -- "$item" $expected
or set result $status
end
test $result -eq 0
case --to-not-contain
case --to-not-contain
not contains -- "$actual" $expected
set result 0
for item in $actual
not contains -- "$item" $expected
or set result $status
end
test $result -eq 0
case --to-eq\*
case --to-eq\*
test "$expected" = "$actual"
test "$expected" = "$actual"
end
end
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment