default ProductProjectionSearch bySku(final String sku) { return withQueryFilters(m -> m.allVariants().sku().is(sku)); }
default ProductProjectionSearch bySku(final String sku) { return withQueryFilters(m -> m.allVariants().sku().is(sku)); }
default ProductProjectionSearch bySku(final List<String> skus) { return withQueryFilters(m -> m.allVariants().sku().isIn(skus)); }
default ProductProjectionSearch bySku(final List<String> skus) { return withQueryFilters(m -> m.allVariants().sku().isIn(skus)); }
@Test public void filterBySku() { final List<String> skus = Stream.of(product1, product2) .map(product -> product.getMasterData().getStaged().getMasterVariant().getSku()) .collect(toList()); final ProductProjectionSearch search = ProductProjectionSearch.ofStaged() .plusQueryFilters(m -> m.allVariants().sku().isIn(skus)); assertEventually(Duration.ofSeconds(45), Duration.ofMillis(200), () -> { assertThat(client().executeBlocking(search).getResults()) .extracting(m -> m.getMasterVariant().getSku()) .containsOnly(skus.get(0), skus.get(1)); }); }
@Test public void canAccessSku() throws Exception { final String sku = "sku-test"; assertThat(FILTER_MODEL.allVariants().sku().is(sku)).extracting(expression()).containsExactly("variants.sku:\"" + sku +"\""); assertThat(SORT_MODEL.allVariants().sku().asc().expression()).isEqualTo("variants.sku asc"); }
@Test public void sku() { checkFilter(builder -> { final ProductVariantDraft masterVariant = ProductVariantDraftBuilder.of(builder.getMasterVariant()) .sku("sku-test-" + randomKey()) .build(); return builder.masterVariant(masterVariant); }, m -> m.allVariants().sku()); }