Update of /cvsroot/tail/Tail/src/test/net/sf/tail/analysis/evaluator
In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv22319/src/test/net/sf/tail/analysis/evaluator
Added Files:
DecisionTest.java
Log Message:
Teste da classe Decision
--- NEW FILE: DecisionTest.java ---
package net.sf.tail.analysis.evaluator;
import static org.junit.Assert.assertEquals;
import net.sf.tail.AnalysisCriterion;
import net.sf.tail.ConstrainedTimeSeries;
import net.sf.tail.Operation;
import net.sf.tail.OperationType;
import net.sf.tail.Strategy;
import net.sf.tail.TimeSeries;
import net.sf.tail.analysis.criteria.TotalProfitCriterion;
import net.sf.tail.sample.SampleTimeSeries;
import net.sf.tail.strategy.FakeStrategy;
import org.junit.Test;
public class DecisionTest {
@Test
public void testDecisionWithNoValues() {
TimeSeries sample = new SampleTimeSeries(new double[] {});
ConstrainedTimeSeries constrained = new ConstrainedTimeSeries(sample, 0, sample.getSize());
Operation[] buy = new Operation[0];
Operation[] sell = new Operation[0];
Strategy fakeStrategy = new FakeStrategy(buy, sell);
AnalysisCriterion criteria = new TotalProfitCriterion();
Decision decision = new Decision(fakeStrategy, constrained, criteria);
assertEquals(1d, decision.evaluateCriterion());
}
@Test
public void testEvaluateCriterion() {
TimeSeries sample = new SampleTimeSeries(new double[] {3d, 5d, 7d, 9d});
ConstrainedTimeSeries constrained = new ConstrainedTimeSeries(sample, 0, sample.getSize());
Operation[] buy = new Operation[] {
new Operation(0, OperationType.BUY),
null,
new Operation(2, OperationType.BUY),
null
};
Operation[] sell = new Operation[] {
null,
new Operation(1, OperationType.SELL),
null,
new Operation(3, OperationType.SELL),
};
Strategy fakeStrategy = new FakeStrategy(buy, sell);
AnalysisCriterion criteria = new TotalProfitCriterion();
Decision decision = new Decision(fakeStrategy, constrained, criteria);
assertEquals(45d/21, decision.evaluateCriterion(), 0.001);
}
@Test
public void testEvaluateCriterionNotSelling()
{
TimeSeries sample = new SampleTimeSeries(new double[] {3d, 1d, 7d, 9d});
ConstrainedTimeSeries constrained = new ConstrainedTimeSeries(sample, 0, sample.getSize());
Operation[] buy = new Operation[] {
new Operation(0, OperationType.BUY),
null,
new Operation(2, OperationType.BUY),
null
};
Operation[] sell = new Operation[] {
null,
null,
null,
null
};
Strategy fakeStrategy = new FakeStrategy(buy, sell);
AnalysisCriterion criteria = new TotalProfitCriterion();
Decision decision = new Decision(fakeStrategy, constrained, criteria);
assertEquals(3d, decision.evaluateCriterion(), 0.0001);
}
}
|