Skip to content
This repository
tree: 5fe7d0f2f1
Fetching contributors…

Octocat-spinner-32-eaf2f5

Cannot retrieve contributors at this time

file 46 lines (40 sloc) 1.412 kb
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
Feature: Table diffing
In order to more easily compare data in tables
step definition writers should be able to diff
a table with expected data and see the diff inline
Scenario: Extra row
Given a standard Cucumber project directory structure
And a file named "features/tables.feature" with:
"""
Feature: Tables
Scenario: Extra row
Then the table should be:
| x | y |
| a | b |
"""
And a file named "features/step_definitions/table_steps.rb" with:
"""
Then /the table should be:/ do |expected| x=1
expected.diff!(table(%{
| x | y |
| a | c |
}))
end
"""
When I run cucumber -i features/tables.feature
Then it should fail with
"""
Feature: Tables
Scenario: Extra row # features/tables.feature:2
Then the table should be: # features/step_definitions/table_steps.rb:1
| x | y |
| a | b |
| a | c |
Tables were not identical (Cucumber::Ast::Table::Different)
./features/step_definitions/table_steps.rb:2:in `/the table should be:/'
features/tables.feature:3:in `Then the table should be:'
Failing Scenarios:
cucumber features/tables.feature:2 # Scenario: Extra row

1 scenario (1 failed)
1 step (1 failed)

"""
Something went wrong with that request. Please try again.