diff options
Diffstat (limited to 'platform/darwin/test/MGLDocumentationExampleTests.swift')
-rw-r--r-- | platform/darwin/test/MGLDocumentationExampleTests.swift | 34 |
1 files changed, 33 insertions, 1 deletions
diff --git a/platform/darwin/test/MGLDocumentationExampleTests.swift b/platform/darwin/test/MGLDocumentationExampleTests.swift index 9fbb0cc329..7d6bdbed54 100644 --- a/platform/darwin/test/MGLDocumentationExampleTests.swift +++ b/platform/darwin/test/MGLDocumentationExampleTests.swift @@ -554,7 +554,39 @@ class MGLDocumentationExampleTests: XCTestCase, MGLMapViewDelegate { XCTAssertNotNil(attributedExpression) } - + + func testMGLShapeSourceOptionClusterProperties() { + //#-example-code + let firstExpression = NSExpression(format: "sum:({$featureAccumulated, sumValue})") + let secondExpression = NSExpression(forKeyPath: "magnitude") + let clusterPropertiesDictionary = ["sumValue" : [firstExpression, secondExpression]] + + let options : [MGLShapeSourceOption : Any] = [.clustered : true, + .clusterProperties: clusterPropertiesDictionary] + //#-end-example-code + let geoJSON: [String: Any] = [ + "type" : "Feature", + "geometry" : [ + "coordinates" : [ + -77.00896639534831, + 38.87031006108791, + 0.0 + ], + "type" : "Point" + ], + "properties" : [ + "cluster" : true, + "cluster_id" : 123, + "point_count" : 4567, + ] + ] + + let clusterShapeData = try! JSONSerialization.data(withJSONObject: geoJSON, options: []) + let shape = try! MGLShape(data: clusterShapeData, encoding: String.Encoding.utf8.rawValue) + let source = MGLShapeSource(identifier: "source", shape: shape, options: options) + mapView.style?.addSource(source) + + } // For testMGLMapView(). func myCustomFunction() {} } |