public void test_combinedWithOtherHasOneScenario() { ImmutableScenarioMarketData marketData1 = ImmutableScenarioMarketData.builder(LocalDate.of(2011, 3, 8)) .addBox(TEST_ID2, MarketDataBox.ofScenarioValues(1.0, 1.1)) .build(); ImmutableScenarioMarketData marketData2 = ImmutableScenarioMarketData.builder(LocalDate.of(2011, 3, 8)) .addBox(TEST_ID1, MarketDataBox.ofSingleValue(1.0)) .build(); ImmutableScenarioMarketData expected = ImmutableScenarioMarketData.builder(LocalDate.of(2011, 3, 8)) .addBox(TEST_ID1, MarketDataBox.ofSingleValue(1.0)) .addBox(TEST_ID2, MarketDataBox.ofScenarioValues(1.0, 1.1)) .build(); assertThat(marketData1.combinedWith(marketData2)).isEqualTo(expected); }
public void test_combinedWithReceiverHasOneScenario() { ImmutableScenarioMarketData marketData1 = ImmutableScenarioMarketData.builder(LocalDate.of(2011, 3, 8)) .addBox(TEST_ID1, MarketDataBox.ofSingleValue(1.0)) .build(); ImmutableScenarioMarketData marketData2 = ImmutableScenarioMarketData.builder(LocalDate.of(2011, 3, 8)) .addBox(TEST_ID2, MarketDataBox.ofScenarioValues(1.0, 1.1)) .build(); ImmutableScenarioMarketData expected = ImmutableScenarioMarketData.builder(LocalDate.of(2011, 3, 8)) .addBox(TEST_ID1, MarketDataBox.ofSingleValue(1.0)) .addBox(TEST_ID2, MarketDataBox.ofScenarioValues(1.0, 1.1)) .build(); assertThat(marketData1.combinedWith(marketData2)).isEqualTo(expected); }
public void test_combinedWithReceiverHasOneScenario() { ImmutableScenarioMarketData marketData1 = ImmutableScenarioMarketData.builder(LocalDate.of(2011, 3, 8)) .addBox(TEST_ID1, MarketDataBox.ofSingleValue(1.0)) .build(); ImmutableScenarioMarketData marketData2 = ImmutableScenarioMarketData.builder(LocalDate.of(2011, 3, 8)) .addBox(TEST_ID2, MarketDataBox.ofScenarioValues(1.0, 1.1)) .build(); ImmutableScenarioMarketData expected = ImmutableScenarioMarketData.builder(LocalDate.of(2011, 3, 8)) .addBox(TEST_ID1, MarketDataBox.ofSingleValue(1.0)) .addBox(TEST_ID2, MarketDataBox.ofScenarioValues(1.0, 1.1)) .build(); ScenarioMarketData combined = marketData1.combinedWith(marketData2); assertThat(combined).isEqualTo(expected); assertThat(combined.getIds()).isEqualTo(ImmutableSet.of(TEST_ID1, TEST_ID2)); }
public void test_combinedWithOtherHasOneScenario() { ImmutableScenarioMarketData marketData1 = ImmutableScenarioMarketData.builder(LocalDate.of(2011, 3, 8)) .addBox(TEST_ID2, MarketDataBox.ofScenarioValues(1.0, 1.1)) .build(); ImmutableScenarioMarketData marketData2 = ImmutableScenarioMarketData.builder(LocalDate.of(2011, 3, 8)) .addBox(TEST_ID1, MarketDataBox.ofSingleValue(1.0)) .build(); ImmutableScenarioMarketData expected = ImmutableScenarioMarketData.builder(LocalDate.of(2011, 3, 8)) .addBox(TEST_ID1, MarketDataBox.ofSingleValue(1.0)) .addBox(TEST_ID2, MarketDataBox.ofScenarioValues(1.0, 1.1)) .build(); ScenarioMarketData combined = marketData1.combinedWith(marketData2); assertThat(combined).isEqualTo(expected); assertThat(combined.getIds()).isEqualTo(ImmutableSet.of(TEST_ID1, TEST_ID2)); }
public void test_combinedWithIncompatibleScenarioCount() { ImmutableScenarioMarketData marketData1 = ImmutableScenarioMarketData.builder(LocalDate.of(2011, 3, 8)) .addBox(TEST_ID1, MarketDataBox.ofScenarioValues(1.0, 1.1, 1.2)) .build(); ImmutableScenarioMarketData marketData2 = ImmutableScenarioMarketData.builder(LocalDate.of(2011, 3, 8)) .addBox(TEST_ID2, MarketDataBox.ofScenarioValues(1.0, 1.1)) .build(); assertThrowsIllegalArg(() -> marketData1.combinedWith(marketData2), ".* same number of scenarios .* 3 and 2"); }
public void test_combinedWithIncompatibleScenarioCount() { ImmutableScenarioMarketData marketData1 = ImmutableScenarioMarketData.builder(LocalDate.of(2011, 3, 8)) .addBox(TEST_ID1, MarketDataBox.ofScenarioValues(1.0, 1.1, 1.2)) .build(); ImmutableScenarioMarketData marketData2 = ImmutableScenarioMarketData.builder(LocalDate.of(2011, 3, 8)) .addBox(TEST_ID2, MarketDataBox.ofScenarioValues(1.0, 1.1)) .build(); assertThrowsIllegalArg(() -> marketData1.combinedWith(marketData2), ".* same number of scenarios .* 3 and 2"); }
public void test_addBadScenarioCount() { FxRateId eurGbpId = FxRateId.of(Currency.EUR, Currency.GBP); FxRateId eurUsdId = FxRateId.of(Currency.EUR, Currency.USD); FxRate eurGbpRate1 = FxRate.of(Currency.EUR, Currency.GBP, 0.8); FxRate eurGbpRate2 = FxRate.of(Currency.EUR, Currency.GBP, 0.9); FxRate eurGbpRate3 = FxRate.of(Currency.EUR, Currency.GBP, 0.95); FxRate eurUsdRate1 = FxRate.of(Currency.EUR, Currency.USD, 1.1); FxRate eurUsdRate2 = FxRate.of(Currency.EUR, Currency.USD, 1.2); ImmutableScenarioMarketDataBuilder builder = ImmutableScenarioMarketData.builder(VAL_DATE) .addBox(eurGbpId, MarketDataBox.ofScenarioValues(eurGbpRate1, eurGbpRate2, eurGbpRate3)); assertThrowsIllegalArg(() -> builder.addBox(eurUsdId, MarketDataBox.ofScenarioValues(eurUsdRate1, eurUsdRate2))); }
public void test_addSingleAndBox() { FxRateId eurGbpId = FxRateId.of(Currency.EUR, Currency.GBP); FxRateId eurUsdId = FxRateId.of(Currency.EUR, Currency.USD); FxRate eurGbpRate = FxRate.of(Currency.EUR, Currency.GBP, 0.8); FxRate eurUsdRate1 = FxRate.of(Currency.EUR, Currency.USD, 1.1); FxRate eurUsdRate2 = FxRate.of(Currency.EUR, Currency.USD, 1.2); ImmutableScenarioMarketData marketData = ImmutableScenarioMarketData.builder(VAL_DATE) .addValue(eurGbpId, eurGbpRate) .addBox(eurUsdId, MarketDataBox.ofScenarioValues(eurUsdRate1, eurUsdRate2)) .build(); assertEquals(marketData.getScenarioCount(), 2); assertEquals(marketData.getIds(), ImmutableSet.of(eurGbpId, eurUsdId)); assertEquals(marketData.getValue(eurGbpId), MarketDataBox.ofSingleValue(eurGbpRate)); assertEquals(marketData.getValue(eurUsdId), MarketDataBox.ofScenarioValues(eurUsdRate1, eurUsdRate2)); }
.addTimeSeries(TEST_ID1, timeSeries1) .addTimeSeries(TEST_ID2, timeSeries2) .addBox(TEST_ID1, MarketDataBox.ofScenarioValues(1.0, 1.1, 1.2)) .addBox(TEST_ID2, MarketDataBox.ofScenarioValues(2.0, 2.1, 2.2)) .build(); .addTimeSeries(TEST_ID2, timeSeries2a) .addTimeSeries(TEST_ID3, timeSeries3) .addBox(TEST_ID2, MarketDataBox.ofScenarioValues(21.0, 21.1, 21.2)) .addBox(TEST_ID3, MarketDataBox.ofScenarioValues(3.0, 3.1, 3.2)) .build(); .addTimeSeries(TEST_ID2, timeSeries2) .addTimeSeries(TEST_ID3, timeSeries3) .addBox(TEST_ID1, MarketDataBox.ofScenarioValues(1.0, 1.1, 1.2)) .addBox(TEST_ID2, MarketDataBox.ofScenarioValues(2.0, 2.1, 2.2)) .addBox(TEST_ID3, MarketDataBox.ofScenarioValues(3.0, 3.1, 3.2)) .build();
.addTimeSeries(TEST_ID1, timeSeries1) .addTimeSeries(TEST_ID2, timeSeries2) .addBox(TEST_ID1, MarketDataBox.ofScenarioValues(1.0, 1.1, 1.2)) .addBox(TEST_ID2, MarketDataBox.ofScenarioValues(2.0, 2.1, 2.2)) .build(); .addTimeSeries(TEST_ID2, timeSeries2a) .addTimeSeries(TEST_ID3, timeSeries3) .addBox(TEST_ID2, MarketDataBox.ofScenarioValues(21.0, 21.1, 21.2)) .addBox(TEST_ID3, MarketDataBox.ofScenarioValues(3.0, 3.1, 3.2)) .build(); .addTimeSeries(TEST_ID2, timeSeries2) .addTimeSeries(TEST_ID3, timeSeries3) .addBox(TEST_ID1, MarketDataBox.ofScenarioValues(1.0, 1.1, 1.2)) .addBox(TEST_ID2, MarketDataBox.ofScenarioValues(2.0, 2.1, 2.2)) .addBox(TEST_ID3, MarketDataBox.ofScenarioValues(3.0, 3.1, 3.2)) .build();