X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/17e9bcd2d46ab699772dcf9136d8627347ad09e8..25d5c58c5c8902812731ef8d202dd2f015771cb1:/test/helpers/browse_helper_test.rb diff --git a/test/helpers/browse_helper_test.rb b/test/helpers/browse_helper_test.rb index 62aa73f94..0c4f2b203 100644 --- a/test/helpers/browse_helper_test.rb +++ b/test/helpers/browse_helper_test.rb @@ -1,13 +1,9 @@ -# -*- coding: utf-8 -*- - require "test_helper" class BrowseHelperTest < ActionView::TestCase include ERB::Util include ApplicationHelper - api_fixtures - def setup I18n.locale = "en" end @@ -108,7 +104,7 @@ class BrowseHelperTest < ActionView::TestCase def test_format_key html = format_key("highway") - assert_dom_equal "highway", html + assert_dom_equal "highway", html html = format_key("unknown") assert_dom_equal "unknown", html @@ -116,7 +112,7 @@ class BrowseHelperTest < ActionView::TestCase def test_format_value html = format_value("highway", "primary") - assert_dom_equal "primary", html + assert_dom_equal "primary", html html = format_value("highway", "unknown") assert_dom_equal "unknown", html @@ -128,13 +124,19 @@ class BrowseHelperTest < ActionView::TestCase assert_dom_equal "+1234567890", html html = format_value("wikipedia", "Test") - assert_dom_equal "Test", html + assert_dom_equal "Test", html html = format_value("wikidata", "Q42") assert_dom_equal "Q42", html html = format_value("operator:wikidata", "Q12;Q98") assert_dom_equal "Q12;Q98", html + + html = format_value("name:etymology:wikidata", "Q123") + assert_dom_equal "Q123", html + + html = format_value("colour", "#f00") + assert_dom_equal %(
#f00 ), html end def test_icon_tags @@ -147,48 +149,48 @@ class BrowseHelperTest < ActionView::TestCase tags = icon_tags(node) assert_equal 3, tags.count - assert tags.include?(%w(building yes)) - assert tags.include?(%w(tourism museum)) - assert tags.include?(%w(shop gift)) + assert tags.include?(%w[building yes]) + assert tags.include?(%w[tourism museum]) + assert tags.include?(%w[shop gift]) add_old_tags_selection(node_v2) add_old_tags_selection(node_v1) tags = icon_tags(node_v2) assert_equal 3, tags.count - assert tags.include?(%w(building yes)) - assert tags.include?(%w(tourism museum)) - assert tags.include?(%w(shop gift)) + assert tags.include?(%w[building yes]) + assert tags.include?(%w[tourism museum]) + assert tags.include?(%w[shop gift]) tags = icon_tags(node_v1) assert_equal 3, tags.count - assert tags.include?(%w(building yes)) - assert tags.include?(%w(tourism museum)) - assert tags.include?(%w(shop gift)) + assert tags.include?(%w[building yes]) + assert tags.include?(%w[tourism museum]) + assert tags.include?(%w[shop gift]) end def test_wiki_link link = wiki_link("key", "highway") - assert_equal "http://wiki.openstreetmap.org/wiki/Key:highway?uselang=en", link + assert_equal "https://wiki.openstreetmap.org/wiki/Key:highway?uselang=en", link link = wiki_link("tag", "highway=primary") - assert_equal "http://wiki.openstreetmap.org/wiki/Tag:highway=primary?uselang=en", link + assert_equal "https://wiki.openstreetmap.org/wiki/Tag:highway=primary?uselang=en", link I18n.locale = "de" link = wiki_link("key", "highway") - assert_equal "http://wiki.openstreetmap.org/wiki/DE:Key:highway?uselang=de", link + assert_equal "https://wiki.openstreetmap.org/wiki/DE:Key:highway?uselang=de", link link = wiki_link("tag", "highway=primary") - assert_equal "http://wiki.openstreetmap.org/wiki/DE:Tag:highway=primary?uselang=de", link + assert_equal "https://wiki.openstreetmap.org/wiki/DE:Tag:highway=primary?uselang=de", link I18n.locale = "tr" link = wiki_link("key", "highway") - assert_equal "http://wiki.openstreetmap.org/wiki/Tr:Key:highway?uselang=tr", link + assert_equal "https://wiki.openstreetmap.org/wiki/Tr:Key:highway?uselang=tr", link link = wiki_link("tag", "highway=primary") - assert_equal "http://wiki.openstreetmap.org/wiki/Tag:highway=primary?uselang=tr", link + assert_equal "https://wiki.openstreetmap.org/wiki/Tag:highway=primary?uselang=tr", link end def test_wikidata_links @@ -272,33 +274,33 @@ class BrowseHelperTest < ActionView::TestCase assert_nil link link = wikipedia_link("wikipedia", "Test") - assert_equal "http://en.wikipedia.org/wiki/Test?uselang=en", link[:url] + assert_equal "https://en.wikipedia.org/wiki/Test?uselang=en", link[:url] assert_equal "Test", link[:title] link = wikipedia_link("wikipedia", "de:Test") - assert_equal "http://de.wikipedia.org/wiki/de:Test?uselang=en", link[:url] + assert_equal "https://de.wikipedia.org/wiki/de:Test?uselang=en", link[:url] assert_equal "de:Test", link[:title] link = wikipedia_link("wikipedia:fr", "de:Test") - assert_equal "http://fr.wikipedia.org/wiki/de:Test?uselang=en", link[:url] + assert_equal "https://fr.wikipedia.org/wiki/de:Test?uselang=en", link[:url] assert_equal "de:Test", link[:title] link = wikipedia_link("wikipedia", "de:Englischer Garten (München)#Japanisches Teehaus") - assert_equal "http://de.wikipedia.org/wiki/de:Englischer Garten (München)?uselang=en#Japanisches_Teehaus", link[:url] + assert_equal "https://de.wikipedia.org/wiki/de:Englischer Garten (München)?uselang=en#Japanisches_Teehaus", link[:url] assert_equal "de:Englischer Garten (München)#Japanisches Teehaus", link[:title] link = wikipedia_link("wikipedia", "de:Alte Brücke (Heidelberg)#Brückenaffe") - assert_equal "http://de.wikipedia.org/wiki/de:Alte Brücke (Heidelberg)?uselang=en#Br.C3.BCckenaffe", link[:url] + assert_equal "https://de.wikipedia.org/wiki/de:Alte Brücke (Heidelberg)?uselang=en#Br.C3.BCckenaffe", link[:url] assert_equal "de:Alte Brücke (Heidelberg)#Brückenaffe", link[:title] link = wikipedia_link("wikipedia", "de:Liste der Baudenkmäler in Eichstätt#Brückenstraße 1, Ehemaliges Bauernhaus") - assert_equal "http://de.wikipedia.org/wiki/de:Liste der Baudenkmäler in Eichstätt?uselang=en#Br.C3.BCckenstra.C3.9Fe_1.2C_Ehemaliges_Bauernhaus", link[:url] + assert_equal "https://de.wikipedia.org/wiki/de:Liste der Baudenkmäler in Eichstätt?uselang=en#Br.C3.BCckenstra.C3.9Fe_1.2C_Ehemaliges_Bauernhaus", link[:url] assert_equal "de:Liste der Baudenkmäler in Eichstätt#Brückenstraße 1, Ehemaliges Bauernhaus", link[:title] I18n.locale = "pt-BR" link = wikipedia_link("wikipedia", "zh-classical:Test#Section") - assert_equal "http://zh-classical.wikipedia.org/wiki/zh-classical:Test?uselang=pt-BR#Section", link[:url] + assert_equal "https://zh-classical.wikipedia.org/wiki/zh-classical:Test?uselang=pt-BR#Section", link[:url] assert_equal "zh-classical:Test#Section", link[:title] link = wikipedia_link("foo", "Test") @@ -349,6 +351,117 @@ class BrowseHelperTest < ActionView::TestCase assert_equal "tel:+1(234)567-890", link end + def test_colour_preview + # basic positive tests + colour = colour_preview("colour", "red") + assert_equal "red", colour + + colour = colour_preview("colour", "Red") + assert_equal "Red", colour + + colour = colour_preview("colour", "darkRed") + assert_equal "darkRed", colour + + colour = colour_preview("colour", "#f00") + assert_equal "#f00", colour + + colour = colour_preview("colour", "#fF0000") + assert_equal "#fF0000", colour + + # other tag variants: + colour = colour_preview("building:colour", "#f00") + assert_equal "#f00", colour + + colour = colour_preview("ref:colour", "#f00") + assert_equal "#f00", colour + + colour = colour_preview("ref:colour_bg", "#fF0") + assert_equal "#fF0", colour + + colour = colour_preview("ref:colour_tx", "#fa0") + assert_equal "#fa0", colour + + colour = colour_preview("int_ref:colour", "green") + assert_equal "green", colour + + colour = colour_preview("int_ref:colour_bg", "#00f") + assert_equal "#00f", colour + + colour = colour_preview("int_ref:colour_tx", "WHITE") + assert_equal "WHITE", colour + + colour = colour_preview("roof:colour", "#f00") + assert_equal "#f00", colour + + # negative tests: + colour = colour_preview("color", "") + assert_nil colour + + colour = colour_preview("color", " ") + assert_nil colour + + colour = colour_preview("color", nil) + assert_nil colour + + # ignore US spelling variant + colour = colour_preview("color", "red") + assert_nil colour + + # irrelevant tag names + colour = colour_preview("building", "red") + assert_nil colour + + colour = colour_preview("ref:colour_no", "red") + assert_nil colour + + colour = colour_preview("ref:colour-bg", "red") + assert_nil colour + + colour = colour_preview("int_ref", "red") + assert_nil colour + + # invalid hex codes + colour = colour_preview("colour", "#") + assert_nil colour + + colour = colour_preview("colour", "#ff") + assert_nil colour + + colour = colour_preview("colour", "#ffff") + assert_nil colour + + colour = colour_preview("colour", "#fffffff") + assert_nil colour + + colour = colour_preview("colour", "#ggg") + assert_nil colour + + colour = colour_preview("colour", "#ff 00 00") + assert_nil colour + + # invalid w3c color names: + colour = colour_preview("colour", "r") + assert_nil colour + + colour = colour_preview("colour", "ffffff") + assert_nil colour + + colour = colour_preview("colour", "f00") + assert_nil colour + + colour = colour_preview("colour", "xxxred") + assert_nil colour + + colour = colour_preview("colour", "dark red") + assert_nil colour + + colour = colour_preview("colour", "dark_red") + assert_nil colour + + colour = colour_preview("colour", "ADarkDummyLongColourNameWithAPurpleUndertone") + assert_nil colour + end + def add_old_tags_selection(old_node) { "building" => "yes", "shop" => "gift",