Skip to content

Commit d917da1

Browse files
committed
Add test cases for changes in ProductsTabProductViewModel.
1 parent fb820c8 commit d917da1

File tree

1 file changed

+29
-0
lines changed

1 file changed

+29
-0
lines changed

WooCommerce/WooCommerceTests/ViewRelated/Products/ProductsTabProductViewModelTests.swift

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,35 @@ final class ProductsTabProductViewModelTests: XCTestCase {
9393
XCTAssertTrue(detailsText.contains(expectedStockDetail))
9494
}
9595

96+
func test_details_contain_sku_when_isSKUShown_is_true() {
97+
// Given
98+
let sku = "pear"
99+
let product = productMock(name: "Yay").copy(sku: sku)
100+
101+
// When
102+
let viewModel = ProductsTabProductViewModel(product: product, isSKUShown: true)
103+
let detailsText = viewModel.detailsAttributedString.string
104+
105+
// Then
106+
let skuFormat = NSLocalizedString("SKU: %1$@", comment: "Label about the SKU of a product in the product list. Reads, `SKU: productSku`")
107+
let expectedSKU = String.localizedStringWithFormat(skuFormat, sku)
108+
XCTAssertTrue(detailsText.contains(expectedSKU))
109+
}
110+
111+
func test_details_do_not_contain_sku_when_isSKUShown_is_false() {
112+
// Given
113+
let sku = "pear"
114+
let product = productMock(name: "Yay").copy(sku: sku)
115+
116+
// When
117+
let viewModel = ProductsTabProductViewModel(product: product, isSKUShown: false)
118+
let detailsText = viewModel.detailsAttributedString.string
119+
120+
// Then
121+
let skuFormat = NSLocalizedString("SKU: %1$@", comment: "Label about the SKU of a product in the product list. Reads, `SKU: productSku`")
122+
let skuText = String.localizedStringWithFormat(skuFormat, sku)
123+
XCTAssertFalse(detailsText.contains(skuText))
124+
}
96125
}
97126

98127
extension ProductsTabProductViewModelTests {

0 commit comments

Comments
 (0)