コード例 #1
0
ファイル: Project7.cpp プロジェクト: JDongian/EE312
void timeStep() {
    time_step += 1;
    addFood();
    moveBugs();
    killDeadBugs();
    reproduceBugs();
    percent_straight = 100 * total_straight / bug_list.size() / GENE_TOTAL;
    percent_left = 100 * total_left / bug_list.size() / GENE_TOTAL;
    percent_right = 100 * total_right / bug_list.size() / GENE_TOTAL;
    percent_back = 100 * total_back / bug_list.size() / GENE_TOTAL;
}	
コード例 #2
0
ファイル: main.cpp プロジェクト: lemonade512/EE312
TEST(BugKillingTests, SimpleBugKillingTest)
{
    bug_list.clear();
    bug_list.push_back(initBug(0, 0, 2, MOVE_HEALTH));
    bug_list.push_back(initBug(0, 0, 4, MOVE_HEALTH * 2));
    initWorld();

    moveBugs();
    killDeadBugs();

    ASSERT_EQ(bug_list.size(), 1);
    ASSERT_EQ(world[0][0], EMPTY);
    ASSERT_EQ(world[0][1], EMPTY);
    ASSERT_EQ(world[1][0], 0);
}
コード例 #3
0
ファイル: main.cpp プロジェクト: lemonade512/EE312
TEST(BugKillingTests, NoSkipBugKillingTest) {
	bug_list.clear();
	bug_list.push_back(initBug(0, 0, NORTH, MOVE_HEALTH));
	bug_list.push_back(initBug(0, 0, SOUTH, MOVE_HEALTH));
	bug_list.push_back(initBug(0, 0, WEST, MOVE_HEALTH * 2));
	initWorld();

	moveBugs();
	killDeadBugs();

	ASSERT_EQ(bug_list.size(), 1);
	ASSERT_EQ(world[0][0], EMPTY);
	ASSERT_EQ(world[WORLD_SIZE-1][0], EMPTY);
	ASSERT_EQ(world[1][0], EMPTY);
	ASSERT_EQ(world[0][WORLD_SIZE-1], 0);
}
コード例 #4
0
ファイル: main.cpp プロジェクト: lemonade512/EE312
TEST(BugKillingTests, RemoveLastBugIfDead) {
	bug_list.clear();
	bug_list.push_back(initBug(0, 0, EAST, 0));
	bug_list.push_back(initBug(0, 1, EAST, MOVE_HEALTH * 3));
	bug_list.push_back(initBug(0, 2, EAST, MOVE_HEALTH * 3));
	bug_list.push_back(initBug(0, 3, EAST, 0));
	initWorld();

	moveBugs();
	killDeadBugs();

	ASSERT_EQ(bug_list.size(), 2);
	ASSERT_EQ(world[0][1], EMPTY);
	ASSERT_GE(world[0][2], 0);
	ASSERT_GE(world[0][3], 0);
	ASSERT_EQ(world[0][4], EMPTY);
}