@Test public void testSimpleGame() { Table table = new Table(NR_COLUMNS, manager); Guess secret = createSecret(); System.out.println(PrettyPrintRow.pprint(new Row(secret, 4, 0))); System.out.println(); Game game = new Game(table, secret); Guesser guesser = new UniqueGuesser(table); while (!game.isFinished()) { Guess guess = guesser.guess(); if (guess == Guess.none) { Assert.fail(); } Row row = game.addNewGuess(guess); System.out.println(PrettyPrintRow.pprint(row)); } } }
public static String pprint(Row row) { String string = ""; PrintableRow pRow = new PrintableRow(row); for (int i = 0; i < pRow.nrOfColumns(); i++) { string += colorToChar(pRow.position(i)); } string += " "; string += pRow.matchedPositions(); string += "/"; string += pRow.matchedColors(); return string; } }
@Test public void testSimpleGame() { Table table = new Table(nrColumns, manager); Color[] secret = createSecret(); System.out.println(PrettyPrintRow.pprint(new Row(secret))); System.out.println(); Game game = new Game(table, secret); Guesser guesser = new UniqueGuesser(table); while (!game.isFinished()) { Row guess = guesser.guess(); if (guess == Row.none) { Assert.fail(); } game.addNewGuess(guess); System.out.println(PrettyPrintRow.pprint(guess)); } } }
public String playParallel() { Table table = new Table(NR_COLUMNS, manager); Guess secret = createSecret(); println(PrettyPrintRow.pprint(new Row(secret, NR_COLUMNS, 0))); println(); Game game = new Game(table, secret); final IntervalGuesser[] guessers = createGuessers(table); startAsynchronousGuessers(guessers); final Guesser finalCheckGuesser = new UniqueGuesser(table); int serial = 1; try { while (!game.isFinished()) { final Guess guess = guessQueue.take(); if (finalCheckGuesser.guessMatch(guess)) { if (guess == Guess.none) { Assert.fail(); } Row row = game.addNewGuess(guess); print("" + serial + ". "); serial++; println(PrettyPrintRow.pprint(row)); } } } catch (InterruptedException ie) { } finally { stopAsynchronousGuessers(guessers); } return out; }