From bc54bc8f5886b14d60cc5846c140047fb62a1994 Mon Sep 17 00:00:00 2001 From: Tobrun Date: Wed, 29 Aug 2018 18:10:10 +0200 Subject: [android] - add quotes to toString representation of a String literal --- .../com/mapbox/mapboxsdk/style/expressions/Expression.java | 13 +++++-------- .../mapbox/mapboxsdk/style/expressions/ExpressionTest.java | 11 +++++++++-- 2 files changed, 14 insertions(+), 10 deletions(-) diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/style/expressions/Expression.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/style/expressions/Expression.java index 626d83d299..2322d8211b 100644 --- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/style/expressions/Expression.java +++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/style/expressions/Expression.java @@ -2834,8 +2834,8 @@ public class Expression { * CircleLayer circleLayer = new CircleLayer("layer-id", "source-id"); * circleLayer.setProperties( * circleColor(switchCase( - eq(literal("it"), resolvedLocale(collator(true, true, "it"))), literal(ColorUtils.colorToRgbaString(Color.GREEN)), - literal(ColorUtils.colorToRgbaString(Color.RED)))) + * eq(literal("it"), resolvedLocale(collator(true, true, "it"))), literal(ColorUtils.colorToRgbaString(Color.GREEN)), + * literal(ColorUtils.colorToRgbaString(Color.RED)))) * ); * } * @@ -3921,13 +3921,10 @@ public class Expression { // special case for handling unusual input like 'rgba(r, g, b, a)' if (literalValue instanceof String) { - if (((String) literalValue).contains(",")) { - builder.append("\"").append(literalValue).append("\""); - continue; - } + builder.append("\"").append(literalValue).append("\""); + } else { + builder.append(literalValue); } - - builder.append(literalValue); } else { builder.append(argument.toString()); } diff --git a/platform/android/MapboxGLAndroidSDK/src/test/java/com/mapbox/mapboxsdk/style/expressions/ExpressionTest.java b/platform/android/MapboxGLAndroidSDK/src/test/java/com/mapbox/mapboxsdk/style/expressions/ExpressionTest.java index 79bcdd7b5e..b38026a572 100644 --- a/platform/android/MapboxGLAndroidSDK/src/test/java/com/mapbox/mapboxsdk/style/expressions/ExpressionTest.java +++ b/platform/android/MapboxGLAndroidSDK/src/test/java/com/mapbox/mapboxsdk/style/expressions/ExpressionTest.java @@ -1101,7 +1101,7 @@ public class ExpressionTest { @Test public void testExpressionConcatToString() throws Exception { - String expected = "[\"concat\", foo, bar]"; + String expected = "[\"concat\", \"foo\", \"bar\"]"; String actual = concat(literal("foo"), literal("bar")).toString(); assertEquals("toString should match", expected, actual); } @@ -1116,7 +1116,7 @@ public class ExpressionTest { @Test public void testExpressionExponentialToString() throws Exception { String expected = "[\"interpolate\", [\"cubic-bezier\", 1.0, 1.0, 1.0, 1.0]," - + " [\"get\", x], 0.0, 100.0, 100.0, 200.0]"; + + " [\"get\", \"x\"], 0.0, 100.0, 100.0, 200.0]"; String actual = interpolate(cubicBezier(literal(1), literal(1), literal(1), literal(1)), get(literal("x")), literal(0), literal(100), literal(100), literal(200)).toString(); assertEquals("toString should match", expected, actual); @@ -1367,4 +1367,11 @@ public class ExpressionTest { String actual = collator(literal(false), eq(literal(2), literal(1)), literal("it")).toString(); assertEquals("expression should match", expected, actual); } + + @Test + public void testStringReverseConversion() { + String expected = "[\"to-string\", [\"get\", \"name_en\"]]"; + String actual = Expression.toString(get("name_en")).toString(); + assertEquals("Reverse string conversion should match", expected, actual); + } } \ No newline at end of file -- cgit v1.2.1