GCC Code Coverage Report


Directory: ./
File: tests/test-operations.cc
Date: 2025-03-07 12:08:39
Exec Total Coverage
Lines: 14 14 100.0%
Branches: 65 130 50.0%

Line Branch Exec Source
1 // Copyright (C) 2016 LAAS-CNRS
2 // Author: Anna Seppala
3 //
4 // This file is part of the hpp-affordance.
5 //
6 // hpp-affordance is free software: you can redistribute it and/or modify
7 // it under the terms of the GNU Lesser General Public License as published by
8 // the Free Software Foundation, either version 3 of the License, or
9 // (at your option) any later version.
10 //
11 // hpp-affordance is distributed in the hope that it will be useful,
12 // but WITHOUT ANY WARRANTY; without even the implied warranty of
13 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 // GNU Lesser General Public License for more details.
15 //
16 // You should have received a copy of the GNU Lesser General Public License
17 // along with hpp-affordance. If not, see <http://www.gnu.org/licenses/>.
18
19 #include <hpp/affordance/fwd.hh>
20 #include <hpp/affordance/operations.hh>
21
22 #define BOOST_TEST_MODULE test - operations
23 #include <boost/test/included/unit_test.hpp>
24
25 using namespace hpp;
26 const double epsilon = 10e-6;
27
28 1 bool compDouble(const double a, const double b) { return a - b < epsilon; }
29
30 1 bool compVec(const coal::Vec3f& a, const coal::Vec3f& b) {
31
1/2
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
1 return (a - b).norm() < epsilon;
32 }
33
34 BOOST_AUTO_TEST_SUITE(test_affordance)
35
36
33/66
✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 19 taken 1 times.
✗ Branch 20 not taken.
✓ Branch 23 taken 1 times.
✗ Branch 24 not taken.
✓ Branch 27 taken 1 times.
✗ Branch 28 not taken.
✓ Branch 30 taken 1 times.
✗ Branch 31 not taken.
✓ Branch 33 taken 1 times.
✗ Branch 34 not taken.
✓ Branch 36 taken 1 times.
✗ Branch 37 not taken.
✓ Branch 41 taken 1 times.
✗ Branch 42 not taken.
✓ Branch 45 taken 1 times.
✗ Branch 46 not taken.
✓ Branch 48 taken 1 times.
✗ Branch 49 not taken.
✓ Branch 52 taken 1 times.
✗ Branch 53 not taken.
✓ Branch 55 taken 1 times.
✗ Branch 56 not taken.
✓ Branch 58 taken 1 times.
✗ Branch 59 not taken.
✓ Branch 61 taken 1 times.
✗ Branch 62 not taken.
✓ Branch 66 taken 1 times.
✗ Branch 67 not taken.
✓ Branch 70 taken 1 times.
✗ Branch 71 not taken.
✓ Branch 73 taken 1 times.
✗ Branch 74 not taken.
✓ Branch 77 taken 1 times.
✗ Branch 78 not taken.
✓ Branch 80 taken 1 times.
✗ Branch 81 not taken.
✓ Branch 83 taken 1 times.
✗ Branch 84 not taken.
✓ Branch 86 taken 1 times.
✗ Branch 87 not taken.
✓ Branch 91 taken 1 times.
✗ Branch 92 not taken.
✓ Branch 95 taken 1 times.
✗ Branch 96 not taken.
✓ Branch 98 taken 1 times.
✗ Branch 99 not taken.
✓ Branch 102 taken 1 times.
✗ Branch 103 not taken.
✓ Branch 105 taken 1 times.
✗ Branch 106 not taken.
✓ Branch 108 taken 1 times.
✗ Branch 109 not taken.
✓ Branch 111 taken 1 times.
✗ Branch 112 not taken.
✓ Branch 116 taken 1 times.
✗ Branch 117 not taken.
4 BOOST_AUTO_TEST_CASE(operations) {
37 hpp::affordance::SupportOperationPtr_t support(
38
3/6
✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
2 new hpp::affordance::SupportOperation(0.3));
39 hpp::affordance::LeanOperationPtr_t lean(
40
3/6
✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
2 new hpp::affordance::LeanOperation(0.1));
41
42 2 std::vector<hpp::affordance::OperationBasePtr_t> operations;
43
1/2
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
2 operations.push_back(support);
44
1/2
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
2 operations.push_back(lean);
45
46
1/2
✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
2 const coal::Vec3f normal1(0, 0, 1);
47
48
10/20
✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
✓ Branch 13 taken 1 times.
✗ Branch 14 not taken.
✓ Branch 16 taken 1 times.
✗ Branch 17 not taken.
✓ Branch 20 taken 1 times.
✗ Branch 21 not taken.
✓ Branch 24 taken 1 times.
✗ Branch 25 not taken.
✓ Branch 27 taken 1 times.
✗ Branch 28 not taken.
✓ Branch 30 taken 1 times.
✗ Branch 31 not taken.
✗ Branch 38 not taken.
✓ Branch 39 taken 1 times.
2 BOOST_CHECK_MESSAGE(compVec(support->zWorld_, normal1),
49 "default value for zWorld should be "
50 << normal1 << " but is " << support->zWorld_);
51
52
6/12
✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
✓ Branch 15 taken 1 times.
✗ Branch 16 not taken.
✓ Branch 18 taken 1 times.
✗ Branch 19 not taken.
✗ Branch 23 not taken.
✓ Branch 24 taken 1 times.
2 BOOST_CHECK_MESSAGE(
53 compDouble(lean->margin_, 0.1),
54 "margin should match the one given when creating operation");
55
56
6/12
✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
2 BOOST_CHECK_MESSAGE(
57 operations.size() == 2,
58 "operation vector should have size 2 after adding support and lean");
59 2 }
60 BOOST_AUTO_TEST_SUITE_END()
61