You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently, there is a gap between the Feature object and the GherkinProject object. GherkinProject is built to interact with files on the file system, and so is inherently tied to disk. Feature can be initialized directly from text, so does not rely on any relationship with an object on disk. GherkinProject contains many functions which are convenient for interacting with groups of features, but because it is tied to disk it is 1. hard to test and 2. difficult to use in contexts that don't care about the files on disk.
Proposal: Add a FeatureSet object, which simply wraps multiple features, and refactor the utility functions in GherkinProject to use the utility methods on that object. This will make it easier to test the project layer, and allow use cases not strictly tied to features on disk.
The text was updated successfully, but these errors were encountered:
Currently, there is a gap between the
Feature
object and theGherkinProject
object.GherkinProject
is built to interact with files on the file system, and so is inherently tied to disk.Feature
can be initialized directly from text, so does not rely on any relationship with an object on disk.GherkinProject
contains many functions which are convenient for interacting with groups of features, but because it is tied to disk it is 1. hard to test and 2. difficult to use in contexts that don't care about the files on disk.Proposal: Add a
FeatureSet
object, which simply wraps multiple features, and refactor the utility functions inGherkinProject
to use the utility methods on that object. This will make it easier to test the project layer, and allow use cases not strictly tied to features on disk.The text was updated successfully, but these errors were encountered: