29 lines
633 B
C++
29 lines
633 B
C++
#include "fces/population.hpp"
|
|
#include <gtest/gtest.h>
|
|
|
|
using namespace fces;
|
|
|
|
TEST(PopulationTest, Construction) {
|
|
Population pop(50);
|
|
EXPECT_EQ(pop.size(), 50);
|
|
}
|
|
|
|
TEST(PopulationTest, DirectConstruction) {
|
|
Population pop(200, 10000, EliteStrategy::Cumulative, false, false, false,
|
|
false, false, true);
|
|
EXPECT_EQ(pop.size(), 1);
|
|
}
|
|
|
|
TEST(PopulationTest, GetBestActive) {
|
|
Population pop(10);
|
|
auto &best = pop.get_best_active();
|
|
// Should not crash
|
|
EXPECT_GE(best.id, 0u);
|
|
}
|
|
|
|
TEST(PopulationTest, CalmDown) {
|
|
Population pop(10);
|
|
pop.calm_down();
|
|
EXPECT_LT(pop.global_sigma_modifier(), 1.0f);
|
|
}
|