diff options
author | Tobrun <tobrun.van.nuland@gmail.com> | 2018-08-29 18:10:10 +0200 |
---|---|---|
committer | Tobrun <tobrun.van.nuland@gmail.com> | 2018-08-29 18:10:10 +0200 |
commit | bc54bc8f5886b14d60cc5846c140047fb62a1994 (patch) | |
tree | e728597c180bb68f62cab6b7c130465bfc5cb986 | |
parent | 4061e9026e0a90c10f1f2cc77322e05ac8a45cf8 (diff) | |
download | qtlocation-mapboxgl-upstream/tvn-expression-string-quotes.tar.gz |
[android] - add quotes to toString representation of a String literalupstream/tvn-expression-string-quotes
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)))) * ); * } * </pre> @@ -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 |