Annotation Type Transpose


@Retention(RUNTIME) @Target(PARAMETER) @API(status=STABLE) public @interface Transpose

This annotation can be specified on step definition method parameters to give Cucumber a hint to transpose a DataTable.

For example, if you have the following Gherkin step with a table

 Given the user is
    | firstname | Roberto       |
    | lastname  | Lo Giacco |
    | nationality       | Italian       |
 

And a data table type to create a User

 
 @DataTableType
 public User convert(Map<String, String> entry){
    return new User(
        entry.get("firstname"),
        entry.get("lastname")
        entry.get("nationality")
   );
 }
 
 
Then the following Java Step Definition would convert that into an User object:
 @Given("^the user is$")
 public void the_user_is(@Transpose User user) {
     this.user = user;
 }
 
  • Optional Element Summary

    Optional Elements
    Modifier and Type
    Optional Element
    Description
    boolean
     
  • Element Details

    • value

      boolean value
      Default:
      true