From f303eb289569bbb0a689ea51d4161f73fb6fdf3d Mon Sep 17 00:00:00 2001 From: John Hawthorn Date: Mon, 31 May 2021 15:57:02 -0700 Subject: [PATCH] Add failing test for link_tags when streaming --- .../test/template/asset_tag_helper_test.rb | 49 +++++++++++++++---- 1 file changed, 39 insertions(+), 10 deletions(-) diff --git a/actionview/test/template/asset_tag_helper_test.rb b/actionview/test/template/asset_tag_helper_test.rb index 6163a2050f..97df08485f 100644 --- a/actionview/test/template/asset_tag_helper_test.rb +++ b/actionview/test/template/asset_tag_helper_test.rb @@ -6,9 +6,22 @@ require "action_dispatch" ActionView::Template::Types.delegate_to Mime +module AssetTagHelperTestHelpers + def with_preload_links_header(new_preload_links_header = true) + original_preload_links_header = ActionView::Helpers::AssetTagHelper.preload_links_header + ActionView::Helpers::AssetTagHelper.preload_links_header = new_preload_links_header + + yield + ensure + ActionView::Helpers::AssetTagHelper.preload_links_header = original_preload_links_header + end +end + class AssetTagHelperTest < ActionView::TestCase tests ActionView::Helpers::AssetTagHelper + include AssetTagHelperTestHelpers + attr_reader :request, :response class FakeRequest @@ -789,16 +802,6 @@ def test_caching_image_path_with_caching_and_proc_asset_host_using_request assert_equal "http://localhost/images/xml.png", image_path("xml.png") end end - - private - def with_preload_links_header(new_preload_links_header = true) - original_preload_links_header = ActionView::Helpers::AssetTagHelper.preload_links_header - ActionView::Helpers::AssetTagHelper.preload_links_header = new_preload_links_header - - yield - ensure - ActionView::Helpers::AssetTagHelper.preload_links_header = original_preload_links_header - end end class AssetTagHelperNonVhostTest < ActionView::TestCase @@ -952,6 +955,32 @@ def test_javascript_include_tag_without_request end end +class AssetTagHelperWithStreamingRequest < ActionView::TestCase + tests ActionView::Helpers::AssetTagHelper + + include AssetTagHelperTestHelpers + + def setup + super + response.sending! + end + + def test_stylesheet_link_tag_with_streaming + with_preload_links_header do + assert_dom_equal( + %(), + stylesheet_link_tag("foo.css") + ) + end + end + + def test_javascript_include_tag_with_streaming + with_preload_links_header do + assert_dom_equal %(), javascript_include_tag("foo.js") + end + end +end + class AssetUrlHelperControllerTest < ActionView::TestCase tests ActionView::Helpers::AssetUrlHelper