// BEGIN KAWIGIEDIT TESTING // Generated by KawigiEdit 2.1.4 (beta) modified by pivanof bool KawigiEdit_RunTest(int testNum, vector <string> p0, vector <string> p1, bool hasAnswer, string p2) { cout << "Test " << testNum << ": [" << "{"; for (int i = 0; int(p0.size()) > i; ++i) { if (i > 0) { cout << ","; } cout << "\"" << p0[i] << "\""; } cout << "}" << "," << "{"; for (int i = 0; int(p1.size()) > i; ++i) { if (i > 0) { cout << ","; } cout << "\"" << p1[i] << "\""; } cout << "}"; cout << "]" << endl; GameInDarknessDiv2 *obj; string answer; obj = new GameInDarknessDiv2(); clock_t startTime = clock(); answer = obj->check(p0, p1); clock_t endTime = clock(); delete obj; bool res; res = true; cout << "Time: " << double(endTime - startTime) / CLOCKS_PER_SEC << " seconds" << endl; if (hasAnswer) { cout << "Desired answer:" << endl; cout << "\t" << "\"" << p2 << "\"" << endl; } cout << "Your answer:" << endl; cout << "\t" << "\"" << answer << "\"" << endl; if (hasAnswer) { res = answer == p2; } if (!res) { cout << "DOESN'T MATCH!!!!" << endl; } else if (double(endTime - startTime) / CLOCKS_PER_SEC >= 2) { cout << "FAIL the timeout" << endl; res = false; } else if (hasAnswer) { cout << "Match :-)" << endl; } else { cout << "OK, but is it right?" << endl; } cout << "" << endl; return res; }
// BEGIN CUT HERE void main( int argc, char* argv[] ) { { string fieldARRAY[] = { "A.B..", "##.##", "##.##"}; vector <string> field( fieldARRAY, fieldARRAY+ARRSIZE(fieldARRAY) ); string movesARRAY[] = {"RRDUR"}; vector <string> moves( movesARRAY, movesARRAY+ARRSIZE(movesARRAY) ); GameInDarknessDiv2 theObject; eq(0, theObject.check(field, moves),"Alice wins"); } { string fieldARRAY[] = {"A.B..", "##.##", "##..."}; vector <string> field( fieldARRAY, fieldARRAY+ARRSIZE(fieldARRAY) ); string movesARRAY[] = {"RRRLD"}; vector <string> moves( movesARRAY, movesARRAY+ARRSIZE(movesARRAY) ); GameInDarknessDiv2 theObject; eq(1, theObject.check(field, moves),"Bob wins"); } { string fieldARRAY[] = {"###.#", "###..", "A..B#", "###..", "###.#"}; vector <string> field( fieldARRAY, fieldARRAY+ARRSIZE(fieldARRAY) ); string movesARRAY[] = {"RR", "R", "UDD"}; vector <string> moves( movesARRAY, movesARRAY+ARRSIZE(movesARRAY) ); GameInDarknessDiv2 theObject; eq(2, theObject.check(field, moves),"Alice wins"); } { string fieldARRAY[] = {"A.###", ".B..."}; vector <string> field( fieldARRAY, fieldARRAY+ARRSIZE(fieldARRAY) ); string movesARRAY[] = {"RDRRRLLLLUDUDRLURDLUD"}; vector <string> moves( movesARRAY, movesARRAY+ARRSIZE(movesARRAY) ); GameInDarknessDiv2 theObject; eq(3, theObject.check(field, moves),"Bob wins"); } { string fieldARRAY[] = {".....", ".#.#.", "##.#.", "A###.", "B...."}; vector <string> field( fieldARRAY, fieldARRAY+ARRSIZE(fieldARRAY) ); string movesARRAY[] = {"D"}; vector <string> moves( movesARRAY, movesARRAY+ARRSIZE(movesARRAY) ); GameInDarknessDiv2 theObject; eq(4, theObject.check(field, moves),"Alice wins"); } { string fieldARRAY[] = {".#...#....#.......#....#......", "...###.#.#..#.#.#..###...#.#.#", ".#.#...#...#..#..#.....##.#...", "#..#.##..##..#.#..###.#....#.#", "..#..#..#...#...#....#..##.#..", "#..##..#..##.#.#.####..#.#...#", ".#....##.#.....#......##.#.#..", ".###.#...#.#.#..#.#.##...##.#.", ".....#.#.##..#.#..##...##...#.", "#.#.#...#...#.#.#...#.#.#.##.#", ".#..##.#..##..#.###...........", "..##.....####.......##.#.#.##.", "#....##.#.#...####.#...#.#.#..", "#.#.#......##.#...#..#.#..#..#", "..#..#.#.##...#.#..#..#..#..#.", ".#..#...#...#..#..#.#..#..#A#.", "..#..#.#.B##.##..#...#.#.##...", "#.#.##..#......#.#.#.#.#...#.#", "#.#...#.######...#.#.#.#.#.#..", "..#.##.#.....#.##..#...#.#.#.#", ".#..#..#.#.#.#.#..#.#####..#.#", "..#.#.##.#.#.##.#......#..#...", "#..#.....#.#.....#.#.##..##.#.", "##..###.#..#.#.#.#..##..#...##", "##.#...#..##.#.#..#.#..#.#.#..", "#..#.#.####..#..#..#..#......#", "..#..#.....####..#.##.#.###.#.", ".#..#.####.#.#..#.....#...#...", "..##.......#...#..####.##.#.#.", "#....#.#.#..#.###....#....#..#"}; vector <string> field( fieldARRAY, fieldARRAY+ARRSIZE(fieldARRAY) ); string movesARRAY[] = {"UURURUULLLLLLLLLLDLLLLUDLLUDDLRDDDULLDLLDDRRRRRDDU","RRUUURUULLD"}; vector <string> moves( movesARRAY, movesARRAY+ARRSIZE(movesARRAY) ); GameInDarknessDiv2 theObject; eq(5, theObject.check(field, moves),"Alice wins"); } }