Skip to content

Commit ee5e2a7

Browse files
committed
[Test Runner] Adds support for regular expressions in match
1 parent 1ef983b commit ee5e2a7

File tree

1 file changed

+7
-2
lines changed

1 file changed

+7
-2
lines changed

spec/yaml-test-runner/code_runner.rb

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -65,22 +65,27 @@ def do_match(action)
6565
result = search_in_response(k)
6666

6767
if !result.nil? && (
68-
result == v || (result.respond_to?(:include?) && result.include?(v))
68+
result == v ||
69+
(result.respond_to?(:include?) && result.include?(v)) ||
70+
match_regexp(v, result)
6971
)
7072
print_success
7173
else
7274
print_match_failure(action, @response)
7375
end
7476
end
7577

78+
def match_regexp(expected, result)
79+
expected.is_a?(String) && expected.match?(/^\//) && result.match?(Regexp.new(expected.gsub('/', '')))
80+
end
81+
7682
def do_length(action)
7783
k, v = action['length'].first
7884

7985
result = search_in_response(k).count
8086
if result && result == v
8187
print_success
8288
else
83-
# TODO: Extract this
8489
print_failure(action, @response)
8590
end
8691
end

0 commit comments

Comments
 (0)