Skip to content

Commit 272fd6c

Browse files
committed
Add nsga3 ctor arguments test
1 parent 9c81524 commit 272fd6c

File tree

1 file changed

+18
-2
lines changed

1 file changed

+18
-2
lines changed

tests/nsga3.cpp

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,25 @@
1717

1818
using namespace pagmo;
1919

20-
BOOST_AUTO_TEST_CASE(nsga3_instance){
20+
21+
BOOST_AUTO_TEST_CASE(nsga3_algorithm_construction)
22+
{
2123
BOOST_CHECK_NO_THROW(nsga3{});
22-
};
24+
nsga3 user_algo{1u, 1.00, 30.0, 0.10, 20.0, 12u, 32u, false};
25+
BOOST_CHECK(user_algo.get_verbosity() == 0u);
26+
BOOST_CHECK(user_algo.get_seed() == 32u);
27+
28+
// Verify throw on invalid arguments
29+
// Invalid cr
30+
BOOST_CHECK_THROW((nsga3{1u, 2.00, 30.0, 0.10, 20.0, 12u, 32u, false}), std::invalid_argument);
31+
BOOST_CHECK_THROW((nsga3{1u, -1.00, 30.0, 0.10, 20.0, 12u, 32u, false}), std::invalid_argument);
32+
// Invalid mut
33+
BOOST_CHECK_THROW((nsga3{1u, 1.00, 30.0, 1.10, 20.0, 12u, 32u, false}), std::invalid_argument);
34+
BOOST_CHECK_THROW((nsga3{1u, 1.00, 30.0, -0.10, 20.0, 12u, 32u, false}), std::invalid_argument);
35+
// Invalid eta_mut
36+
BOOST_CHECK_THROW((nsga3{1u, 1.00, 30.0, 0.10, 100.1, 12u, 32u, false}), std::invalid_argument);
37+
BOOST_CHECK_THROW((nsga3{1u, 1.00, 30.0, 0.10, -0.1, 12u, 32u, false}), std::invalid_argument);
38+
}
2339

2440
BOOST_AUTO_TEST_CASE(nsga3_evolve_population){
2541
dtlz udp{1u, 10u, 3u};

0 commit comments

Comments
 (0)