public Address withId(final String id) { Objects.requireNonNull(id); return withId(Optional.of(id)); }
public Address withId(final String id) { Objects.requireNonNull(id); return withId(Optional.of(id)); }
@Test public void equalsIgnoreId() { final Address addressWithoutId = Address.of(CountryCode.DE); final Address addressWithId = addressWithoutId.withId("foo"); assertThat(addressWithoutId) .isNotEqualTo(addressWithId) .matches(address -> address.equalsIgnoreId(addressWithId)); }
@Test public void createByJson() { final JsonNodeReferenceResolver referenceResolver = new JsonNodeReferenceResolver(); withB2cCustomerGroup(client(), customerGroup -> { referenceResolver.addResourceByKey("b2c", customerGroup); final CustomerDraft customerDraft = draftFromJsonResource("drafts-tests/customer.json", CustomerDraftDsl.class, referenceResolver); CustomerFixtures.withCustomer(client(), customerDraft, customer -> { assertThat(customer.getLastName()).isEqualTo("Osgood"); assertThat(customer.getCustomerGroup()).isEqualTo(customerGroup.toReference()); assertThat(customer.getAddresses()).hasSize(2); assertThat(customer.getDefaultShippingAddress().withId(null)) .isEqualTo(Address.of(DE).withLastName("Osgood").withExternalId("external-ID-DE")); }); }); }
assertThat(customer.getCustomerGroup()).isEqualTo(customerGroup.toReference()); final List<Address> loadedAddresses = customer.getAddresses(); assertThat(loadedAddresses.stream().map(a -> a.withId(null)).collect(toList())).isEqualTo(addresses); assertThat(customer.getDefaultBillingAddress().withId(null)).isEqualTo(addresses.get(0)); assertThat(customer.findDefaultShippingAddress().get().withId(null)).isEqualTo(addresses.get(1)); assertThat(customer.getBillingAddressIds()) .containsExactly(loadedAddresses.get(0).getId(), loadedAddresses.get(3).getId());