public static RemoveLineItem of(final String lineItemId) { return of(lineItemId, null); }
public static RemoveLineItem of(final String lineItemId) { return of(lineItemId, null); }
public static RemoveLineItem of(final String lineItemId) { return of(lineItemId, null); }
public static RemoveLineItem of(final String lineItemId, @Nullable final Long quantity) { return of(lineItemId, quantity, null, null, null); }
public static RemoveLineItem of(final String lineItemId, final Integer quantity) { return of(lineItemId, Optional.of(quantity)); }
public static RemoveLineItem of(final String lineItemId) { return of(lineItemId, Optional.empty()); }
public static RemoveLineItem ofLineItemAndExternalPrice(final String lineItemId, @Nullable final Long quantity, @Nullable final MonetaryAmount externalPrice) { return of(lineItemId, quantity, externalPrice, null, null); }
public static RemoveLineItem ofLineItemAndExternalTotalPrice(final String lineItemId, @Nullable final Long quantity, @Nullable final ExternalLineItemTotalPrice externalTotalPrice) { return of(lineItemId, quantity, null, externalTotalPrice, null); } }
public static RemoveLineItem ofLineItemAndExternalTotalPrice(final String lineItemId, @Nullable final Long quantity, @Nullable final ExternalLineItemTotalPrice externalTotalPrice) { return of(lineItemId, quantity, null, externalTotalPrice, null); } }
public static RemoveLineItem of(final LineItem lineItem, final Integer quantity) { return of(lineItem.getId(), Optional.of(quantity)); }
public static RemoveLineItem of(final LineItem lineItem, @Nullable final Long quantity) { return of(lineItem.getId(), quantity); }
public static RemoveLineItem of(final LineItem lineItem) { return of(lineItem.getId(), Optional.empty()); }
public static RemoveLineItem of(final LineItem lineItem, final Optional<Integer> quantity) { return of(lineItem.getId(), quantity); }
public static RemoveLineItem of(final LineItem lineItem, final Optional<Integer> quantity) { return of(lineItem.getId(), quantity); }
public static RemoveLineItem of(final LineItem lineItem) { return of(lineItem.getId(), Optional.empty()); }
public static RemoveLineItem of(final LineItem lineItem) { return of(lineItem.getId()); }
public static RemoveLineItem of(final LineItem lineItem, @Nullable final Long quantity) { return of(lineItem.getId(), quantity); }
public static RemoveLineItem of(final LineItem lineItem) { return of(lineItem.getId()); }
protected CompletionStage<Cart> removeLineItem(final String lineItemId, final Cart cart) { final RemoveLineItem removeLineItem = RemoveLineItem.of(lineItemId); final CartUpdateCommand cmd = CartUpdateCommand.of(cart, removeLineItem); return executeCartUpdateCommandWithHooks(cmd); } }
@Test public void removeLineItem() throws Exception { withEmptyCartAndProduct(client(), (cart, product) -> { assertThat(cart.getLineItems()).hasSize(0); final AddLineItem action = AddLineItem.of(product.getId(), MASTER_VARIANT_ID, 3L); final Cart cartWith3 = client().executeBlocking(CartUpdateCommand.of(cart, action)); final LineItem lineItem = cartWith3.getLineItems().get(0); assertThat(lineItem.getQuantity()).isEqualTo(3); final Cart cartWith2 = client().executeBlocking(CartUpdateCommand.of(cartWith3, RemoveLineItem.of(lineItem, 1L))); assertThat(cartWith2.getLineItems().get(0).getQuantity()).isEqualTo(2); final Cart cartWith0 = client().executeBlocking(CartUpdateCommand.of(cartWith2, RemoveLineItem.of(lineItem))); assertThat(cartWith0.getLineItems()).hasSize(0); }); }