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);
}