Feature: Customizing tags Scenario: a broken custom tag Given a file named "example_taglib.dryml" with: """

<%= this.name %>

<%= this.name %> """ And a file named "example.dryml" with: """ <%= this.body %> """ When I include the taglib "example_taglib" And the current context is a blog post And I render "example.dryml" Then the output DOM should be: """

A Blog Post

""" Scenario: merging attributes for a custom tag Given a file named "example_taglib.dryml" with: """

<%= this.name %>

<%= this.name %> """ And a file named "example.dryml" with: """ <%= this.body %> """ When I include the taglib "example_taglib" And the current context is a blog post And I render "example.dryml" Then the output DOM should be: """

A Blog Post

""" Scenario: merging attributes and adding params for a custom tag Given a file named "example_taglib.dryml" with: """

<%= this.name %>

<%= this.name %> """ And a file named "example.dryml" with: """ <%= this.body %> """ When I include the taglib "example_taglib" And the current context is a blog post And I render "example.dryml" Then the output DOM should be: """

A Blog Post

Some body content
""" Scenario: merging attributes and params for a custom tag Given a file named "example_taglib.dryml" with: """

<%= this.name %>

<%= this.name %> """ And a file named "example.dryml" with: """ <%= this.body %> """ When I include the taglib "example_taglib" And the current context is a blog post And I render "example.dryml" Then the output DOM should be: """

A Blog Post

Some body content
""" Scenario: using the merge shorthand for a custom tag Given a file named "example_taglib.dryml" with: """

<%= this.name %>

<%= this.name %> """ And a file named "example.dryml" with: """ <%= this.body %> """ When I include the taglib "example_taglib" And the current context is a blog post And I render "example.dryml" Then the output DOM should be: """

A Blog Post

Some body content
""" Scenario: extending a tag Given a file named "example_taglib.dryml" with: """

<%= this.name %>

<%= this.name %> """ And a file named "example.dryml" with: """ <%= this.body %> """ When I include the taglib "example_taglib" And the current context is a blog post And I render "example.dryml" Then the output DOM should be: """

A Blog Post

Some body content
""" Scenario: extending a tag and aliasing a param Given a file named "example_taglib.dryml" with: """

<%= this.name %>

<%= this.name %> """ And a file named "example.dryml" with: """ <%= this.body %> """ When I include the taglib "example_taglib" And the current context is a blog post And I render "example.dryml" Then the output DOM should be: """

A Blog Post

Some body content
""" Scenario: extending a tag and using attributes (fails) Given a file named "example_taglib.dryml" with: """ """ And a file named "example.dryml" with: """ Intro Help """ When I include the taglib "example_taglib" And I render "example.dryml" Then the output DOM should be: """ Intro Help """ Scenario: extending a tag and using attributes take 2 (fails) Given a file named "example_taglib.dryml" with: """ """ And a file named "example.dryml" with: """ Intro Help """ When I include the taglib "example_taglib" And I render "example.dryml" Then the output DOM should be: """ Intro Help """