mauriciotogneri / green-coffee

Green Coffee
MIT License
231 stars 21 forks source link

Provide automatic conversion support for DataTables #3

Closed mikegr closed 7 years ago

mikegr commented 7 years ago

Green Coffee allows a very convenient and flexible way to integrate Cucumber tests into Android tests. Integrating the library was easy and the setup works reliable. However data tables can only added with the paramter type List<TableRow>. Cucumber DataTable provides a more convenient handling of data.

Automatic conversion to domain models like my_step_method(List<MyModel> models)

or Maps my_step_method(List<Map<K,V> )

cucumber.api.DataTable supports transformations like asMaps or asLists my_step_method(DataTable data) { data.asMaps(String.class, String.class) } Currently I found not way to convert a List<TableRow>to cucumber.api.DataTable, which might be a temporary workaround.

Furthermore XStreamConverter annotations are convenient to transform special data types automatically.

mauriciotogneri commented 7 years ago

Hi @mikegr, sorry for the late response.

I don't have access to that class from the library. I use the class gherkin.ast.DataTable which is the one that Gherkin parser for Java provides. Unfortunately, that class doesn't have such methods, only:

List<TableRow> getRows()

I never used XStreamConverter. I'm not sure what you meant with that.