|
6 | 6 | require "action_dispatch"
|
7 | 7 | ActionView::Template::Types.delegate_to Mime
|
8 | 8 |
|
| 9 | +module AssetTagHelperTestHelpers |
| 10 | + def with_preload_links_header(new_preload_links_header = true) |
| 11 | + original_preload_links_header = ActionView::Helpers::AssetTagHelper.preload_links_header |
| 12 | + ActionView::Helpers::AssetTagHelper.preload_links_header = new_preload_links_header |
| 13 | + |
| 14 | + yield |
| 15 | + ensure |
| 16 | + ActionView::Helpers::AssetTagHelper.preload_links_header = original_preload_links_header |
| 17 | + end |
| 18 | +end |
| 19 | + |
9 | 20 | class AssetTagHelperTest < ActionView::TestCase
|
10 | 21 | tests ActionView::Helpers::AssetTagHelper
|
11 | 22 |
|
| 23 | + include AssetTagHelperTestHelpers |
| 24 | + |
12 | 25 | attr_reader :request, :response
|
13 | 26 |
|
14 | 27 | class FakeRequest
|
@@ -789,16 +802,6 @@ def test_caching_image_path_with_caching_and_proc_asset_host_using_request
|
789 | 802 | assert_equal "http://localhost/images/xml.png", image_path("xml.png")
|
790 | 803 | end
|
791 | 804 | end
|
792 |
| - |
793 |
| - private |
794 |
| - def with_preload_links_header(new_preload_links_header = true) |
795 |
| - original_preload_links_header = ActionView::Helpers::AssetTagHelper.preload_links_header |
796 |
| - ActionView::Helpers::AssetTagHelper.preload_links_header = new_preload_links_header |
797 |
| - |
798 |
| - yield |
799 |
| - ensure |
800 |
| - ActionView::Helpers::AssetTagHelper.preload_links_header = original_preload_links_header |
801 |
| - end |
802 | 805 | end
|
803 | 806 |
|
804 | 807 | class AssetTagHelperNonVhostTest < ActionView::TestCase
|
@@ -952,6 +955,32 @@ def test_javascript_include_tag_without_request
|
952 | 955 | end
|
953 | 956 | end
|
954 | 957 |
|
| 958 | +class AssetTagHelperWithStreamingRequest < ActionView::TestCase |
| 959 | + tests ActionView::Helpers::AssetTagHelper |
| 960 | + |
| 961 | + include AssetTagHelperTestHelpers |
| 962 | + |
| 963 | + def setup |
| 964 | + super |
| 965 | + response.sending! |
| 966 | + end |
| 967 | + |
| 968 | + def test_stylesheet_link_tag_with_streaming |
| 969 | + with_preload_links_header do |
| 970 | + assert_dom_equal( |
| 971 | + %(<link rel="stylesheet" href="/stylesheets/foo.css" />), |
| 972 | + stylesheet_link_tag("foo.css") |
| 973 | + ) |
| 974 | + end |
| 975 | + end |
| 976 | + |
| 977 | + def test_javascript_include_tag_with_streaming |
| 978 | + with_preload_links_header do |
| 979 | + assert_dom_equal %(<script src="/javascripts/foo.js"></script>), javascript_include_tag("foo.js") |
| 980 | + end |
| 981 | + end |
| 982 | +end |
| 983 | + |
955 | 984 | class AssetUrlHelperControllerTest < ActionView::TestCase
|
956 | 985 | tests ActionView::Helpers::AssetUrlHelper
|
957 | 986 |
|
|
0 commit comments