Cucumberex.Filter.TagExpression (cucumberex v0.2.1)

Copy Markdown View Source

Parse and evaluate Cucumber tag expressions.

Supports: @smoke — single tag @smoke and @fast — AND @smoke or @wip — OR not @slow — NOT (@smoke or @wip) and not @skip — grouping @feature:limit — tag limits (parsed but limit enforcement is in runner)

Summary

Functions

Evaluate a tag expression string against a list of tags.

Functions

evaluate(expr, tags)

Evaluate a tag expression string against a list of tags.

Examples

iex> Cucumberex.Filter.TagExpression.evaluate("@smoke", ["@smoke"])
true

iex> Cucumberex.Filter.TagExpression.evaluate("@smoke and @fast", ["@smoke"])
false

iex> Cucumberex.Filter.TagExpression.evaluate("@smoke or @wip", ["@wip"])
true

iex> Cucumberex.Filter.TagExpression.evaluate("not @slow", ["@fast"])
true

iex> Cucumberex.Filter.TagExpression.evaluate(nil, ["@any"])
true