summaryrefslogtreecommitdiff
path: root/platform/darwin/test/MGLDocumentationExampleTests.swift
diff options
context:
space:
mode:
Diffstat (limited to 'platform/darwin/test/MGLDocumentationExampleTests.swift')
-rw-r--r--platform/darwin/test/MGLDocumentationExampleTests.swift35
1 files changed, 29 insertions, 6 deletions
diff --git a/platform/darwin/test/MGLDocumentationExampleTests.swift b/platform/darwin/test/MGLDocumentationExampleTests.swift
index 8762af9ba4..668e5f57f8 100644
--- a/platform/darwin/test/MGLDocumentationExampleTests.swift
+++ b/platform/darwin/test/MGLDocumentationExampleTests.swift
@@ -27,11 +27,11 @@ import Mapbox
class MGLDocumentationExampleTests: XCTestCase, MGLMapViewDelegate {
var mapView: MGLMapView!
var styleLoadingExpectation: XCTestExpectation!
+ static let styleURL = Bundle(for: MGLDocumentationExampleTests.self).url(forResource: "one-liner", withExtension: "json")!
override func setUp() {
super.setUp()
- let styleURL = Bundle(for: MGLDocumentationExampleTests.self).url(forResource: "one-liner", withExtension: "json")
- mapView = MGLMapView(frame: CGRect(x: 0, y: 0, width: 256, height: 256), styleURL: styleURL)
+ mapView = MGLMapView(frame: CGRect(x: 0, y: 0, width: 256, height: 256), styleURL: MGLDocumentationExampleTests.styleURL)
mapView.delegate = self
styleLoadingExpectation = expectation(description: "Map view should finish loading style")
waitForExpectations(timeout: 1, handler: nil)
@@ -279,6 +279,27 @@ class MGLDocumentationExampleTests: XCTestCase, MGLMapViewDelegate {
}
func testMGLMapSnapshotter() {
+ let expectation = self.expectation(description: "MGLMapSnapshotter should produce a snapshot")
+ #if os(macOS)
+ var image: NSImage? {
+ didSet {
+ expectation.fulfill()
+ }
+ }
+ #else
+ var image: UIImage? {
+ didSet {
+ expectation.fulfill()
+ }
+ }
+ #endif
+
+ class MGLStyle {
+ static func satelliteStreetsStyleURL() -> URL {
+ return MGLDocumentationExampleTests.styleURL
+ }
+ }
+
//#-example-code
let camera = MGLMapCamera(lookingAtCenter: CLLocationCoordinate2D(latitude: 37.7184, longitude: -122.4365), fromDistance: 100, pitch: 20, heading: 0)
@@ -287,13 +308,15 @@ class MGLDocumentationExampleTests: XCTestCase, MGLMapViewDelegate {
let snapshotter = MGLMapSnapshotter(options: options)
snapshotter.start { (snapshot, error) in
- if error != nil {
- // error handler
- } else {
- // image handler
+ if let error = error {
+ fatalError(error.localizedDescription)
}
+
+ image = snapshot?.image
}
//#-end-example-code
+
+ wait(for: [expectation], timeout: 1)
}
// For testMGLMapView().