@@ -71,8 +71,8 @@ final class StatsDataTextFormatterTests: XCTestCase {
7171 let totalRevenueDelta = StatsDataTextFormatter . createTotalRevenueDelta ( from: previousOrderStats, to: currentOrderStats)
7272
7373 // Then
74- XCTAssertEqual ( totalRevenueDelta. value, 0.5 )
7574 XCTAssertEqual ( totalRevenueDelta. string, " +50% " )
75+ XCTAssertEqual ( totalRevenueDelta. direction, . positive)
7676 }
7777
7878 // MARK: Orders Stats
@@ -116,8 +116,8 @@ final class StatsDataTextFormatterTests: XCTestCase {
116116 let orderCountDelta = StatsDataTextFormatter . createOrderCountDelta ( from: previousOrderStats, to: currentOrderStats)
117117
118118 // Then
119- XCTAssertEqual ( orderCountDelta. value, 0.5 )
120119 XCTAssertEqual ( orderCountDelta. string, " +50% " )
120+ XCTAssertEqual ( orderCountDelta. direction, . positive)
121121 }
122122
123123 func test_createAverageOrderValueText_does_not_return_decimal_points_for_integer_value( ) {
@@ -155,8 +155,8 @@ final class StatsDataTextFormatterTests: XCTestCase {
155155 let averageOrderValueDelta = StatsDataTextFormatter . createAverageOrderValueDelta ( from: previousOrderStats, to: currentOrderStats)
156156
157157 // Then
158- XCTAssertEqual ( averageOrderValueDelta. value, 0.5 )
159158 XCTAssertEqual ( averageOrderValueDelta. string, " +50% " )
159+ XCTAssertEqual ( averageOrderValueDelta. direction, . positive)
160160 }
161161
162162 // MARK: Views and Visitors Stats
@@ -198,8 +198,8 @@ final class StatsDataTextFormatterTests: XCTestCase {
198198 let visitorCountDelta = StatsDataTextFormatter . createVisitorCountDelta ( from: previousSiteStats, to: currentSiteStats)
199199
200200 // Then
201- XCTAssertEqual ( visitorCountDelta. value, 0.5 )
202201 XCTAssertEqual ( visitorCountDelta. string, " +50% " )
202+ XCTAssertEqual ( visitorCountDelta. direction, . positive)
203203 }
204204
205205 // MARK: Conversion Stats
@@ -255,7 +255,7 @@ final class StatsDataTextFormatterTests: XCTestCase {
255255
256256 // MARK: Delta Calculations
257257
258- func test_createDeltaText_returns_expected_positive_text ( ) {
258+ func test_createDeltaPercentage_returns_expected_positive_delta ( ) {
259259 // Given
260260 let previousValue : Double = 100
261261 let currentValue : Double = 150
@@ -264,11 +264,11 @@ final class StatsDataTextFormatterTests: XCTestCase {
264264 let delta = StatsDataTextFormatter . createDeltaPercentage ( from: previousValue, to: currentValue)
265265
266266 // Then
267- XCTAssertEqual ( delta. value, 0.5 )
268267 XCTAssertEqual ( delta. string, " +50% " )
268+ XCTAssertEqual ( delta. direction, . positive)
269269 }
270270
271- func test_createDeltaText_returns_expected_negative_text ( ) {
271+ func test_createDeltaPercentage_returns_expected_negative_delta ( ) {
272272 // Given
273273 let previousValue : Double = 100
274274 let currentValue : Double = 50
@@ -277,11 +277,24 @@ final class StatsDataTextFormatterTests: XCTestCase {
277277 let delta = StatsDataTextFormatter . createDeltaPercentage ( from: previousValue, to: currentValue)
278278
279279 // Then
280- XCTAssertEqual ( delta. value, - 0.5 )
281280 XCTAssertEqual ( delta. string, " -50% " )
281+ XCTAssertEqual ( delta. direction, . negative)
282282 }
283283
284- func test_createDeltaText_returns_100_percent_change_when_previous_value_is_zero( ) {
284+ func test_createDeltaPercentage_returns_expected_zero_delta( ) {
285+ // Given
286+ let previousValue : Double = 100
287+ let currentValue : Double = 100
288+
289+ // When
290+ let delta = StatsDataTextFormatter . createDeltaPercentage ( from: previousValue, to: currentValue)
291+
292+ // Then
293+ XCTAssertEqual ( delta. string, " +0% " )
294+ XCTAssertEqual ( delta. direction, . zero)
295+ }
296+
297+ func test_createDeltaPercentage_returns_100_percent_change_when_previous_value_is_zero( ) {
285298 // Given
286299 let previousValue : Double = 0
287300 let currentValue : Double = 10
@@ -290,11 +303,11 @@ final class StatsDataTextFormatterTests: XCTestCase {
290303 let delta = StatsDataTextFormatter . createDeltaPercentage ( from: previousValue, to: currentValue)
291304
292305 // Then
293- XCTAssertEqual ( delta. value, 1 )
294306 XCTAssertEqual ( delta. string, " +100% " )
307+ XCTAssertEqual ( delta. direction, . positive)
295308 }
296309
297- func test_createDeltaText_returns_negative_100_percent_change_when_current_value_is_zero ( ) {
310+ func test_createDeltaPercentage_returns_negative_100_percent_change_when_current_value_is_zero ( ) {
298311 // Given
299312 let previousValue : Double = 10
300313 let currentValue : Double = 0
@@ -303,7 +316,7 @@ final class StatsDataTextFormatterTests: XCTestCase {
303316 let delta = StatsDataTextFormatter . createDeltaPercentage ( from: previousValue, to: currentValue)
304317
305318 // Then
306- XCTAssertEqual ( delta. value, - 1 )
307319 XCTAssertEqual ( delta. string, " -100% " )
320+ XCTAssertEqual ( delta. direction, . negative)
308321 }
309322}
0 commit comments