summaryrefslogtreecommitdiff
path: root/platform/darwin/test/MGLNSDateAdditionsTests.mm
diff options
context:
space:
mode:
Diffstat (limited to 'platform/darwin/test/MGLNSDateAdditionsTests.mm')
-rw-r--r--platform/darwin/test/MGLNSDateAdditionsTests.mm40
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