Skip to content

Commit eea996a

Browse files
committed
Optionally include disabled variants ProductHasVariantsFilter
1 parent 2e22cde commit eea996a

File tree

2 files changed

+12
-2
lines changed

2 files changed

+12
-2
lines changed

packages/client/src/builders/filterBuilder.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -183,7 +183,7 @@ export class FilterBuilder {
183183
* @param options - Optional settings for the filter.
184184
* @returns The FilterBuilder instance for chaining.
185185
*/
186-
public addProductHasVariantsFilter(lowerBound?: number, upperBound?: number, negated: boolean = false, options?: FilterOptions): this {
186+
public addProductHasVariantsFilter(lowerBound?: number, upperBound?: number, negated: boolean = false, options?: FilterOptions & { includeDisabled?: boolean }): this {
187187
this.productFilterBuilder.addProductHasVariantsFilter(lowerBound, upperBound, negated, options);
188188
return this;
189189
}

packages/client/tests/unit-tests/builders/search/productSearchBuilder.unit.test.ts

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { UserFactory } from '../../../../src/factory';
22
import { ProductSearchBuilder } from '../../../../src/builders/search';
33
import { test, expect } from '@jest/globals'
4-
import { ProductSearchRequest } from '../../../../src/models/data-contracts';
4+
import { ProductHasVariantsFilter, ProductSearchRequest } from '../../../../src/models/data-contracts';
55

66
function baseBuilder() {
77
return new ProductSearchBuilder({
@@ -132,4 +132,14 @@ test('searchHightlighting', () => {
132132
expect(subject.settings?.highlight?.limit.maxSnippetsPerEntry).toBe(2);
133133
expect(subject.settings?.highlight?.limit.maxSnippetsPerField).toBe(3);
134134
expect(subject.settings?.highlight?.shape.includeOffsets).toBe(true);
135+
});
136+
137+
test('includeDisabled in ProductHasVariantsFilter', () => {
138+
const subject: ProductSearchRequest = baseBuilder()
139+
.filters(f => f.addProductHasVariantsFilter(1, 9999, false, { includeDisabled: true }))
140+
.build();
141+
142+
const filterFromRequest = (subject.filters?.items?.[0] as ProductHasVariantsFilter) ?? null;
143+
expect(filterFromRequest).not.toBeNull();
144+
expect(filterFromRequest!.includeDisabled).toBe(true);
135145
});

0 commit comments

Comments
 (0)