[core] Fix some of the legacy interval function expression tests
The tests for conversion of legacy interval functions to expressions expects that the first stop in the "step" expression be omitted.
This commit is contained in:
@@ -23,19 +23,12 @@
|
||||
"expression-tests/legacy/exponential/number-default": "https://github.com/mapbox/mapbox-gl-native/issues/12747",
|
||||
"expression-tests/legacy/identity/color-default": "https://github.com/mapbox/mapbox-gl-native/issues/12747",
|
||||
"expression-tests/legacy/identity/enum-default": "https://github.com/mapbox/mapbox-gl-native/issues/12747",
|
||||
"expression-tests/legacy/interval/array": "https://github.com/mapbox/mapbox-gl-native/issues/12747",
|
||||
"expression-tests/legacy/interval/array-default": "https://github.com/mapbox/mapbox-gl-native/issues/12747",
|
||||
"expression-tests/legacy/interval/color": "https://github.com/mapbox/mapbox-gl-native/issues/12747",
|
||||
"expression-tests/legacy/interval/color-default": "https://github.com/mapbox/mapbox-gl-native/issues/12747",
|
||||
"expression-tests/legacy/interval/composite": "https://github.com/mapbox/mapbox-gl-native/issues/12747",
|
||||
"expression-tests/legacy/interval/composite-default": "https://github.com/mapbox/mapbox-gl-native/issues/12747",
|
||||
"expression-tests/legacy/interval/duplicate-stops": "https://github.com/mapbox/mapbox-gl-native/issues/12747",
|
||||
"expression-tests/legacy/interval/implicit": "https://github.com/mapbox/mapbox-gl-native/issues/12747",
|
||||
"expression-tests/legacy/interval/number": "https://github.com/mapbox/mapbox-gl-native/issues/12747",
|
||||
"expression-tests/legacy/interval/number-default": "https://github.com/mapbox/mapbox-gl-native/issues/12747",
|
||||
"expression-tests/legacy/interval/string": "https://github.com/mapbox/mapbox-gl-native/issues/12747",
|
||||
"expression-tests/legacy/interval/string-default": "https://github.com/mapbox/mapbox-gl-native/issues/12747",
|
||||
"expression-tests/legacy/interval/tokens-property": "https://github.com/mapbox/mapbox-gl-native/issues/12747",
|
||||
"expression-tests/legacy/interval/tokens-zoom": "https://github.com/mapbox/mapbox-gl-native/issues/12747",
|
||||
"query-tests/geometry/multilinestring": "needs investigation",
|
||||
"query-tests/geometry/multipolygon": "needs investigation",
|
||||
|
||||
@@ -356,6 +356,17 @@ static optional<std::map<double, std::unique_ptr<Expression>>> convertStops(type
|
||||
return { std::move(stops) };
|
||||
}
|
||||
|
||||
static void omitFirstStop(std::map<double, std::unique_ptr<Expression>>& stops) {
|
||||
double min = std::numeric_limits<double>::max();
|
||||
for (auto& s : stops) {
|
||||
if (s.first < min) {
|
||||
min = s.first;
|
||||
}
|
||||
}
|
||||
stops.emplace(-std::numeric_limits<double>::infinity(), std::move(stops[min]));
|
||||
stops.erase(min);
|
||||
}
|
||||
|
||||
template <class T>
|
||||
optional<std::map<T, std::unique_ptr<Expression>>> convertBranches(type::Type type,
|
||||
const Convertible& value,
|
||||
@@ -472,6 +483,7 @@ static optional<std::unique_ptr<Expression>> convertIntervalFunction(type::Type
|
||||
if (!stops) {
|
||||
return nullopt;
|
||||
}
|
||||
omitFirstStop(*stops);
|
||||
return step(type, std::move(input), std::move(*stops));
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user