Skip to content

Commit 6de1ef0

Browse files
committed
add tests for MS case
1 parent 8fc9bbb commit 6de1ef0

File tree

1 file changed

+30
-0
lines changed

1 file changed

+30
-0
lines changed

WooCommerce/WooCommerceTests/System/WaitingTimeTrackerTests.swift

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,36 @@ class WaitingTimeTrackerTests: XCTestCase {
9191
XCTAssertEqual(testAnalytics.lastReceivedEventName, WooAnalyticsStat.applicationOpenedWaitingTimeLoaded.rawValue)
9292
}
9393

94+
func test_timeElapsed_evaluation_in_milliseconds_is_correct() {
95+
// Given
96+
var currentTimeCallCounter = 0.0
97+
let expectedReceivedWaitingTime = 10_000.0 // 10s * 1000 ms
98+
let waitingTracker = WaitingTimeTracker(trackScenario: .orderDetails,
99+
analyticsService: testAnalytics) {
100+
currentTimeCallCounter += 1
101+
return currentTimeCallCounter * 10
102+
}
103+
104+
// When
105+
waitingTracker.end(using: .milliseconds)
106+
107+
// Then
108+
XCTAssertEqual(testAnalytics.lastReceivedWaitingTime, expectedReceivedWaitingTime)
109+
}
110+
111+
func test_track_scenario_triggers_expected_analytics_stat_in_milliseconds() {
112+
// Given
113+
let waitingTracker = WaitingTimeTracker(trackScenario: .pointOfSaleLoaded,
114+
analyticsService: testAnalytics,
115+
currentTimestampSeconds: { 0 })
116+
117+
// When
118+
waitingTracker.end(using: .milliseconds)
119+
120+
// Then
121+
XCTAssertEqual(testAnalytics.lastReceivedEventName, WooAnalyticsStat.pointOfSaleLoaded.rawValue)
122+
}
123+
94124
class TestAnalytics: Analytics {
95125
var lastReceivedEventName: String? = nil
96126
var lastReceivedWaitingTime: TimeInterval? = nil

0 commit comments

Comments
 (0)