TEST(ConnectXTest, turnCheck) // Check if there is proper turn switiching. { ConnectX conn; ASSERT_EQ(2,conn.whoseTurn()); conn.placePiece(3); ASSERT_EQ(1,conn.whoseTurn()); conn.placePiece(2); ASSERT_EQ(2,conn.whoseTurn()); }
TEST(ConnectXText, placeTest) { // this test crashes since bug in inBounds function ConnectX cx; ASSERT_TRUE(cx.whoseTurn() == ConnectX::BLACK); cx.placePiece(0); ASSERT_TRUE(cx.whoseTurn() == ConnectX::WHITE); cx.placePiece(1); ASSERT_TRUE(cx.whoseTurn() == ConnectX::BLACK); //cx.placePiece(-1); //ASSERT_TRUE(cx.whoseTurn() == ConnectX::WHITE); //cx.placePiece(-1); //ASSERT_TRUE(cx.whoseTurn() == ConnectX::BLACK); }
TEST(ConnectXTest, checkHeight) { ConnectX obj; obj.showBoard(); obj.showBoard(); obj.placePiece(0); obj.showBoard(); obj.placePiece(0); obj.showBoard(); obj.placePiece(0); obj.showBoard(); obj.placePiece(0); obj.showBoard(); obj.placePiece(0); obj.showBoard(); obj.placePiece(0); obj.showBoard(); obj.placePiece(0); obj.showBoard(); obj.placePiece(9); obj.placePiece(-5); obj.placePiece(0); obj.showBoard(); ASSERT_EQ(obj.whoseTurn(),2); }
TEST(ConnectXTest, checkPlacePieceBelowZero) { ConnectX obj; obj.placePiece(-1); obj.showBoard(); ASSERT_EQ(obj.whoseTurn(),1); }
TEST(ConnectXTest, checkWhiteTurn) { ConnectX obj; obj.showBoard(); obj.placePiece(0); obj.showBoard(); ASSERT_EQ(obj.whoseTurn(),1); }
TEST(ConnectXTest, checkSizesInitial) { // default sizes ConnectX cx; ASSERT_TRUE(cx.at(DEFAULT_WIDTH - 1, DEFAULT_HEIGHT - 1) == ConnectX::EMPTY); ASSERT_TRUE(cx.at(DEFAULT_WIDTH, DEFAULT_HEIGHT) == ConnectX::INVALID); ASSERT_TRUE(cx.whoseTurn() == ConnectX::BLACK); for(int w = 0; w < DEFAULT_WIDTH; ++w) for(int h = 0; h < DEFAULT_HEIGHT; ++h) ASSERT_TRUE(cx.at(w, h) == ConnectX::EMPTY); ConnectX cx_small(DEFAULT_WIDTH - 2, DEFAULT_HEIGHT - 2, 2); ASSERT_TRUE(cx_small.whoseTurn() == ConnectX::BLACK); }
TEST(ConnectXTest, checkBlackTurn) { ConnectX obj; obj.showBoard(); ASSERT_EQ(obj.whoseTurn(),2); }