From 8548b96a97a65720552d7bef74e4404b11facedd Mon Sep 17 00:00:00 2001 From: James Meng Date: Fri, 6 Jun 2025 12:06:35 -0700 Subject: [PATCH] Remove `body` attr_reader and initiliaze `@body` instance variable in `parse` method --- lib/liquid/tags/doc.rb | 7 +++---- test/unit/tags/doc_tag_unit_test.rb | 6 +++--- 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/lib/liquid/tags/doc.rb b/lib/liquid/tags/doc.rb index 4c650b8c..b61d7e95 100644 --- a/lib/liquid/tags/doc.rb +++ b/lib/liquid/tags/doc.rb @@ -30,15 +30,14 @@ module Liquid class Doc < Block NO_UNEXPECTED_ARGS = /\A\s*\z/ - attr_reader :body - def initialize(tag_name, markup, parse_context) super - @body = +"" ensure_valid_markup(tag_name, markup, parse_context) end def parse(tokens) + @body = +"" + while (token = tokens.shift) tag_name = token =~ BlockBody::FullTokenPossiblyInvalid && Regexp.last_match(2) @@ -64,7 +63,7 @@ module Liquid end def nodelist - [] + [@body] end private diff --git a/test/unit/tags/doc_tag_unit_test.rb b/test/unit/tags/doc_tag_unit_test.rb index cf17b1d0..7c6ef6f3 100644 --- a/test/unit/tags/doc_tag_unit_test.rb +++ b/test/unit/tags/doc_tag_unit_test.rb @@ -32,7 +32,7 @@ class DocTagUnitTest < Minitest::Test end .visit - assert_equal(doc_content, doc_tag.body) + assert_equal(doc_content, doc_tag.nodelist.first.to_s) end def test_doc_tag_does_not_support_extra_arguments @@ -132,7 +132,7 @@ class DocTagUnitTest < Minitest::Test end def test_doc_tag_captures_token_before_enddoc - template_source = "{% doc %}{{ incomplete{% enddoc %}" + template_source = "{% doc %}{{ incomplete{% enddoc %}" doc_tag = nil ParseTreeVisitor @@ -142,7 +142,7 @@ class DocTagUnitTest < Minitest::Test end .visit - assert_equal("{{ incomplete", doc_tag.body) + assert_equal("{{ incomplete", doc_tag.nodelist.first.to_s) end def test_doc_tag_preserves_error_line_numbers