Unit test for EN_addcontrol
This commit is contained in:
@@ -260,4 +260,61 @@ BOOST_FIXTURE_TEST_CASE(test_addpattern, Fixture)
|
|||||||
BOOST_REQUIRE(pat_index == n_patterns_2);
|
BOOST_REQUIRE(pat_index == n_patterns_2);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
BOOST_FIXTURE_TEST_CASE(test_add_control, Fixture)
|
||||||
|
{
|
||||||
|
int flag = 00;
|
||||||
|
long t, tstep;
|
||||||
|
float h1, h2;
|
||||||
|
|
||||||
|
// run with original controls
|
||||||
|
error = EN_openH(ph);
|
||||||
|
BOOST_REQUIRE(error == 0);
|
||||||
|
error = EN_initH(ph, flag);
|
||||||
|
BOOST_REQUIRE(error == 0);
|
||||||
|
do {
|
||||||
|
error = EN_runH(ph, &t);
|
||||||
|
BOOST_REQUIRE(error == 0);
|
||||||
|
error = EN_getnodevalue(ph, 11, EN_HEAD, h1); // get the tank head
|
||||||
|
BOOST_REQUIRE(error == 0);
|
||||||
|
error = EN_nextH(ph, &tstep);
|
||||||
|
BOOST_REQUIRE(error == 0);
|
||||||
|
} while (tstep > 0);
|
||||||
|
|
||||||
|
error = EN_closeH(ph);
|
||||||
|
BOOST_REQUIRE(error == 0);
|
||||||
|
|
||||||
|
// disable current controls
|
||||||
|
error = ENsetcontrol(ph, 1, EN_LOWLEVEL, 0, 0, 0, 0);
|
||||||
|
BOOST_REQUIRE(error == 0);
|
||||||
|
error = ENsetcontrol(ph, 2, EN_HILEVEL, 0, 0, 0, 0);
|
||||||
|
BOOST_REQUIRE(error == 0);
|
||||||
|
|
||||||
|
// add new controls
|
||||||
|
error = ENaddcontrol(ph, Cindex, EN_LOWLEVEL, Lindex, 1, Nindex, 110);
|
||||||
|
BOOST_REQUIRE(error == 0);
|
||||||
|
BOOST_REQUIRE(Cindex == 3);
|
||||||
|
error = ENaddcontrol(ph, Cindex, EN_HILEVEL, Lindex, 0, Nindex, 140);
|
||||||
|
BOOST_REQUIRE(error == 0);
|
||||||
|
BOOST_REQUIRE(Cindex == 4);
|
||||||
|
|
||||||
|
// run with new controls
|
||||||
|
error = EN_openH(ph);
|
||||||
|
BOOST_REQUIRE(error == 0);
|
||||||
|
error = EN_initH(ph, flag);
|
||||||
|
BOOST_REQUIRE(error == 0);
|
||||||
|
do {
|
||||||
|
error = EN_runH(ph, &t);
|
||||||
|
BOOST_REQUIRE(error == 0);
|
||||||
|
error = EN_getnodevalue(ph, 11, EN_HEAD, h2); // get the tank head
|
||||||
|
BOOST_REQUIRE(error == 0);
|
||||||
|
error = EN_nextH(ph, &tstep);
|
||||||
|
BOOST_REQUIRE(error == 0);
|
||||||
|
} while (tstep > 0);
|
||||||
|
|
||||||
|
error = EN_closeH(ph);
|
||||||
|
BOOST_REQUIRE(error == 0);
|
||||||
|
|
||||||
|
BOOST_REQUIRE(h1 == h2); // end head should be the same with new controls
|
||||||
|
}
|
||||||
|
|
||||||
BOOST_AUTO_TEST_SUITE_END()
|
BOOST_AUTO_TEST_SUITE_END()
|
||||||
|
|||||||
Reference in New Issue
Block a user