[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[computer-go] unit test failure in orego
hi, just starting to fool around with orego. running CutSuggestorTest and
ConnectSuggestorTest run fine when run by themselves, but when put into an
all tests suite (see below, i did have to write a few suite() methods),
they throw at Region.contains() on return ((bits[move.getRow()] >>>
move.getCol()) & 1) != 0; with an array out of bound (value is 4). sorta
feels like there are some side effects. anybody got a clue?
thanks
package orego.detect;
//import org.apache.commons.logging.Log;
//import org.apache.commons.logging.LogFactory;
import junit.framework.*;
public class AllTests {
public static void main(String[] args) throws Exception {
junit.textui.TestRunner.run(suite());
}
public static Test suite() throws Exception {
//log.info(clazz);
TestSuite suite=new TestSuite();
suite.addTest(BensonLifeTest.suite());
suite.addTest(BlockFinderTest.suite());
suite.addTest(ConnectSuggestorTest.suite());
suite.addTest(CutSuggestorTest.suite());
suite.addTest(LebensraumDetectorTest.suite());
suite.addTest(LibertyCounterTest.suite());
suite.addTest(NearestNeighborScorerTest.suite());
suite.addTest(PatternMatcherTest.suite());
suite.addTest(PlayNearLastMoveSuggestorTest.suite());
suite.addTest(StrictScorerTest.suite());
suite.addTest(ThirdAndFourthLineSuggestorTest.suite());
return suite;
}
private static final Class clazz=AllTests.class;
// static final Log log=LogFactory.getLog(clazz);
}
[echo] env.ANT_HOME=d:\opt\dev\tools\apache-ant-1.6.2
[echo] env.JAVA_HOME=d:\opt\dev\sdks\jdk-1_5_0_01
[echo] rt.jar=d:\opt\dev\sdks\jdk-1_5_0_01/jre/lib/rt.jar
init:
compile:
compiletst:
test:
[java] .testInAtari
[java] .testLiberties
[java] .testLegalMove
[java] .testCapture
[java] .testOccupiedPoint
[java] .testKoViolation
[java] .testAnotherKoViolation
[java] .testEastEdgeKoViolation
[java] .testSuperKo
[java] ..testNormalize
[java] .testNormalizeSymmetric
[java] .testReflect
[java] .testRotate
[java] .testRotateSymmetric
[java] .testBoardExtraction
[java] .testApply
[java] .testClone
[java] .testEquals
[java] .testColorAt
[java] .testGetRegion
[java] .testIsOccupied
[java] .testSetColor
[java] .testToString
[java] .testCompareTo
[java] .testSwapColors
[java] .testClone
[java] .testEquals
[java] .testToString
[java] .testGetCol
[java] .testGetRow
[java] .testIsPass
[java] .testReflect
[java] .testRotate
[java] .testClone
[java] .testAllZero
[java] .testGetWidth
[java] .testIncrement
[java] .testIterator
[java] .testNonzeroRegion
[java] .
[java] testSet
[java] .testOpposite
[java] .testMatch
[java] .testCorrectMatch
[java] .testCornerFailedMatch
[java] .testSuccessfulEdgeMatch
[java] .testWinnow
[java] .testReflect
[java] .testRotate
[java] .testClone
[java] .testEquals
[java] .testToString
[java] .testIterator
[java] .testAdd
[java] .testContains
[java] .testInterior
[java] .testMinus
[java] .testExpand
[java] .testExpandToRectangle
[java] .testFindBlock
[java] .testHashCode
[java] .testIntersection
[java] .testIntersects
[java] .testIsContiguous
[java] .testIsEmpty
[java] .testInterior
[java] .testInteriorOnEdge
[java] .testKeepOnly
[java] .testNegate
[java] .testNeighbors
[java] .testRandomPoint
[java] .testRemove
[java] .testShiftDown
[java] .testShiftLeft
[java] .testShiftRight
[java] .testShiftUp
[java] .testSize
[java] .testUnion
[java] .testAlternateConstructor
[java] .testKeepRandomSubset
[java] .testAlive
[java] .
[java] testGetVacantBlock
[java] .testGetBlock
[java] .testGetBlocks
[java] .testFindBlocks
[java] .testConnection
[java] E.testIllusory
[java] E.testCut
[java] E.testConnection
[java] E.Skipping testUpdate because getBoardWidth() is not 9
[java] .testLibertyCount
[java] .testDisappearingStones
[java] .testMatch
[java] .testNoMatch
[java] .testColorInversion
[java] .testMultiplePatterns
[java] .testMove
[java] .testUpdate
[java] .testWithNothingDead
[java] ..testSet
[java] .testSingleMove
[java] H:\projects\orego /D:/opt/dev/tools/apache-ant-1.6.2/lib/ant.jar
[java] .testMultipleMoves
[java] H:\projects\orego /D:/opt/dev/tools/apache-ant-1.6.2/lib/ant.jar
[java] .testVariations
[java] H:\projects\orego /D:/opt/dev/tools/apache-ant-1.6.2/lib/ant.jar
[java] Time: 0.55
[java] There were 4 errors:
[java] 1)
testConnection(orego.detect.ConnectSuggestorTest)java.lang.ArrayIndexOutOfBoundsException:
5
[java] at orego.datastruct.Region.contains(Unknown Source)
[java] at orego.datastruct.Configuration.isOccupied(Unknown Source)
[java] at orego.datastruct.Board.tryPlayingAt(Unknown Source)
[java] at orego.datastruct.Board.playAt(Unknown Source)
[java] at
orego.detect.ConnectSuggestorTest.testConnection(Unknown Source)
[java] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[java] at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
[java] at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
[java] at AllTests.main(Unknown Source)
[java] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[java] at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
[java] at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
[java] at
org.apache.tools.ant.taskdefs.ExecuteJava.run(ExecuteJava.java:193)
[java] at
org.apache.tools.ant.taskdefs.ExecuteJava.execute(ExecuteJava.java:130)
[java] at org.apache.tools.ant.taskdefs.Java.run(Java.java:705)
[java] at
org.apache.tools.ant.taskdefs.Java.executeJava(Java.java:177)
[java] at org.apache.tools.ant.taskdefs.Java.execute(Java.java:83)
[java] at
org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
[java] at org.apache.tools.ant.Task.perform(Task.java:364)
[java] at org.apache.tools.ant.Target.execute(Target.java:341)
[java] at org.apache.tools.ant.Target.performTasks(Target.java:369)
[java] at
org.apache.tools.ant.Project.executeTarget(Project.java:1214)
[java] at
org.apache.tools.ant.Project.executeTargets(Project.java:1062)
[java] at org.apache.tools.ant.Main.runBuild(Main.java:673)
[java] at org.apache.tools.ant.Main.startAnt(Main.java:188)
[java] at org.apache.tools.ant.launch.Launcher.run(Launcher.java:196)
[java] at org.apache.tools.ant.launch.Launcher.main(Launcher.java:55)
[java] 2)
testIllusory(orego.detect.ConnectSuggestorTest)java.lang.ArrayIndexOutOfBoundsException:
4
[java] at orego.datastruct.Region.contains(Unknown Source)
[java] at orego.datastruct.Configuration.isOccupied(Unknown Source)
[java] at orego.datastruct.Board.tryPlayingAt(Unknown Source)
[java] at orego.datastruct.Board.playAt(Unknown Source)
[java] at orego.detect.ConnectSuggestorTest.testIllusory(Unknown
Source)
[java] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[java] at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
[java] at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
[java] at AllTests.main(Unknown Source)
[java] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[java] at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
[java] at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
[java] at
org.apache.tools.ant.taskdefs.ExecuteJava.run(ExecuteJava.java:193)
[java] at
org.apache.tools.ant.taskdefs.ExecuteJava.execute(ExecuteJava.java:130)
[java] at org.apache.tools.ant.taskdefs.Java.run(Java.java:705)
[java] at
org.apache.tools.ant.taskdefs.Java.executeJava(Java.java:177)
[java] at org.apache.tools.ant.taskdefs.Java.execute(Java.java:83)
[java] at
org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
[java] at org.apache.tools.ant.Task.perform(Task.java:364)
[java] at org.apache.tools.ant.Target.execute(Target.java:341)
[java] at org.apache.tools.ant.Target.performTasks(Target.java:369)
[java] at
org.apache.tools.ant.Project.executeTarget(Project.java:1214)
[java] at
org.apache.tools.ant.Project.executeTargets(Project.java:1062)
[java] at org.apache.tools.ant.Main.runBuild(Main.java:673)
[java] at org.apache.tools.ant.Main.startAnt(Main.java:188)
[java] at org.apache.tools.ant.launch.Launcher.run(Launcher.java:196)
[java] at org.apache.tools.ant.launch.Launcher.main(Launcher.java:55)
[java] 3)
testCut(orego.detect.CutSuggestorTest)java.lang.ArrayIndexOutOfBoundsException:
4
[java] at orego.datastruct.Region.contains(Unknown Source)
[java] at orego.datastruct.Configuration.isOccupied(Unknown Source)
[java] at orego.datastruct.Board.tryPlayingAt(Unknown Source)
[java] at orego.datastruct.Board.playAt(Unknown Source)
[java] at orego.detect.CutSuggestorTest.testCut(Unknown Source)
[java] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[java] at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
[java] at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
[java] at AllTests.main(Unknown Source)
[java] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[java] at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
[java] at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
[java] at
org.apache.tools.ant.taskdefs.ExecuteJava.run(ExecuteJava.java:193)
[java] at
org.apache.tools.ant.taskdefs.ExecuteJava.execute(ExecuteJava.java:130)
[java] at org.apache.tools.ant.taskdefs.Java.run(Java.java:705)
[java] at
org.apache.tools.ant.taskdefs.Java.executeJava(Java.java:177)
[java] at org.apache.tools.ant.taskdefs.Java.execute(Java.java:83)
[java] at
org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
[java] at org.apache.tools.ant.Task.perform(Task.java:364)
[java] at org.apache.tools.ant.Target.execute(Target.java:341)
[java] at org.apache.tools.ant.Target.performTasks(Target.java:369)
[java] at
org.apache.tools.ant.Project.executeTarget(Project.java:1214)
[java] at
org.apache.tools.ant.Project.executeTargets(Project.java:1062)
[java] at org.apache.tools.ant.Main.runBuild(Main.java:673)
[java] at org.apache.tools.ant.Main.startAnt(Main.java:188)
[java] at org.apache.tools.ant.launch.Launcher.run(Launcher.java:196)
[java] at org.apache.tools.ant.launch.Launcher.main(Launcher.java:55)
[java] 4)
testIllusoryCut(orego.detect.CutSuggestorTest)java.lang.ArrayIndexOutOfBoundsException:
4
[java] at orego.datastruct.Region.contains(Unknown Source)
[java] at orego.datastruct.Configuration.isOccupied(Unknown Source)
[java] at orego.datastruct.Board.tryPlayingAt(Unknown Source)
[java] at orego.datastruct.Board.playAt(Unknown Source)
[java] at orego.detect.CutSuggestorTest.testIllusoryCut(Unknown
Source)
[java] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[java] at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
[java] at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
[java] at AllTests.main(Unknown Source)
[java] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[java] at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
[java] at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
[java] at
org.apache.tools.ant.taskdefs.ExecuteJava.run(ExecuteJava.java:193)
[java] at
org.apache.tools.ant.taskdefs.ExecuteJava.execute(ExecuteJava.java:130)
[java] at org.apache.tools.ant.taskdefs.Java.run(Java.java:705)
[java] at
org.apache.tools.ant.taskdefs.Java.executeJava(Java.java:177)
[java] at org.apache.tools.ant.taskdefs.Java.execute(Java.java:83)
[java] at
org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
[java] at org.apache.tools.ant.Task.perform(Task.java:364)
[java] at org.apache.tools.ant.Target.execute(Target.java:341)
[java] at org.apache.tools.ant.Target.performTasks(Target.java:369)
[java] at
org.apache.tools.ant.Project.executeTarget(Project.java:1214)
[java] at
org.apache.tools.ant.Project.executeTargets(Project.java:1062)
[java] at org.apache.tools.ant.Main.runBuild(Main.java:673)
[java] at org.apache.tools.ant.Main.startAnt(Main.java:188)
[java] at org.apache.tools.ant.launch.Launcher.run(Launcher.java:196)
[java] at org.apache.tools.ant.launch.Launcher.main(Launcher.java:55)
[java] FAILURES!!!
[java] Tests run: 104, Failures: 0, Errors: 4
BUILD SUCCESSFUL
Total time: 3 seconds
---
ray tayek <http://tayek.com/>, co-chair <http://www.ocjug.org/>, actively
seeking telecommuting work.
_______________________________________________
computer-go mailing list
computer-go@xxxxxxxxxxxxxxxxx
http://www.computer-go.org/mailman/listinfo/computer-go/