# Conflicts: # .travis.yml # circle.yml # cmake/core-files.cmake # include/mbgl/style/function/composite_function.hpp # platform/android/CHANGELOG.md # platform/android/MapboxGLAndroidSDK/build.gradle # platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/Mapbox.java # platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/constants/MyBearingTracking.java # platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/constants/MyLocationTracking.java # platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/location/LocationSource.java # platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/CameraChangeDispatcher.java # platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapGestureDetector.java # platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java # platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapboxMap.java # platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/TrackingSettings.java # platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/Transform.java # platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/widgets/MyLocationView.java # platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/style/light/Light.java # platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/style/light/Position.java # platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/style/light/light.java.ejs # platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/utils/BitmapUtils.java # platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/LightTest.java # platform/android/MapboxGLAndroidSDKTestApp/src/androidTest/java/com/mapbox/mapboxsdk/testapp/style/light.junit.ejs # platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/camera/CameraPositionActivity.java # platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/userlocation/MockLocationEngine.java # platform/android/dependencies.gradle # platform/android/src/native_map_view.cpp # platform/darwin/scripts/generate-style-code.js # platform/darwin/src/MGLGeometry_Private.h # platform/darwin/src/MGLLight.h # platform/darwin/src/MGLLight.mm # platform/darwin/src/MGLSource.h # platform/darwin/src/MGLStyle.h # platform/darwin/src/MGLStyle.mm # platform/darwin/test/MGLLightTest.mm # platform/default/default_file_source.cpp # platform/ios/CHANGELOG.md # platform/ios/Mapbox-iOS-SDK-symbols.podspec # platform/ios/Mapbox-iOS-SDK.podspec # platform/ios/resources/Images.xcassets/default_marker.imageset/default_marker.pdf # platform/macos/CHANGELOG.md # scripts/generate-shaders.js # src/mbgl/layout/symbol_layout.cpp # src/mbgl/programs/program.hpp # src/mbgl/programs/symbol_program.hpp # src/mbgl/programs/uniforms.hpp # src/mbgl/renderer/frame_history.cpp # src/mbgl/renderer/paint_property_binder.hpp # src/mbgl/shaders/line.cpp # src/mbgl/shaders/line_pattern.cpp # src/mbgl/shaders/line_sdf.cpp # src/mbgl/sprite/sprite_atlas.hpp # src/mbgl/style/layers/line_layer_properties.hpp # src/mbgl/style/sources/geojson_source.cpp # src/mbgl/style/style.cpp # src/mbgl/text/glyph_atlas.hpp # src/mbgl/tile/geometry_tile.cpp # src/mbgl/tile/geometry_tile.hpp # test/style/style.test.cpp
93 lines
4.7 KiB
Plaintext
93 lines
4.7 KiB
Plaintext
<%
|
||
const type = locals.type;
|
||
const properties = locals.properties;
|
||
-%>
|
||
// This file is generated.
|
||
// Edit platform/darwin/scripts/generate-style-code.js, then run `make darwin-style-code`.
|
||
#import <XCTest/XCTest.h>
|
||
#import <Mapbox/Mapbox.h>
|
||
|
||
#import "MGLLight_Private.h"
|
||
|
||
#import "../../darwin/src/NSDate+MGLAdditions.h"
|
||
|
||
#import <mbgl/style/light.hpp>
|
||
#import <mbgl/style/types.hpp>
|
||
#include <mbgl/style/transition_options.hpp>
|
||
|
||
@interface MGLLightTest : XCTestCase
|
||
|
||
@end
|
||
|
||
@implementation MGLLightTest
|
||
|
||
- (void)testProperties {
|
||
|
||
MGLTransition defaultTransition = MGLTransitionMake(0, 0);
|
||
MGLTransition transition = MGLTransitionMake(6, 3);
|
||
mbgl::style::TransitionOptions transitionOptions { { MGLDurationFromTimeInterval(6) }, { MGLDurationFromTimeInterval(3) } };
|
||
|
||
<% for (const property of properties) { -%>
|
||
// <%- property.name %>
|
||
{
|
||
mbgl::style::Light light;
|
||
MGLLight *mglLight = [[MGLLight alloc] initWithMBGLLight:&light];
|
||
auto lightFromMGLlight = [mglLight mbglLight];
|
||
|
||
XCTAssertEqual(light.getDefault<%- camelize(property.name) -%>(), lightFromMGLlight.get<%- camelize(property.name) -%>());
|
||
<% if (property.transition) { -%>
|
||
auto <%- camelizeWithLeadingLowercase(property.name) -%>Transition = lightFromMGLlight.get<%- camelize(property.name) -%>Transition();
|
||
XCTAssert(<%- camelizeWithLeadingLowercase(property.name) -%>Transition.delay && MGLTimeIntervalFromDuration(*<%- camelizeWithLeadingLowercase(property.name) -%>Transition.delay) == defaultTransition.delay);
|
||
XCTAssert(<%- camelizeWithLeadingLowercase(property.name) -%>Transition.duration && MGLTimeIntervalFromDuration(*<%- camelizeWithLeadingLowercase(property.name) -%>Transition.duration) == defaultTransition.duration);
|
||
|
||
<% } -%>
|
||
<% if (property.type == "enum" && property.default) { -%>
|
||
XCTAssert([mglLight.<%- camelizeWithLeadingLowercase(property.name) -%> isKindOfClass:[MGLConstantStyleValue class]], @"mglLight.<%- camelizeWithLeadingLowercase(property.name) -%> isn’t a MGLConstantStyleValue.");
|
||
NSValue *<%- camelizeWithLeadingLowercase(property.name) -%>Value = ((MGLConstantStyleValue *)mglLight.<%- camelizeWithLeadingLowercase(property.name) -%>).rawValue;
|
||
XCTAssertEqual(<%- camelizeWithLeadingLowercase(property.name) -%>Value.MGLLight<%- camelize(property.name) -%>Value, MGLLight<%- camelize(property.name) -%><%- camelize(property.default) -%>);
|
||
|
||
<% } -%>
|
||
<% if (property.type == "array") { -%>
|
||
std::array<float, 3> positionArray = { { 6, 180, 90 } };
|
||
mbgl::style::Position position = { positionArray };
|
||
mbgl::style::PropertyValue<mbgl::style::Position> propertyValue = { position };
|
||
<% } else { -%>
|
||
mbgl::style::PropertyValue<<%- mbglType(property) %>> propertyValue = { <%- mbglTestValue(property, type) %> };
|
||
<% } -%>
|
||
light.set<%- camelize(property.name) -%>(propertyValue);
|
||
<% if (property.transition) { -%>
|
||
light.set<%- camelize(property.name) -%>Transition(transitionOptions);
|
||
|
||
<% } -%>
|
||
mglLight = [[MGLLight alloc] initWithMBGLLight:&light];
|
||
lightFromMGLlight = [mglLight mbglLight];
|
||
|
||
XCTAssertEqual(light.get<%- camelize(property.name) -%>(), lightFromMGLlight.get<%- camelize(property.name) -%>());
|
||
<% if (property.transition) { -%>
|
||
<%- camelizeWithLeadingLowercase(property.name) -%>Transition = lightFromMGLlight.get<%- camelize(property.name) -%>Transition();
|
||
XCTAssert(<%- camelizeWithLeadingLowercase(property.name) -%>Transition.delay && MGLTimeIntervalFromDuration(*<%- camelizeWithLeadingLowercase(property.name) -%>Transition.delay) == transition.delay);
|
||
XCTAssert(<%- camelizeWithLeadingLowercase(property.name) -%>Transition.duration && MGLTimeIntervalFromDuration(*<%- camelizeWithLeadingLowercase(property.name) -%>Transition.duration) == transition.duration);
|
||
|
||
<% } -%>
|
||
}
|
||
|
||
<% } -%>
|
||
}
|
||
|
||
- (void)testValueAdditions {
|
||
MGLSphericalPosition position = MGLSphericalPositionMake(1.15, 210, 30);
|
||
|
||
XCTAssertEqual([NSValue valueWithMGLSphericalPosition:position].MGLSphericalPositionValue.radial, position.radial);
|
||
XCTAssertEqual([NSValue valueWithMGLSphericalPosition:position].MGLSphericalPositionValue.azimuthal, position.azimuthal);
|
||
XCTAssertEqual([NSValue valueWithMGLSphericalPosition:position].MGLSphericalPositionValue.polar, position.polar);
|
||
<% for (const property of properties) { -%>
|
||
<% if (property.type == "enum") { -%>
|
||
<% for (const value in property.values) { -%>
|
||
XCTAssertEqual([NSValue valueWithMGLLight<%- camelize(property.name) %>:MGLLight<%- camelize(property.name) %><%- camelize(value) %>].MGLLight<%- camelize(property.name) %>Value, MGLLight<%- camelize(property.name) %><%- camelize(value) %>);
|
||
<% } -%>
|
||
<% } -%>
|
||
<% } -%>
|
||
}
|
||
|
||
@end
|