summaryrefslogtreecommitdiff
path: root/Mastermind/Test.java
blob: 58241470f0ae20f883a72fe145502b74c5267866 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
package Mastermind;

import Mastermind.EngineResponse;
import Mastermind.FranekEngine;
import Mastermind.MiguelEngine;

class Test
{
	public static void main (String args[])
	{
		int good=0;
		int bad=0;

		System.out.println("Test all possible combos");

		for (int c1=1;c1<=6;c1++)
		for (int c2=1;c2<=6;c2++)
		for (int c3=1;c3<=6;c3++)
		for (int c4=1;c4<=6;c4++)
		{
			System.out.println("Test all guesses for code: "+c1+c2+c3+c4);
			for (int g1=1;g1<=6;g1++)
			for (int g2=1;g2<=6;g2++)
			for (int g3=1;g3<=6;g3++)
			for (int g4=1;g4<=6;g4++)
			{
				EngineResponse fra = FranekEngine.run(c1,c2,c3,c4,g1,g2,g3,g4);
				EngineResponse mig = MiguelEngine.run(c1,c2,c3,c4,g1,g2,g3,g4);

				if(!fra.isSame(mig))
				{
					if(args.length>0 && args[0].equals("--show-mismatch")){
						System.out.println("Mismatch on " +c1+c2+c3+c4+ " with guess: "+g1+g2+g3+g4);
						System.out.println("FRA: "+fra.toString());
						System.out.println("MIG: "+mig.toString());
					}
					bad++;
				}
				else
					good++;

			}
		}

		System.out.println("OK: "+good);
		System.out.println("MISMATCH: "+bad);
	}
}