From: Štefan Baebler Date: Wed, 7 Mar 2018 16:46:11 +0000 (+0100) Subject: Colour preview box: simplified key regex X-Git-Tag: live~3317^2~13 X-Git-Url: https://git.openstreetmap.org./rails.git/commitdiff_plain/1fc4fb9f6384d1ad9151910abe7bb3a0cd7d0057 Colour preview box: simplified key regex and slightly reduced number of tests --- diff --git a/app/helpers/browse_helper.rb b/app/helpers/browse_helper.rb index 8e0c7648f..8baca1dee 100644 --- a/app/helpers/browse_helper.rb +++ b/app/helpers/browse_helper.rb @@ -192,7 +192,7 @@ module BrowseHelper end def colour_preview(key, value) - return nil unless (key =~ /^(|building:|ref:|roof:)colour$/ || key =~ /^(int_)?ref:colour(_(bg|tx))?$/) && !value.nil? + return nil unless key =~ /^(?>.+:)?colour$/ && !value.nil? # see discussion at https://github.com/openstreetmap/openstreetmap-website/pull/1779 # does value look like a colour? ( 3 or 6 digit hex code or w3c colour name) w3c_colors = %w[aliceblue antiquewhite aqua aquamarine azure beige bisque black blanchedalmond blue blueviolet brown burlywood cadetblue chartreuse chocolate coral cornflowerblue cornsilk crimson cyan darkblue darkcyan darkgoldenrod darkgray darkgrey darkgreen darkkhaki darkmagenta darkolivegreen darkorange darkorchid darkred darksalmon darkseagreen darkslateblue darkslategray diff --git a/test/helpers/browse_helper_test.rb b/test/helpers/browse_helper_test.rb index 0c4f2b203..4cb7c4853 100644 --- a/test/helpers/browse_helper_test.rb +++ b/test/helpers/browse_helper_test.rb @@ -375,32 +375,23 @@ class BrowseHelperTest < ActionView::TestCase 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 + colour = colour_preview("seamark:beacon_lateral:colour", "#f00") + assert_equal "#f00", colour + # negative tests: - colour = colour_preview("color", "") + colour = colour_preview("colour", "") assert_nil colour - colour = colour_preview("color", " ") + colour = colour_preview("colour", " ") assert_nil colour - colour = colour_preview("color", nil) + colour = colour_preview("colour", nil) assert_nil colour # ignore US spelling variant