|
From: Márcio V. d. S. <mv...@us...> - 2007-05-31 16:45:44
|
Update of /cvsroot/tail/Tail/src/test/net/sf/tail/indicator/bollingerbands In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv2946/src/test/net/sf/tail/indicator/bollingerbands Modified Files: BollingerBandsLowerIndicatorTest.java BollingerBandsUpperIndicatorTest.java BollingerBandsMiddleIndicatorTest.java Log Message: Refatoração de testes Index: BollingerBandsMiddleIndicatorTest.java =================================================================== RCS file: /cvsroot/tail/Tail/src/test/net/sf/tail/indicator/bollingerbands/BollingerBandsMiddleIndicatorTest.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** BollingerBandsMiddleIndicatorTest.java 19 May 2007 13:23:19 -0000 1.3 --- BollingerBandsMiddleIndicatorTest.java 31 May 2007 16:45:41 -0000 1.4 *************** *** 28,45 **** assertEquals(sma.getValue(i), bbmSMA.getValue(i)); } } @Test(expected = IndexOutOfBoundsException.class) ! public void testWrongIndex() { SMAIndicator sma = new SMAIndicator(new ClosePriceIndicator(data), 3); BollingerBandsMiddleIndicator bbmSMA = new BollingerBandsMiddleIndicator(sma); ! bbmSMA.getValue(data.getSize()); } - // Método adicionado por causa da compatibilidade do Eclipse 3.1.2(Rede - // Linux) - // e o JUnit4 public static junit.framework.Test suite() { return new JUnit4TestAdapter(BollingerBandsMiddleIndicatorTest.class); --- 28,51 ---- assertEquals(sma.getValue(i), bbmSMA.getValue(i)); } + } + + @Test + public void testBollingerBandsLowerShouldWorkJumpingIndexes() { + SMAIndicator sma = new SMAIndicator(new ClosePriceIndicator(data), 3); + BollingerBandsMiddleIndicator bbmSMA = new BollingerBandsMiddleIndicator(sma); + assertEquals(sma.getValue(6), bbmSMA.getValue(6)); + assertEquals(sma.getValue(0), bbmSMA.getValue(0)); + } @Test(expected = IndexOutOfBoundsException.class) ! public void testIndexGreatterThanTheIndicatorLenghtShouldThrowException() { SMAIndicator sma = new SMAIndicator(new ClosePriceIndicator(data), 3); BollingerBandsMiddleIndicator bbmSMA = new BollingerBandsMiddleIndicator(sma); ! bbmSMA.getValue(3000); } public static junit.framework.Test suite() { return new JUnit4TestAdapter(BollingerBandsMiddleIndicatorTest.class); Index: BollingerBandsLowerIndicatorTest.java =================================================================== RCS file: /cvsroot/tail/Tail/src/test/net/sf/tail/indicator/bollingerbands/BollingerBandsLowerIndicatorTest.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** BollingerBandsLowerIndicatorTest.java 19 May 2007 13:23:21 -0000 1.3 --- BollingerBandsLowerIndicatorTest.java 31 May 2007 16:45:41 -0000 1.4 *************** *** 4,10 **** import junit.framework.JUnit4TestAdapter; import net.sf.tail.TimeSeries; import net.sf.tail.indicator.simple.ClosePriceIndicator; import net.sf.tail.indicator.tracker.SMAIndicator; - import net.sf.tail.indicator.tracker.StandardDeviationIndicator; import net.sf.tail.indicator.tracker.bollingerbands.BollingerBandsLowerIndicator; import net.sf.tail.indicator.tracker.bollingerbands.BollingerBandsMiddleIndicator; --- 4,10 ---- import junit.framework.JUnit4TestAdapter; import net.sf.tail.TimeSeries; + import net.sf.tail.indicator.helper.StandardDeviationIndicator; import net.sf.tail.indicator.simple.ClosePriceIndicator; import net.sf.tail.indicator.tracker.SMAIndicator; import net.sf.tail.indicator.tracker.bollingerbands.BollingerBandsLowerIndicator; import net.sf.tail.indicator.tracker.bollingerbands.BollingerBandsMiddleIndicator; *************** *** 18,45 **** private TimeSeries data; @Before public void setUp() throws Exception { data = new SampleTimeSeries(new double[] { 1, 2, 3, 4, 3, 4, 5, 4, 3, 3, 4, 3, 2 }); } @Test public void testBollingerBandsLowerUsingSMAAndStandardDeviation() throws Exception { ! int timeFrame = 3; ! ClosePriceIndicator closePrice = new ClosePriceIndicator(data); ! SMAIndicator sma = new SMAIndicator(closePrice, timeFrame); BollingerBandsMiddleIndicator bbmSMA = new BollingerBandsMiddleIndicator(sma); StandardDeviationIndicator standardDeviation = new StandardDeviationIndicator(closePrice, timeFrame); BollingerBandsLowerIndicator bblSMA = new BollingerBandsLowerIndicator(bbmSMA, standardDeviation); ! for (int i = 0; i < data.getSize(); i++) { ! assertEquals(sma.getValue(i) - 2 * standardDeviation.getValue(i), bblSMA.getValue(i)); ! } } @Test(expected = IndexOutOfBoundsException.class) ! public void testWrongIndex() { ! int timeFrame = 3; ! ClosePriceIndicator closePrice = new ClosePriceIndicator(data); ! SMAIndicator sma = new SMAIndicator(closePrice, timeFrame); BollingerBandsMiddleIndicator bbmSMA = new BollingerBandsMiddleIndicator(sma); StandardDeviationIndicator standardDeviation = new StandardDeviationIndicator(closePrice, timeFrame); --- 18,65 ---- private TimeSeries data; + private int timeFrame; + + private ClosePriceIndicator closePrice; + + private SMAIndicator sma; + @Before public void setUp() throws Exception { data = new SampleTimeSeries(new double[] { 1, 2, 3, 4, 3, 4, 5, 4, 3, 3, 4, 3, 2 }); + timeFrame = 3; + closePrice = new ClosePriceIndicator(data); + sma = new SMAIndicator(closePrice, timeFrame); } @Test public void testBollingerBandsLowerUsingSMAAndStandardDeviation() throws Exception { ! BollingerBandsMiddleIndicator bbmSMA = new BollingerBandsMiddleIndicator(sma); StandardDeviationIndicator standardDeviation = new StandardDeviationIndicator(closePrice, timeFrame); BollingerBandsLowerIndicator bblSMA = new BollingerBandsLowerIndicator(bbmSMA, standardDeviation); ! assertEquals(1d, bblSMA.getValue(0)); ! assertEquals(0.08, bblSMA.getValue(1), 0.01); ! assertEquals(-0.82, bblSMA.getValue(2), 0.01); ! assertEquals(0.17, bblSMA.getValue(3), 0.01); ! assertEquals(1.70, bblSMA.getValue(4), 0.01); ! assertEquals(2.03, bblSMA.getValue(5), 0.01); ! assertEquals(1.17, bblSMA.getValue(6), 0.01); ! } ! ! @Test ! public void testBollingerBandsLowerShouldWorkJumpingIndexes() { ! ! BollingerBandsMiddleIndicator bbmSMA = new BollingerBandsMiddleIndicator(sma); ! StandardDeviationIndicator standardDeviation = new StandardDeviationIndicator(closePrice, timeFrame); ! BollingerBandsLowerIndicator bblSMA = new BollingerBandsLowerIndicator(bbmSMA, standardDeviation); ! ! assertEquals(1.17, bblSMA.getValue(6), 0.01); ! assertEquals(0.08, bblSMA.getValue(1), 0.01); } @Test(expected = IndexOutOfBoundsException.class) ! public void testIndexGreatterThanTheIndicatorLenghtShouldThrowException() { ! BollingerBandsMiddleIndicator bbmSMA = new BollingerBandsMiddleIndicator(sma); StandardDeviationIndicator standardDeviation = new StandardDeviationIndicator(closePrice, timeFrame); Index: BollingerBandsUpperIndicatorTest.java =================================================================== RCS file: /cvsroot/tail/Tail/src/test/net/sf/tail/indicator/bollingerbands/BollingerBandsUpperIndicatorTest.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** BollingerBandsUpperIndicatorTest.java 19 May 2007 13:23:18 -0000 1.3 --- BollingerBandsUpperIndicatorTest.java 31 May 2007 16:45:41 -0000 1.4 *************** *** 4,10 **** import junit.framework.JUnit4TestAdapter; import net.sf.tail.TimeSeries; import net.sf.tail.indicator.simple.ClosePriceIndicator; import net.sf.tail.indicator.tracker.SMAIndicator; - import net.sf.tail.indicator.tracker.StandardDeviationIndicator; import net.sf.tail.indicator.tracker.bollingerbands.BollingerBandsMiddleIndicator; import net.sf.tail.indicator.tracker.bollingerbands.BollingerBandsUpperIndicator; --- 4,10 ---- import junit.framework.JUnit4TestAdapter; import net.sf.tail.TimeSeries; + import net.sf.tail.indicator.helper.StandardDeviationIndicator; import net.sf.tail.indicator.simple.ClosePriceIndicator; import net.sf.tail.indicator.tracker.SMAIndicator; import net.sf.tail.indicator.tracker.bollingerbands.BollingerBandsMiddleIndicator; import net.sf.tail.indicator.tracker.bollingerbands.BollingerBandsUpperIndicator; *************** *** 18,45 **** private TimeSeries data; @Before public void setUp() throws Exception { data = new SampleTimeSeries(new double[] { 1, 2, 3, 4, 3, 4, 5, 4, 3, 3, 4, 3, 2 }); } @Test public void testBollingerBandsUpperUsingSMAAndStandardDeviation() throws Exception { ! int timeFrame = 3; ! ClosePriceIndicator closePrice = new ClosePriceIndicator(data); ! SMAIndicator sma = new SMAIndicator(closePrice, timeFrame); BollingerBandsMiddleIndicator bbmSMA = new BollingerBandsMiddleIndicator(sma); StandardDeviationIndicator standardDeviation = new StandardDeviationIndicator(closePrice, timeFrame); BollingerBandsUpperIndicator bbuSMA = new BollingerBandsUpperIndicator(bbmSMA, standardDeviation); ! for (int i = 0; i < data.getSize(); i++) { ! assertEquals(sma.getValue(i) + 2 * standardDeviation.getValue(i), bbuSMA.getValue(i)); ! } } @Test(expected = IndexOutOfBoundsException.class) ! public void testWrongIndex() { ! int timeFrame = 3; ! ClosePriceIndicator closePrice = new ClosePriceIndicator(data); ! SMAIndicator sma = new SMAIndicator(closePrice, timeFrame); BollingerBandsMiddleIndicator bbmSMA = new BollingerBandsMiddleIndicator(sma); StandardDeviationIndicator standardDeviation = new StandardDeviationIndicator(closePrice, timeFrame); --- 18,69 ---- private TimeSeries data; + private int timeFrame; + + private ClosePriceIndicator closePrice; + + private SMAIndicator sma; + @Before public void setUp() throws Exception { data = new SampleTimeSeries(new double[] { 1, 2, 3, 4, 3, 4, 5, 4, 3, 3, 4, 3, 2 }); + timeFrame = 3; + closePrice = new ClosePriceIndicator(data); + sma = new SMAIndicator(closePrice, timeFrame); } @Test public void testBollingerBandsUpperUsingSMAAndStandardDeviation() throws Exception { ! BollingerBandsMiddleIndicator bbmSMA = new BollingerBandsMiddleIndicator(sma); StandardDeviationIndicator standardDeviation = new StandardDeviationIndicator(closePrice, timeFrame); BollingerBandsUpperIndicator bbuSMA = new BollingerBandsUpperIndicator(bbmSMA, standardDeviation); ! assertEquals(1.0, bbuSMA.getValue(0),0.01); ! assertEquals(2.91, bbuSMA.getValue(1),0.01); ! assertEquals(4.82, bbuSMA.getValue(2),0.01); ! assertEquals(5.82, bbuSMA.getValue(3),0.01); ! assertEquals(4.96, bbuSMA.getValue(4),0.01); ! assertEquals(5.29, bbuSMA.getValue(5),0.01); ! assertEquals(6.82, bbuSMA.getValue(6),0.01); ! assertEquals(5.96, bbuSMA.getValue(7),0.01); ! assertEquals(6.82, bbuSMA.getValue(8),0.01); ! assertEquals(4.96, bbuSMA.getValue(9),0.01); ! ! } ! ! @Test ! public void testBollingerBandsUpperShouldWorkJumpingIndexes() { ! ! BollingerBandsMiddleIndicator bbmSMA = new BollingerBandsMiddleIndicator(sma); ! StandardDeviationIndicator standardDeviation = new StandardDeviationIndicator(closePrice, timeFrame); ! BollingerBandsUpperIndicator bbuSMA = new BollingerBandsUpperIndicator(bbmSMA, standardDeviation); ! ! assertEquals(4.96, bbuSMA.getValue(9),0.01); ! assertEquals(4.96, bbuSMA.getValue(4),0.01); } @Test(expected = IndexOutOfBoundsException.class) ! public void testIndexGreatterThanTheIndicatorLenghtShouldThrowException() { ! BollingerBandsMiddleIndicator bbmSMA = new BollingerBandsMiddleIndicator(sma); StandardDeviationIndicator standardDeviation = new StandardDeviationIndicator(closePrice, timeFrame); |