diff options
Diffstat (limited to 'platform/darwin/test/MGLNSDateAdditionsTests.mm')
-rw-r--r-- | platform/darwin/test/MGLNSDateAdditionsTests.mm | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/platform/darwin/test/MGLNSDateAdditionsTests.mm b/platform/darwin/test/MGLNSDateAdditionsTests.mm new file mode 100644 index 0000000000..6d8d951024 --- /dev/null +++ b/platform/darwin/test/MGLNSDateAdditionsTests.mm @@ -0,0 +1,40 @@ +#import <XCTest/XCTest.h> + +#include <mbgl/util/chrono.hpp> +#import "../../darwin/src/NSDate+MGLAdditions.h" + +using namespace std::chrono_literals; + +@interface MGLNSDateAdditionsTests : XCTestCase +@end + +@implementation MGLNSDateAdditionsTests + +- (void)testDurationToNSTimeInterval { + + NSTimeInterval timeInterval = 5; + mbgl::Duration duration = MGLDurationFromTimeInterval(timeInterval); + NSTimeInterval durationTimeInterval = MGLTimeIntervalFromDuration(duration); + + mbgl::Duration expectedDuration = 5s; + mbgl::Duration expectedDurationMiliSeconds = 5000ms; + mbgl::Duration expectedDurationMicroSeconds = 5000000us; + mbgl::Duration expectedDurationNanoSeconds = 5000000000ns; + + XCTAssertEqual(timeInterval, durationTimeInterval); + XCTAssertEqual(timeInterval, MGLTimeIntervalFromDuration(expectedDuration)); + XCTAssertEqual(timeInterval, MGLTimeIntervalFromDuration(expectedDurationMiliSeconds)); + XCTAssertEqual(timeInterval, MGLTimeIntervalFromDuration(expectedDurationMicroSeconds)); + XCTAssertEqual(timeInterval, MGLTimeIntervalFromDuration(expectedDurationNanoSeconds)); + + mbgl::Duration durationMiliSeconds = 2500ms; + mbgl::Duration durationMicroSeconds = 2500000us; + mbgl::Duration durationNanoSeconds = 2500000000ns; + + XCTAssertEqual(NSTimeInterval(2.5), MGLTimeIntervalFromDuration(durationMiliSeconds)); + XCTAssertEqual(NSTimeInterval(2.5), MGLTimeIntervalFromDuration(durationMicroSeconds)); + XCTAssertEqual(NSTimeInterval(2.5), MGLTimeIntervalFromDuration(durationNanoSeconds)); + +} + +@end |