6 #include <gtest/gtest.h>
8 namespace etrobocon2018_test {
11 TEST(ExplorerTest, getInitialValueOfBlockAreaNodeListTest)
17 ASSERT_EQ(
nullptr, actual);
21 TEST(ExplorerTest, getValueOfBlockAreaNodeListTest)
24 std::vector<Node> expectedList
28 std::vector<std::vector<int>> expectedPositionList = { { 0, 0 }, { 1, 0 }, { 2, 0 }, { 3, 0 },
30 { 0, 1 }, { 1, 1 }, { 2, 1 }, { 3, 1 },
32 { 0, 2 }, { 1, 2 }, { 2, 2 }, { 3, 2 },
34 { 0, 3 }, { 1, 3 }, { 2, 3 }, { 3, 3 } };
39 ASSERT_EQ(expectedList.size(), actual->size());
41 for(
unsigned int i = 0; i < expectedList.size(); i++) {
42 ASSERT_EQ(expectedList[i].getNodeID(), actual->at(i)->getNodeID());
43 ASSERT_EQ(expectedPositionList[i][0], actual->at(i)->getPositionX());
44 ASSERT_EQ(expectedPositionList[i][1], actual->at(i)->getPositionY());
48 TEST(ExplorerTest, checkNodeHadBlockTest)
62 TEST(ExplorerTest, searchRouteFrom0To1Test)
65 unsigned long int expectedSize = 2;
66 std::vector<int> expectedList = { 0, 1 };
71 for(
unsigned int i = 0; i < expectedSize; i++) {
75 ASSERT_EQ(expectedSize, actual.size());
79 TEST(ExplorerTest, searchRouteFrom1To0Test)
82 unsigned long int expectedSize = 2;
83 std::vector<int> expectedList = { 1, 0 };
88 for(
unsigned int i = 0; i < expectedSize; i++) {
92 ASSERT_EQ(expectedSize, actual.size());
96 TEST(ExplorerTest, searchRouteFrom8To9Test)
99 unsigned long int expectedSize = 2;
100 std::vector<int> expectedList = { 8, 9 };
105 for(
unsigned int i = 0; i < expectedSize; i++) {
109 ASSERT_EQ(expectedSize, actual.size());
113 TEST(ExplorerTest, searchRouteFrom11To10Test)
116 unsigned long int expectedSize = 2;
117 std::vector<int> expectedList = { 11, 10 };
122 for(
unsigned int i = 0; i < expectedSize; i++) {
126 ASSERT_EQ(expectedSize, actual.size());
130 TEST(ExplorerTest, searchRouteFrom0To2Test)
133 unsigned long int expectedSize = 3;
134 std::vector<int> expectedList = { 0, 1, 2 };
139 for(
unsigned int i = 0; i < expectedSize; i++) {
143 ASSERT_EQ(expectedSize, actual.size());
147 TEST(ExplorerTest, searchRouteFrom2To0Test)
150 unsigned long int expectedSize = 3;
151 std::vector<int> expectedList = { 2, 1, 0 };
156 for(
unsigned int i = 0; i < expectedSize; i++) {
160 ASSERT_EQ(expectedSize, actual.size());
164 TEST(ExplorerTest, searchShortestRouteFrom11To5Test)
167 unsigned long int expectedSize = 4;
168 std::vector<int> expectedList = { 11, 10, 9, 5 };
173 for(
unsigned int i = 0; i < expectedSize; i++) {
177 ASSERT_EQ(expectedSize, actual.size());
181 TEST(ExplorerTest, searchRouteFrom11To5Circumventing6Test)
184 unsigned long int expectedSize = 4;
185 std::vector<int> expectedList = { 11, 10, 9, 5 };
191 for(
unsigned int i = 0; i < expectedSize; i++) {
195 ASSERT_EQ(expectedSize, actual.size());
199 TEST(ExplorerTest, searchRouteFrom11To5Circumventing6And10Test)
202 std::vector<int> expected = { 11, 15, 14, 13, 9, 5 };
209 for(
unsigned int i = 0; i < expected.size(); i++) {
213 ASSERT_EQ(expected.size(), actual.size());
217 TEST(ExplorerTest, searchRouteFrom13To6Circumventing10Test)
220 std::vector<int> expected = { 13, 9, 5, 6 };
229 for(
unsigned int i = 0; i < expected.size(); i++) {
233 ASSERT_EQ(expected.size(), actual.size());
237 TEST(ExplorerTest, searchRouteFrom11To5Circumventing6And9And10Test)
240 std::vector<int> expected = { 11, 7, 3, 2, 1, 5 };
248 for(
unsigned int i = 0; i < expected.size(); i++) {
252 ASSERT_EQ(expected.size(), actual.size());
256 TEST(ExplorerTest, searchRouteInSenarioTest)
260 std::vector<int> expectedCartingBlue = { 8, 12, 13, 14, 10 };
261 std::vector<int> expectedMovingToRed = { 14, 13, 9 };
262 std::vector<int> expectedCartingRed = { 9, 5, 6 };
263 std::vector<int> expectedMovingToYellow = { 5, 1, 2, 3, 7, 11 };
264 std::vector<int> expectedCartingYellow = { 11, 7, 3, 2, 1, 5, 9 };
265 std::vector<int> expectedMovingToGreen = { 5, 4, 8, 12, 13, 14, 15 };
266 std::vector<int> expectedCartingGreen = { 15, 14, 13, 12, 8, 4, 5 };
267 std::vector<int> expectedMovingTo11 = { 4, 0, 1, 2, 3, 7, 11 };
279 for(
unsigned int i = 0; i < expectedCartingBlue.size(); i++) {
281 expectedCartingBlue[i]);
283 EXPECT_EQ(expectedCartingBlue.size(), actualCartingBlue.size());
293 for(
unsigned int i = 0; i < expectedMovingToRed.size(); i++) {
295 expectedMovingToRed[i]);
297 EXPECT_EQ(expectedMovingToRed.size(), actualMovingToRed.size());
307 for(
unsigned int i = 0; i < expectedCartingRed.size(); i++) {
309 expectedCartingRed[i]);
311 EXPECT_EQ(expectedCartingRed.size(), actualCartingRed.size());
320 auto actualMovingToYellow = obj.
searchRoute(5, 11);
321 for(
unsigned int i = 0; i < expectedMovingToYellow.size(); i++) {
323 expectedMovingToYellow[i]);
325 EXPECT_EQ(expectedMovingToYellow.size(), actualMovingToYellow.size());
335 for(
unsigned int i = 0; i < expectedCartingYellow.size(); i++) {
337 expectedCartingYellow[i]);
339 EXPECT_EQ(expectedCartingYellow.size(), actualCartingYellow.size());
349 for(
unsigned int i = 0; i < expectedMovingToGreen.size(); i++) {
351 expectedMovingToGreen[i]);
353 EXPECT_EQ(expectedMovingToGreen.size(), actualMovingToGreen.size());
363 for(
unsigned int i = 0; i < expectedCartingGreen.size(); i++) {
365 expectedCartingGreen[i]);
367 EXPECT_EQ(expectedCartingYellow.size(), actualCartingGreen.size());
377 for(
unsigned int i = 0; i < expectedMovingTo11.size(); i++) {
379 expectedMovingTo11[i]);
381 EXPECT_EQ(expectedMovingTo11.size(), actualMovingTo11.size());
std::vector< Node * > * getBlockAreaNodeList()
bool hasBlock(std::int8_t id)
void setHasBlockIn(std::int8_t blockID)
TEST(AIAnswerArrayTest, construct)
std::vector< int > searchRoute(std::int8_t start, std::int8_t end)