public void test_createProduct() { IborFutureOptionSecurity test = sut(); ReferenceData refData = ImmutableReferenceData.of(FUTURE_ID, FUTURE_SECURITY); assertEquals(test.createProduct(refData), OPTION); TradeInfo tradeInfo = TradeInfo.of(date(2016, 6, 30)); IborFutureOptionTrade expectedTrade = IborFutureOptionTrade.builder() .info(tradeInfo) .product(OPTION) .quantity(100) .price(123.50) .build(); assertEquals(test.createTrade(tradeInfo, 100, 123.50, refData), expectedTrade); PositionInfo positionInfo = PositionInfo.empty(); IborFutureOptionPosition expectedPosition1 = IborFutureOptionPosition.builder() .info(positionInfo) .product(OPTION) .longQuantity(100) .build(); TestHelper.assertEqualsBean(test.createPosition(positionInfo, 100, refData), expectedPosition1); IborFutureOptionPosition expectedPosition2 = IborFutureOptionPosition.builder() .info(positionInfo) .product(OPTION) .longQuantity(100) .shortQuantity(50) .build(); assertEquals(test.createPosition(positionInfo, 100, 50, refData), expectedPosition2); }
/** * Returns a builder that allows this bean to be mutated. * @return the mutable builder, not null */ public Builder toBuilder() { return new Builder(this); }
@Override public IborFutureOptionPosition.Builder builder() { return new IborFutureOptionPosition.Builder(); }
static IborFutureOptionPosition sut() { return IborFutureOptionPosition.builder() .info(POSITION_INFO) .product(PRODUCT) .longQuantity(QUANTITY) .build(); }
/** * Returns a builder used to create an instance of the bean. * @return the builder, not null */ public static IborFutureOptionPosition.Builder builder() { return new IborFutureOptionPosition.Builder(); }
static IborFutureOptionPosition sut2() { return IborFutureOptionPosition.builder() .info(POSITION_INFO2) .product(PRODUCT2) .longQuantity(100) .shortQuantity(50) .build(); }
public void test_withQuantity() { IborFutureOptionPosition base = sut(); double quantity = 75343d; IborFutureOptionPosition computed = base.withQuantity(quantity); IborFutureOptionPosition expected = IborFutureOptionPosition.builder() .info(POSITION_INFO) .product(PRODUCT) .longQuantity(quantity) .build(); assertEquals(computed, expected); }