Skip to content

Commit cfb0f98

Browse files
committed
OrderSearchStarterVM: Update tests to use CellViewModel instead
1 parent e102f08 commit cfb0f98

File tree

2 files changed

+21
-9
lines changed

2 files changed

+21
-9
lines changed

WooCommerce/WooCommerceTests/Extensions/NumberFormatter+LocalizedUpToNinetyNineTests.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import XCTest
44
@testable import WooCommerce
55

66
final class NumberFormatterLocalizedUpToNinetyNineTests: XCTestCase {
7-
7+
88
func testItReturnsNinetyNinePlusIfTheNumberIsGreaterThanNinetyNine() {
99
let localized = NumberFormatter.localizedUpToNinetyNine(100)
1010

WooCommerce/WooCommerceTests/ViewRelated/Search/Order/OrderSearchStarterViewModelTests.swift

Lines changed: 20 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@ import protocol Storage.StorageType
88

99
@testable import WooCommerce
1010

11+
private typealias CellViewModel = OrderSearchStarterViewModel.CellViewModel
12+
1113
/// Tests for `OrderSearchStarterViewModel`
1214
///
1315
final class OrderSearchStarterViewModelTests: XCTestCase {
@@ -46,9 +48,8 @@ final class OrderSearchStarterViewModelTests: XCTestCase {
4648

4749
// Then
4850
XCTAssertEqual(viewModel.numberOfObjects, expectedItems.count)
49-
XCTAssertEqual(viewModel.fetchedOrderStatuses, expectedItems)
50-
XCTAssertFalse(viewModel.fetchedOrderStatuses.contains(where: { $0.siteID != siteID }))
51-
XCTAssertFalse(viewModel.fetchedOrderStatuses.contains(unexpectedItem))
51+
XCTAssertEqual(viewModel.cellViewModels.slugs, expectedItems.slugs)
52+
XCTAssertFalse(viewModel.cellViewModels.contains(where: { $0.slug == unexpectedItem.slug }))
5253
}
5354

5455
func testItSortsTheOrderStatusesBySlug() {
@@ -66,8 +67,7 @@ final class OrderSearchStarterViewModelTests: XCTestCase {
6667

6768
// Then
6869
let expectedSlugs = ["alpha", "beta", "charlie", "delta", "echo"]
69-
let actualSlugs = viewModel.fetchedOrderStatuses.map(\.slug)
70-
XCTAssertEqual(actualSlugs, expectedSlugs)
70+
XCTAssertEqual(viewModel.cellViewModels.slugs, expectedSlugs)
7171
}
7272

7373
func testItReturnsTheNameSlugAndTotalInTheCellViewModel() {
@@ -109,10 +109,22 @@ final class OrderSearchStarterViewModelTests: XCTestCase {
109109
// MARK: - Helpers
110110

111111
private extension OrderSearchStarterViewModel {
112-
/// Returns the `OrderStatus` for all the rows
112+
/// Returns all the `CellViewModel` based on the fetched `OrderStatus`.
113113
///
114-
var fetchedOrderStatuses: [OrderStatus] {
115-
(0..<numberOfObjects).map { orderStatus(at: IndexPath(row: $0, section: 0)) }
114+
var cellViewModels: [CellViewModel] {
115+
(0..<numberOfObjects).map { cellViewModel(at: IndexPath(row: $0, section: 0)) }
116+
}
117+
}
118+
119+
private extension Array where Element == OrderStatus {
120+
var slugs: [String] {
121+
map(\.slug)
122+
}
123+
}
124+
125+
private extension Array where Element == CellViewModel {
126+
var slugs: [String] {
127+
map(\.slug)
116128
}
117129
}
118130

0 commit comments

Comments
 (0)