Skip to content

Step Reuse #21

Description

@benjamine

Maybe I'm missing something, but it looks like the current implementation is not compatible with one of the greatest features when using gherkin: Step defintion reuse!

That means, I want to define steps (ie. methods) that are mapped to gherkin lines based on a regular expression.
Maybe kyuri is not that far from that, with something like this (modified from the README example):


vows.describe('Addition').addBatch({
  "Add two numbers": {
    "GIVEN I have entered 50 into the calculator": {
          topic: function () {
            Given('I have entered 50 into the calculator');
          },
            "AND I have entered 70 into the calculator": {
              topic: function () {
                Given('I have entered 70 into the calculator');
              },
                "WHEN I press add": {
                  topic: function () {
                   When('I press add');
                  },
                    "THEN the result should be 120 on the screen": function () {
                      Then('the result should be 120 on the screen);
                    },
                }
            }
        }
  }
}).export(module);

then on runtime, those methods could use regex to call the appropiate step method defined somewhere else.
Given, When, and Then methods could be implemented easily.
It could be just a flag for kyuri to generate tests like this.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions