/** * Copyright (C) 2013 - present by OpenGamma Inc. and the OpenGamma group of companies * * Please see distribution for license. */ package com.opengamma.engine.fudgemsg; import java.util.Map; import org.testng.annotations.Test; import org.threeten.bp.Instant; import com.google.common.collect.ImmutableMap; import com.google.common.collect.Maps; import com.opengamma.core.marketdatasnapshot.YieldCurveKey; import com.opengamma.engine.function.FunctionParameters; import com.opengamma.engine.function.SimpleFunctionParameters; import com.opengamma.engine.marketdata.manipulator.CompositeMarketDataSelector; import com.opengamma.engine.marketdata.manipulator.DistinctMarketDataSelector; import com.opengamma.engine.marketdata.manipulator.YieldCurveSelector; import com.opengamma.engine.view.execution.ViewCycleExecutionOptions; import com.opengamma.id.VersionCorrection; import com.opengamma.util.money.Currency; import com.opengamma.util.test.AbstractFudgeBuilderTestCase; import com.opengamma.util.test.TestGroup; /** * Test. */ @Test(groups = TestGroup.UNIT) public class ViewCycleExecutionOptionsFudgeBuilderTest extends AbstractFudgeBuilderTestCase { public void rountTrip() { Map<DistinctMarketDataSelector, FunctionParameters> selectors2params = Maps.newHashMap(); Map<String, String> params = ImmutableMap.of("foo", "bar"); DistinctMarketDataSelector selector = YieldCurveSelector.of(YieldCurveKey.of(Currency.AUD, "curveKey")); selectors2params.put(selector, new SimpleFunctionParameters(params)); ViewCycleExecutionOptions options = ViewCycleExecutionOptions .builder() .setValuationTime(Instant.now()) .setMarketDataSelector(CompositeMarketDataSelector.of(selectors2params.keySet())) .setFunctionParameters(selectors2params) .setResolverVersionCorrection(VersionCorrection.LATEST) .create(); assertEncodeDecodeCycle(ViewCycleExecutionOptions.class, options); } }