11 #include <boost/test/unit_test.hpp>
12 #include <boost/utility/binary.hpp>
18 BOOST_AUTO_TEST_SUITE(BOOST_TEST_MODULE)
23 Data empty_data(empty_model);
25 BOOST_CHECK(empty_model.
check(empty_data));
40 for (
int k = 0; k < nv_joint; ++k)
42 BOOST_CHECK(
data.start_idx_v_fromRow[(
size_t)(idx_joint + k)] == idx_joint);
43 BOOST_CHECK(
data.end_idx_v_fromRow[(
size_t)(idx_joint + k)] == idx_joint + nv_joint - 1);
55 for (
size_t k = 0; k < (size_t)
model.nv; ++k)
57 const std::vector<int> & support =
data.supports_fromRow[k];
62 const std::vector<int> & support_parent =
data.supports_fromRow[(size_t)
parent_id];
63 BOOST_CHECK(support.size() == support_parent.size() + 1);
64 for (
size_t j = 0; j < support_parent.size(); ++j)
66 BOOST_CHECK(support[j] == support_parent[j]);
70 BOOST_CHECK(support.back() == (
int)k);
90 for (
int v = 0;
v < nvExtended_j;
v++)
93 data_mimic.idx_vExtended_to_idx_v_fromRow[
size_t(idx_vExtended_j +
v)] == idx_vj +
v);
95 data_full.idx_vExtended_to_idx_v_fromRow[
size_t(idx_vExtended_j +
v)]
96 == idx_vExtended_j +
v);
118 const bool parent_is_universe = (
data_mimic.parents_fromRow[idx_vExtended_j] == -1);
119 const bool parent_is_mimic =
120 (
data_mimic.mimic_parents_fromRow[idx_vExtended_j]
121 ==
data_mimic.parents_fromRow[idx_vExtended_j]);
122 const bool parent_is_not_mimic =
123 (
data_mimic.non_mimic_parents_fromRow[idx_vExtended_j]
124 ==
data_mimic.parents_fromRow[idx_vExtended_j]);
125 BOOST_CHECK(parent_is_universe || (parent_is_mimic != parent_is_not_mimic));
127 for (
int v = 1;
v < nvExtended_j;
v++)
130 data_mimic.mimic_parents_fromRow[
size_t(idx_vExtended_j +
v)] == idx_vExtended_j +
v - 1);
145 BOOST_CHECK(
data == data_copy);
147 data_copy.oMi[0].setRandom();
148 BOOST_CHECK(
data != data_copy);
159 data.f[0].setRandom();
161 BOOST_CHECK(
data.f[0] ==
f[0]);
170 for (
size_t k = 0; k < 20; ++k)
179 std::vector<pinocchio::JointIndex> mimicked = {
model.getJointId(
"shoulder1_joint")};
180 std::vector<pinocchio::JointIndex> mimicking = {
model.getJointId(
"shoulder2_joint")};
182 const std::vector<double> ratio = {2.5};
183 const std::vector<double> offset = {0.75};
191 BOOST_CHECK(
data.mimic_subtree_joint.size() == 0);
201 Data data_man_mimic(man_mimic);
205 BOOST_AUTO_TEST_SUITE_END()