diff --git a/lib/better_html/parser.rb b/lib/better_html/parser.rb index a6a8b11..b0510a1 100644 --- a/lib/better_html/parser.rb +++ b/lib/better_html/parser.rb @@ -191,7 +191,7 @@ def build_attribute_value_node(tokens) :attribute_unquoted_value, ) - build_node(:attribute_value, children) + build_node(:attribute_value, children) if children.any? end def build_text_node(tokens) diff --git a/test/better_html/parser_test.rb b/test/better_html/parser_test.rb index 338967a..3ce79c6 100644 --- a/test/better_html/parser_test.rb +++ b/test/better_html/parser_test.rb @@ -248,6 +248,37 @@ class ParserTest < ActiveSupport::TestCase tree.ast end + test "consumes tag attributes without value" do + tree = Parser.new(buffer("