summaryrefslogtreecommitdiff
path: root/platform/darwin/test/MGLFillStyleLayerTests.mm
diff options
context:
space:
mode:
Diffstat (limited to 'platform/darwin/test/MGLFillStyleLayerTests.mm')
-rw-r--r--platform/darwin/test/MGLFillStyleLayerTests.mm41
1 files changed, 41 insertions, 0 deletions
diff --git a/platform/darwin/test/MGLFillStyleLayerTests.mm b/platform/darwin/test/MGLFillStyleLayerTests.mm
index c03b22c399..85f0b24fa7 100644
--- a/platform/darwin/test/MGLFillStyleLayerTests.mm
+++ b/platform/darwin/test/MGLFillStyleLayerTests.mm
@@ -2,10 +2,12 @@
// Edit platform/darwin/scripts/generate-style-code.js, then run `make darwin-style-code`.
#import "MGLStyleLayerTests.h"
+#import "../../darwin/src/NSDate+MGLAdditions.h"
#import "MGLStyleLayer_Private.h"
#include <mbgl/style/layers/fill_layer.hpp>
+#include <mbgl/style/transition_options.hpp>
@interface MGLFillLayerTests : MGLStyleLayerTests
@end
@@ -43,6 +45,9 @@
XCTAssertTrue(layer.rawLayer->is<mbgl::style::FillLayer>());
auto rawLayer = layer.rawLayer->as<mbgl::style::FillLayer>();
+ MGLTransition transitionTest = MGLTransitionMake(5, 4);
+
+
// fill-antialias
{
XCTAssertTrue(rawLayer->getFillAntialias().isUndefined(),
@@ -137,6 +142,15 @@
@"Unsetting fillColor should return fill-color to the default value.");
XCTAssertEqualObjects(layer.fillColor, defaultStyleValue,
@"fillColor should return the default value after being unset.");
+ // Transition property test
+ layer.fillColorTransition = transitionTest;
+ auto toptions = rawLayer->getFillColorTransition();
+ XCTAssert(toptions.delay && MGLTimeIntervalFromDuration(*toptions.delay) == transitionTest.delay);
+ XCTAssert(toptions.duration && MGLTimeIntervalFromDuration(*toptions.duration) == transitionTest.duration);
+
+ MGLTransition fillColorTransition = layer.fillColorTransition;
+ XCTAssertEqual(fillColorTransition.delay, transitionTest.delay);
+ XCTAssertEqual(fillColorTransition.duration, transitionTest.duration);
}
// fill-opacity
@@ -194,6 +208,15 @@
@"Unsetting fillOpacity should return fill-opacity to the default value.");
XCTAssertEqualObjects(layer.fillOpacity, defaultStyleValue,
@"fillOpacity should return the default value after being unset.");
+ // Transition property test
+ layer.fillOpacityTransition = transitionTest;
+ auto toptions = rawLayer->getFillOpacityTransition();
+ XCTAssert(toptions.delay && MGLTimeIntervalFromDuration(*toptions.delay) == transitionTest.delay);
+ XCTAssert(toptions.duration && MGLTimeIntervalFromDuration(*toptions.duration) == transitionTest.duration);
+
+ MGLTransition fillOpacityTransition = layer.fillOpacityTransition;
+ XCTAssertEqual(fillOpacityTransition.delay, transitionTest.delay);
+ XCTAssertEqual(fillOpacityTransition.duration, transitionTest.duration);
}
// fill-outline-color
@@ -251,6 +274,15 @@
@"Unsetting fillOutlineColor should return fill-outline-color to the default value.");
XCTAssertEqualObjects(layer.fillOutlineColor, defaultStyleValue,
@"fillOutlineColor should return the default value after being unset.");
+ // Transition property test
+ layer.fillOutlineColorTransition = transitionTest;
+ auto toptions = rawLayer->getFillOutlineColorTransition();
+ XCTAssert(toptions.delay && MGLTimeIntervalFromDuration(*toptions.delay) == transitionTest.delay);
+ XCTAssert(toptions.duration && MGLTimeIntervalFromDuration(*toptions.duration) == transitionTest.duration);
+
+ MGLTransition fillOutlineColorTransition = layer.fillOutlineColorTransition;
+ XCTAssertEqual(fillOutlineColorTransition.delay, transitionTest.delay);
+ XCTAssertEqual(fillOutlineColorTransition.duration, transitionTest.duration);
}
// fill-pattern
@@ -290,6 +322,15 @@
XCTAssertThrowsSpecificNamed(layer.fillPattern = functionStyleValue, NSException, NSInvalidArgumentException, @"MGLStyleValue should raise an exception if it is applied to a property that cannot support it");
functionStyleValue = [MGLStyleValue<NSString *> valueWithInterpolationMode:MGLInterpolationModeInterval compositeStops:@{@18: constantStyleValue} attributeName:@"" options:nil];
XCTAssertThrowsSpecificNamed(layer.fillPattern = functionStyleValue, NSException, NSInvalidArgumentException, @"MGLStyleValue should raise an exception if it is applied to a property that cannot support it");
+ // Transition property test
+ layer.fillPatternTransition = transitionTest;
+ auto toptions = rawLayer->getFillPatternTransition();
+ XCTAssert(toptions.delay && MGLTimeIntervalFromDuration(*toptions.delay) == transitionTest.delay);
+ XCTAssert(toptions.duration && MGLTimeIntervalFromDuration(*toptions.duration) == transitionTest.duration);
+
+ MGLTransition fillPatternTransition = layer.fillPatternTransition;
+ XCTAssertEqual(fillPatternTransition.delay, transitionTest.delay);
+ XCTAssertEqual(fillPatternTransition.duration, transitionTest.duration);
}
// fill-translate