public virtual void test_resolve_noRebate() { FxSingleBarrierOption @base = FxSingleBarrierOption.of(VANILLA_OPTION, BARRIER); ResolvedFxSingleBarrierOption expected = ResolvedFxSingleBarrierOption.of(VANILLA_OPTION.resolve(REF_DATA), BARRIER); assertEquals(@base.resolve(REF_DATA), expected); }
public virtual void test_of_noRebate() { FxSingleBarrierOption test = FxSingleBarrierOption.of(VANILLA_OPTION, BARRIER); assertEquals(test.Barrier, BARRIER); assertFalse(test.Rebate.Present); assertEquals(test.UnderlyingOption, VANILLA_OPTION); }
//------------------------------------------------------------------------- public virtual void coverage() { FxSingleBarrierOption test1 = FxSingleBarrierOption.of(VANILLA_OPTION, BARRIER, REBATE); FxSingleBarrierOption test2 = FxSingleBarrierOption.of(FxVanillaOption.builder().longShort(SHORT).expiryDate(EXPIRY_DATE).expiryTime(EXPIRY_TIME).expiryZone(EXPIRY_ZONE).underlying(FX).build(), SimpleConstantContinuousBarrier.of(BarrierType.UP, KnockType.KNOCK_IN, 1.5)); coverImmutableBean(test1); coverBeanEquals(test1, test2); }
public virtual void test_of_fail() { CurrencyAmount negative = CurrencyAmount.of(USD, -5.0e4); assertThrowsIllegalArg(() => FxSingleBarrierOption.of(VANILLA_OPTION, BARRIER, negative)); CurrencyAmount other = CurrencyAmount.of(GBP, 5.0e4); assertThrowsIllegalArg(() => FxSingleBarrierOption.of(VANILLA_OPTION, BARRIER, other)); }
public virtual void test_of() { FxSingleBarrierOption test = FxSingleBarrierOption.of(VANILLA_OPTION, BARRIER, REBATE); assertEquals(test.Barrier, BARRIER); assertEquals(test.Rebate.get(), REBATE); assertEquals(test.UnderlyingOption, VANILLA_OPTION); assertEquals(test.CurrencyPair, VANILLA_OPTION.CurrencyPair); assertEquals(test.CrossCurrency, true); assertEquals(test.allPaymentCurrencies(), ImmutableSet.of(EUR, USD)); assertEquals(test.allCurrencies(), ImmutableSet.of(EUR, USD)); }
public virtual void test_serialization() { FxSingleBarrierOption test = FxSingleBarrierOption.of(VANILLA_OPTION, BARRIER, REBATE); assertSerialization(test); }
//------------------------------------------------------------------------- public virtual void coverage() { FxSingleBarrierOptionTrade test1 = sut(); FxSingleBarrierOptionTrade test2 = FxSingleBarrierOptionTrade.builder().product(FxSingleBarrierOption.of(VANILLA_OPTION, BARRIER)).premium(AdjustablePayment.of(CurrencyAmount.of(EUR, NOTIONAL * 0.01), date(2014, 11, 13))).build(); coverImmutableBean(test1); coverBeanEquals(test1, test2); }