Skip to content

Instantly share code, notes, and snippets.

private static final double DISCOUNT_UNIT_PRICE = 6.5d;
private static final String UNIT_LABEL = "Liter";
private static final double BASE_PRICE = 5.0d;
private static final double UNIT_PRICE = 3.5d;
private static final double DISCOUNT_PRICE = 1.5d;
@Mock private PriceRepository priceRepository;
@Test
public void testBasePriceIsReturned_When_DiscountAndUnitPriceNotPresent() {
public class Customer {
private final Name name;
private final WishList wishList;
public Customer(final Name name, final WishList wishList) {
this.name = name;
this.wishList = wishList;
}
public String name() {
public class ShippingAddresses {
private final ShippingAddress shippingAddress;
public ShippingAddresses(final ShippingAddress shippingAddress) {
this.shippingAddress = shippingAddress;
}
public void add(ShippingAddressRequest request) {
shippingAddress.create(request);
public class Customer {
private final ShippingAddresses shippingAddresses;
public Customer(final ShippingAddresses shippingAddresses) {
this.shippingAddresses = shippingAddresses;
}
public void createShippingAddress(CustomerRequest customerRequest) {
shippingAddresses.add(customerRequest.getShippingAddress());
}
public class ShippingAddressRequest {
private String streetName;
private String postalCode;
private String cityName;
private String countryName;
private String landmark;
}
public class Product {
private final Price price;
public Product(final Price price) {
this.price = price;
}
double calculatePrice() {
return price.find();
}
public class Product {
private final ProductPrice productPrice;
public Product(final ProductPrice productPrice) {
this.productPrice = productPrice;
}
double calculateProductPrice(){
return productPrice.getPrice();
}
getMessengers().findMatchingMessenger(type, message).send(type, message);
public class Skype implements Action, Rule {
@Override
public void send(final String message) {
System.out.println("Sending message to Skype");
}
@Override
public OptionalMessenger matches(final String type, final String message) {
return getType().equalsIgnoreCase(type) && isValid(message)
public class OptionalMessenger {
private final Optional<Action> messenger;
private OptionalMessenger(Optional<Action> messenger) {
this.messenger = messenger;
}
public static OptionalMessenger of(Action messenger) {
return new OptionalMessenger(Optional.of(messenger));
}