Skip to content

Commit 184a3fe

Browse files
author
Stefanie Grunwald
authored
Implement date placeholders for results, fixes moertel#4
1 parent 054499b commit 184a3fe

File tree

1 file changed

+8
-4
lines changed

1 file changed

+8
-4
lines changed

lib/squcumber-postgres/step_definitions/common_steps.rb

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -97,9 +97,10 @@
9797
@result = TESTING_DATABASE.query("select * from #{table} #{sort_statement};").map { |e| e }
9898
end
9999

100-
Then(/^the result starts with.*$/) do |data|
100+
Then(/^the result( with date placeholders)? starts with.*$/) do |placeholder, data|
101101
actual = @result[0..(data.hashes.length - 1)] || []
102102
expected = data.hashes || []
103+
expected = convert_mock_values(expected) if placeholder
103104

104105
expected.each_with_index do |hash, i|
105106
raise("Does not start with expected result, got:\n#{format_error(data, actual)}") unless actual[i].all? do |key, value|
@@ -108,9 +109,10 @@
108109
end
109110
end
110111

111-
Then(/^the result includes.*$/) do |data|
112+
Then(/^the result( with date placeholders)? includes.*$/) do |placeholder, data|
112113
actual = @result || []
113114
expected = data.hashes || []
115+
expected = convert_mock_values(expected) if placeholder
114116

115117
expected.each do |hash|
116118
raise("Result is not included, got:\n#{format_error(data, actual)}") unless actual.any? do |row|
@@ -121,9 +123,10 @@
121123
end
122124
end
123125

124-
Then(/^the result does not include.*$/) do |data|
126+
Then(/^the result( with date placeholders)? does not include.*$/) do |placeholder, data|
125127
actual = @result || []
126128
expected = data.hashes || []
129+
expected = convert_mock_values(expected) if placeholder
127130

128131
expected.each do |hash|
129132
raise("Result is included, got:\n#{format_error(data, actual)}") if actual.any? do |row|
@@ -134,9 +137,10 @@
134137
end
135138
end
136139

137-
Then(/^the result exactly matches.*$/) do |data|
140+
Then(/^the result( with date placeholders)? exactly matches.*$/) do |placeholder, data|
138141
actual = @result || []
139142
expected = data.hashes || []
143+
expected = convert_mock_values(expected) if placeholder
140144

141145
raise("Does not match exactly, got:\n#{format_error(data, actual)}") if actual.length != expected.length
142146

0 commit comments

Comments
 (0)