* (expensive to check)
* @param groups we will check each stone in each of these groups.
*/
public void confirmAllStonesInGroupsClaimed(GoGroupSet groups) {
NeighborAnalyzer na = new NeighborAnalyzer(board_);
for (IGoGroup parentGroup : groups) {
GoBoardPositionSet parentGroupStones = parentGroup.getStones();
for (GoBoardPosition stone : parentGroupStones) { // for each stone in that group
// compute the group from this stone and confirm it matches the parent group
GoBoardPositionList g = na.findGroupFromInitialPosition(stone);
// perhaps we should do something more than check the size.
if (g.size() != parentGroupStones.size()) {
groups.debugPrint(0, "Confirm stones in groups they Claim failed. \nGroups are:\n", true, true);
StringBuilder bldr = new StringBuilder();
bldr.append(board_.toString());
bldr.append("\n");
bldr.append("\n\nIt seems that using different seeds yields different groups:");
for (GoBoardPosition stone1 : parentGroupStones) {
GoBoardPositionList gg = na.findGroupFromInitialPosition(stone);
String title = "\nSEED STONE = "+ stone1 + " found groups of size " + gg.size();
bldr.append(gg.toString(title));
}
GameContext.log(0, bldr.toString());
GameContext.log(0,