X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/7e7ede890e8e948236d3dbc48e24aca00cd01f62..6cc31259e4e96784e4937c8c0ae561f8291ecaa2:/test/helpers/social_share_button_helper_test.rb diff --git a/test/helpers/social_share_button_helper_test.rb b/test/helpers/social_share_button_helper_test.rb index 9c7569334..136298381 100644 --- a/test/helpers/social_share_button_helper_test.rb +++ b/test/helpers/social_share_button_helper_test.rb @@ -2,47 +2,16 @@ require "test_helper" class SocialShareButtonHelperTest < ActionView::TestCase include SocialShareButtonHelper - include ApplicationHelper - def setup - @options = { - :allow_sites => %w[x facebook linkedin], - :title => "Test Title", - :url => "https://example.com", - :desc => "Test Description", - :via => "testuser" - } - end - - def test_render_social_share_buttons_with_valid_sites - result = render_social_share_buttons(@options) - assert_includes result, "x" - assert_includes result, "facebook" - assert_includes result, "linkedin" - end - - def test_render_social_share_buttons_with_invalid_site - @options[:allow_sites] << "invalid_site" - result = render_social_share_buttons(@options) - assert_not_includes result, "invalid_site" - end + def test_social_share_buttons + buttons = social_share_buttons(:title => "Test Title", :url => "https://example.com") + buttons_dom = Rails::Dom::Testing.html_document_fragment.parse(buttons) - def test_render_social_share_buttons_with_no_sites - @options[:allow_sites] = [] - result = render_social_share_buttons(@options) - SocialShareButtonHelper::SOCIAL_SHARE_CONFIG.each_key do |site| - assert_includes result, site.to_s # Convert symbol to string + SOCIAL_SHARE_CONFIG.each_value do |icon| + assert_dom buttons_dom, "div:has(a img[src='/images/#{icon}'])", :count => 1 do + assert_dom "a[href*='Test+Title']" + assert_dom "a[href*='https%3A%2F%2Fexample.com']" + end end end - - def test_filter_allowed_sites - valid_sites, invalid_sites = SocialShareButtonHelper.filter_allowed_sites(%w[x facebook invalid_site]) - assert_equal %w[x facebook], valid_sites - assert_equal %w[invalid_site], invalid_sites - end - - def test_icon_path - assert_equal "social_icons/x.svg", SocialShareButtonHelper.icon_path("x") - assert_equal "", SocialShareButtonHelper.icon_path("invalid_site") - end end