diff options
author | Chris Loer <chris.loer@gmail.com> | 2018-10-01 14:06:49 -0700 |
---|---|---|
committer | Chris Loer <chris.loer@mapbox.com> | 2018-10-15 13:15:46 -0700 |
commit | d4c9b21bae5702dff6670dddf771385103e70504 (patch) | |
tree | 06c9cddfee44acb24b4e1d16efefbc9d8edbf14e /test | |
parent | fdfb9386a6732d5a00c5c205013aa1d9ed8b91a4 (diff) | |
download | qtlocation-mapboxgl-d4c9b21bae5702dff6670dddf771385103e70504.tar.gz |
[core, tests] Don't break text-field support "identity functions"
Diffstat (limited to 'test')
-rw-r--r-- | test/style/conversion/function.test.cpp | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/test/style/conversion/function.test.cpp b/test/style/conversion/function.test.cpp index 8ebdcdb9bb..93a9a7e608 100644 --- a/test/style/conversion/function.test.cpp +++ b/test/style/conversion/function.test.cpp @@ -92,3 +92,21 @@ TEST(StyleConversion, TokenStrings) { ASSERT_EQ(*convertTokenStringToExpression("{token} {token"), *concat(vec(get(literal("token")), literal(" "), literal("{token")))); ASSERT_EQ(*convertTokenStringToExpression("{token {token}"), *concat(vec(literal("{token "), get(literal("token"))))); } + + +TEST(StyleConversion, FormattedIdentityFunction) { + // See https://github.com/mapbox/mapbox-gl-js/issues/7311 + // We never introduced this bug on gl-native, but we _almost_ did + Error error; + + auto parseFunction = [&](const std::string& json) { + return convertJSON<PropertyValue<mbgl::style::expression::Formatted>>(json, error, true, false); + }; + + using namespace mbgl::style::expression::dsl; + + auto fn1 = parseFunction(R"({ "property": "name", "type": "identity" })"); + ASSERT_TRUE(bool(fn1)); + ASSERT_TRUE(fn1->isExpression()); + ASSERT_EQ(fn1->asExpression().getExpression(), *format(get(literal("name")))); +} |