Skip to content

Version 3.0.0 beta.2

Compare
Choose a tag to compare
@gongo gongo released this 27 Sep 03:56
· 132 commits to master since this release

Goal of version 3.0.0

3.0.0-beta.2

[Refactoring] Turnip::Node that is corresponding to Gherkin4 nodes in AST [GH-185]

Breaking Changes (For users)

Nothing 🎉 (No change of *.feature and *_.steps.rb)

Breaking Changes (For developers)

Modules

  • Turnip::Builder::Tag
    • Recreate class Turnip::Node::Tag and module Turnip::Node::HasTags

    • Change usage:

       class FooNode
      -  include Tag
      +  include HasTags
       end

      FooNode implements tags method.

  • Turnip::Builder::Line
    • Recreate class Turnip::Node::Location and module Turnip::Node::HasLocation

    • Change usage:

       class FooNode
      -  include Line
      +  include HasLocation
       end

      FooNode implements location and line methods.

  • Turnip::Builder::Name
    • Each node have as attribute.

Classes

  • Turnip::Builder::Feature
    • ➡️ Turnip::Node::Feature
    • Maintain API Compatibility
  • Turnip::Builder::Scenario
    • ➡️ Turnip::Node::Scenario
    • Maintain API Compatibility
  • Turnip::Builder::ScenarioOutline
    • ➡️ Turnip::Node::ScenarioOutline
    • Maintain API Compatibility
  • Turnip::Builder::Background
    • ➡️ Turnip::Node::Background
    • Maintain API Compatibility
  • Turnip::Builder::Step
    • ➡️ Turnip::Node::Step
    • Change API
      • before: step.extra_args (return Array of String or Turnip::Table)
      • after: step.argument (return nil , String or Turnip::Table)