Package com.opengamma.financial.aggregation

Source Code of com.opengamma.financial.aggregation.PositionAttributeAggregationFunctionTest

/**
* Copyright (C) 2011 - present by OpenGamma Inc. and the OpenGamma group of companies
*
* Please see distribution for license.
*/
package com.opengamma.financial.aggregation;

import static org.testng.AssertJUnit.assertEquals;

import org.testng.annotations.Test;

import com.opengamma.core.position.impl.SimplePosition;
import com.opengamma.core.position.impl.SimpleTrade;
import com.opengamma.util.test.TestGroup;

/**
*
*/
@Test(groups = TestGroup.UNIT)
public class PositionAttributeAggregationFunctionTest {

  public static final String ATTR_NAME = "ATTR_NAME";
  public static final String POS_VALUE = "POS_VALUE";
  public static final String TRADE_VALUE = "TRADE_VALUE";
  private final PositionAttributeAggregationFunction _aggFn = new PositionAttributeAggregationFunction(ATTR_NAME);

  @Test
  public void positionAttribute() {
    SimplePosition position = new SimplePosition();
    position.addAttribute(ATTR_NAME, POS_VALUE);
    assertEquals(POS_VALUE, _aggFn.classifyPosition(position));
  }

  @Test
  public void tradeAttribute() {
    SimplePosition position = new SimplePosition();
    SimpleTrade trade = new SimpleTrade();
    trade.addAttribute(ATTR_NAME, TRADE_VALUE);
    position.addTrade(trade);
    assertEquals(TRADE_VALUE, _aggFn.classifyPosition(position));
  }

  /**
   * Tests the position's value is used when both the position and one of its trades have values for the same attribute.
   */
  @Test
  public void positionAndTradeAttributes() {
    SimplePosition position = new SimplePosition();
    position.addAttribute(ATTR_NAME, POS_VALUE);
    SimpleTrade trade = new SimpleTrade();
    trade.addAttribute(ATTR_NAME, TRADE_VALUE);
    position.addTrade(trade);
    assertEquals(POS_VALUE, _aggFn.classifyPosition(position));
  }
}
TOP

Related Classes of com.opengamma.financial.aggregation.PositionAttributeAggregationFunctionTest

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.