|
1 | 1 | #import <Mapbox/Mapbox.h>
|
2 | 2 | #import <XCTest/XCTest.h>
|
3 | 3 |
|
| 4 | +#if TARGET_OS_IPHONE |
| 5 | +#import "MGLUserLocation_Private.h" |
| 6 | +#endif |
4 | 7 |
|
5 | 8 | @interface MGLCodingTests : XCTestCase
|
6 | 9 | @end
|
@@ -423,6 +426,44 @@ - (void)testAnnotationView {
|
423 | 426 | XCTAssertEqualObjects(NSStringFromCGVector(annotationView.centerOffset), NSStringFromCGVector(unarchivedAnnotationView.centerOffset));
|
424 | 427 | XCTAssertEqual(annotationView.scalesWithViewingDistance, unarchivedAnnotationView.scalesWithViewingDistance);
|
425 | 428 | }
|
426 |
| -#end |
| 429 | +#endif |
| 430 | + |
| 431 | +#if TARGET_OS_IPHONE |
| 432 | +- (void)testUserLocation { |
| 433 | + MGLUserLocation *userLocation = [[MGLUserLocation alloc] init]; |
| 434 | + userLocation.location = [[CLLocation alloc] initWithLatitude:1 longitude:1]; |
| 435 | + |
| 436 | + NSString *filePath = [self temporaryFilePathForClass:[MGLUserLocation class]]; |
| 437 | + [NSKeyedArchiver archiveRootObject:userLocation toFile:filePath]; |
| 438 | + |
| 439 | + MGLUserLocation *unarchivedUserLocation = [NSKeyedUnarchiver unarchiveObjectWithFile:filePath]; |
| 440 | + |
| 441 | + XCTAssertEqualObjects(userLocation, unarchivedUserLocation); |
| 442 | + unarchivedUserLocation.location = [[CLLocation alloc] initWithLatitude:10 longitude:10]; |
| 443 | + XCTAssertNotEqualObjects(userLocation, unarchivedUserLocation); |
| 444 | +} |
| 445 | +#endif |
| 446 | + |
| 447 | +#if TARGET_OS_IPHONE |
| 448 | +- (void)testUserLocationAnnotationView { |
| 449 | + MGLUserLocationAnnotationView *annotationView = [[MGLUserLocationAnnotationView alloc] init]; |
| 450 | + annotationView.enabled = NO; |
| 451 | + annotationView.selected = YES; |
| 452 | + annotationView.draggable = YES; |
| 453 | + annotationView.centerOffset = CGVectorMake(10, 10); |
| 454 | + annotationView.scalesWithViewingDistance = NO; |
| 455 | + |
| 456 | + NSString *filePath = [self temporaryFilePathForClass:[MGLUserLocationAnnotationView class]]; |
| 457 | + [NSKeyedArchiver archiveRootObject:annotationView toFile:filePath]; |
| 458 | + |
| 459 | + MGLUserLocationAnnotationView *unarchivedAnnotationView = [NSKeyedUnarchiver unarchiveObjectWithFile:filePath]; |
| 460 | + |
| 461 | + XCTAssertEqual(annotationView.enabled, unarchivedAnnotationView.enabled); |
| 462 | + XCTAssertEqual(annotationView.selected, unarchivedAnnotationView.selected); |
| 463 | + XCTAssertEqual(annotationView.draggable, unarchivedAnnotationView.draggable); |
| 464 | + XCTAssertEqualObjects(NSStringFromCGVector(annotationView.centerOffset), NSStringFromCGVector(unarchivedAnnotationView.centerOffset)); |
| 465 | + XCTAssertEqual(annotationView.scalesWithViewingDistance, unarchivedAnnotationView.scalesWithViewingDistance); |
| 466 | +} |
| 467 | +#endif |
427 | 468 |
|
428 | 469 | @end
|
0 commit comments