diff options
author | Fabian Guerra Soto <fabian.guerra@mapbox.com> | 2017-03-08 13:15:52 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-03-08 13:15:52 -0800 |
commit | 05dd34f5842815e007b6152a4d25287537976462 (patch) | |
tree | 68df6942fa8fcccaf605289bcd4ecc5580027119 /platform/darwin | |
parent | ffa78e2545d27d9ff4c79a6d80725318b834e074 (diff) | |
download | qtlocation-mapboxgl-05dd34f5842815e007b6152a4d25287537976462.tar.gz |
[ios, macos] Removed duplicated NSDate test files, improved duration converstion for NSDate+MGLAdditions (#8290)
Diffstat (limited to 'platform/darwin')
-rw-r--r-- | platform/darwin/src/NSDate+MGLAdditions.mm | 5 | ||||
-rw-r--r-- | platform/darwin/test/MGLNSDateAdditionsTests.mm | 14 |
2 files changed, 15 insertions, 4 deletions
diff --git a/platform/darwin/src/NSDate+MGLAdditions.mm b/platform/darwin/src/NSDate+MGLAdditions.mm index 1739805e7c..b45b41f836 100644 --- a/platform/darwin/src/NSDate+MGLAdditions.mm +++ b/platform/darwin/src/NSDate+MGLAdditions.mm @@ -7,8 +7,5 @@ mbgl::Duration MGLDurationFromTimeInterval(NSTimeInterval duration) NSTimeInterval MGLTimeIntervalFromDuration(mbgl::Duration duration) { - std::chrono::nanoseconds nano(duration.count()); - std::chrono::seconds sec = std::chrono::duration_cast<std::chrono::seconds>(nano); - - return sec.count(); + return std::chrono::duration<NSTimeInterval, std::ratio<1>>(duration).count(); } diff --git a/platform/darwin/test/MGLNSDateAdditionsTests.mm b/platform/darwin/test/MGLNSDateAdditionsTests.mm index 474fe763ff..6d8d951024 100644 --- a/platform/darwin/test/MGLNSDateAdditionsTests.mm +++ b/platform/darwin/test/MGLNSDateAdditionsTests.mm @@ -17,9 +17,23 @@ using namespace std::chrono_literals; 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)); } |