-
Notifications
You must be signed in to change notification settings - Fork 64
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Data tables #149
base: master
Are you sure you want to change the base?
Data tables #149
Conversation
How close are we to getting this feature merged? |
Hello man, |
👋 Sorry for the delay. Will review/test today. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm loving this :)
The only issue I have is that in the step definitions (i.e. Tests/StepDefinitions.swift:194) the step needs to know whether it's been invoked from a Swift or a Native gherkin file (i.e. whether it should use DataTable or NativeDataTable as it's match type.
Is there any way of unifying these types somehow?
I think it won't be an issue in a reality as if one need to use the same step both with native and swift features with data tables (i.e. migrating from one format to another) they can extract code in this step into a reusable function or just call one step from another. But I think in most cases only one type of features is used. |
Hey @ilyapuchka, it will be nice if this PR can be merged after resolving the conflicts. Really looking forward to use the cucumber datatable facility. |
Been a couple of years now - will this ever be merged? |
Resolves #41, resolves #146
This PR adds support for data tables. Examples of supported formats can be found in the doc comments for the new
StepDefiner
methods inNativeDataTable.swift
and inExampleFeatures
tests. Both native and swift tests can use data tables. Examples are taken from a cucumber referenceThe main difference of data tables and a step in an outline with values in examples is that the step in the outline will be invoked multiple times and each time will receive one element of example values, when with data tables it will be invoked once with all values in one collection.
Example: