Skip to content

Commit

Permalink
Add status=publish parameter to POS variations request to exclude d…
Browse files Browse the repository at this point in the history
…isabled variations.
  • Loading branch information
jaclync committed Jan 17, 2025
1 parent e79ab07 commit a7183b2
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 1 deletion.
6 changes: 5 additions & 1 deletion Networking/Networking/Remote/ProductVariationsRemote.swift
Original file line number Diff line number Diff line change
Expand Up @@ -83,6 +83,7 @@ public class ProductVariationsRemote: Remote, ProductVariationsRemoteProtocol {
productID: parentProductID,
variationIDs: [],
downloadable: false,
status: .published,
context: nil,
pageNumber: pageNumber,
pageSize: POSConstants.variationsPerPage)
Expand All @@ -103,6 +104,7 @@ public class ProductVariationsRemote: Remote, ProductVariationsRemoteProtocol {
productID: Int64,
variationIDs: [Int64],
downloadable: Bool? = nil,
status: ProductStatus? = nil,
context: String?,
pageNumber: Int,
pageSize: Int) -> JetpackRequest {
Expand All @@ -113,7 +115,8 @@ public class ProductVariationsRemote: Remote, ProductVariationsRemoteProtocol {
ParameterKey.perPage: String(pageSize),
ParameterKey.downloadable: downloadable.map { String($0) },
ParameterKey.contextKey: context ?? Default.context,
ParameterKey.include: variationIDs.isEmpty ? nil: stringOfVariationIDs
ParameterKey.include: variationIDs.isEmpty ? nil: stringOfVariationIDs,
ParameterKey.status: status?.rawValue
]
.compactMapValues { $0 }

Expand Down Expand Up @@ -336,6 +339,7 @@ public extension ProductVariationsRemote {
static let image: String = "image"
static let include: String = "include"
static let downloadable: String = "downloadable"
static let status: String = "status"
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -588,6 +588,7 @@ final class ProductVariationsRemoteTests: XCTestCase {
// Then
let queryParametersDictionary = try XCTUnwrap(network.queryParametersDictionary)
XCTAssertEqual(queryParametersDictionary["downloadable"] as? String, String(false))
XCTAssertEqual(queryParametersDictionary["status"] as? String, "publish")
XCTAssertEqual(queryParametersDictionary["page"] as? String, "2")
XCTAssertEqual(queryParametersDictionary["per_page"] as? String, "25")
}
Expand All @@ -602,6 +603,7 @@ final class ProductVariationsRemoteTests: XCTestCase {
// Then
let queryParametersDictionary = try XCTUnwrap(network.queryParametersDictionary)
XCTAssertNil(queryParametersDictionary["downloadable"] as? String)
XCTAssertNil(queryParametersDictionary["status"] as? String)
XCTAssertEqual(queryParametersDictionary["page"] as? String, "1")
XCTAssertEqual(queryParametersDictionary["per_page"] as? String, "25")
}
Expand Down

0 comments on commit a7183b2

Please sign in to comment.