Branch data Line data Source code
1 : : /*
2 : : * ----------------- BEGIN LICENSE BLOCK ---------------------------------
3 : : *
4 : : * Copyright (C) 2018-2021 Intel Corporation
5 : : *
6 : : * SPDX-License-Identifier: MIT
7 : : *
8 : : * ----------------- END LICENSE BLOCK -----------------------------------
9 : : */
10 : :
11 : : /*
12 : : * Generated file
13 : : */
14 : :
15 : : #if defined(__clang__) && (__clang_major__ >= 7)
16 : : #pragma GCC diagnostic push
17 : : #pragma GCC diagnostic ignored "-Wself-assign-overloaded"
18 : : #endif
19 : :
20 : : #include <gtest/gtest.h>
21 : : #include <limits>
22 : : #include "ad/map/route/LaneSegment.hpp"
23 : :
24 : : class LaneSegmentTests : public testing::Test
25 : : {
26 : : protected:
27 : 12 : virtual void SetUp() override
28 : : {
29 : : // valid initialization
30 : 24 : ::ad::map::route::LaneSegment value;
31 : 12 : ::ad::map::lane::LaneId valueLeftNeighbor(1);
32 : 12 : value.leftNeighbor = valueLeftNeighbor;
33 : 12 : ::ad::map::lane::LaneId valueRightNeighbor(1);
34 : 12 : value.rightNeighbor = valueRightNeighbor;
35 : 24 : ::ad::map::lane::LaneIdList valuePredecessors;
36 : 12 : ::ad::map::lane::LaneId valuePredecessorsElement(1);
37 [ + - ]: 12 : valuePredecessors.resize(1, valuePredecessorsElement);
38 [ + - ]: 12 : value.predecessors = valuePredecessors;
39 : 24 : ::ad::map::lane::LaneIdList valueSuccessors;
40 : 12 : ::ad::map::lane::LaneId valueSuccessorsElement(1);
41 [ + - ]: 12 : valueSuccessors.resize(1, valueSuccessorsElement);
42 [ + - ]: 12 : value.successors = valueSuccessors;
43 : 12 : ::ad::map::route::LaneInterval valueLaneInterval;
44 : 12 : ::ad::map::lane::LaneId valueLaneIntervalLaneId(1);
45 : 12 : valueLaneInterval.laneId = valueLaneIntervalLaneId;
46 : 12 : ::ad::physics::ParametricValue valueLaneIntervalStart(0.);
47 : 12 : valueLaneInterval.start = valueLaneIntervalStart;
48 : 12 : ::ad::physics::ParametricValue valueLaneIntervalEnd(0.);
49 : 12 : valueLaneInterval.end = valueLaneIntervalEnd;
50 : 12 : bool valueLaneIntervalWrongWay{true};
51 : 12 : valueLaneInterval.wrongWay = valueLaneIntervalWrongWay;
52 : 12 : value.laneInterval = valueLaneInterval;
53 : 12 : ::ad::map::route::RouteLaneOffset valueRouteLaneOffset(
54 : : std::numeric_limits<::ad::map::route::RouteLaneOffset>::lowest());
55 : 12 : value.routeLaneOffset = valueRouteLaneOffset;
56 [ + - ]: 12 : mValue = value;
57 : 12 : }
58 : :
59 : : ::ad::map::route::LaneSegment mValue;
60 : : };
61 : :
62 : 2 : TEST_F(LaneSegmentTests, copyConstruction)
63 : : {
64 [ + - ]: 2 : ::ad::map::route::LaneSegment value(mValue);
65 [ + - - + : 1 : EXPECT_EQ(mValue, value);
- - - - -
- ]
66 : 1 : }
67 : :
68 : 2 : TEST_F(LaneSegmentTests, moveConstruction)
69 : : {
70 [ + - ]: 2 : ::ad::map::route::LaneSegment tmpValue(mValue);
71 : 2 : ::ad::map::route::LaneSegment value(std::move(tmpValue));
72 [ + - - + : 1 : EXPECT_EQ(mValue, value);
- - - - -
- ]
73 : 1 : }
74 : :
75 : 2 : TEST_F(LaneSegmentTests, copyAssignment)
76 : : {
77 : 2 : ::ad::map::route::LaneSegment value;
78 [ + - ]: 1 : value = mValue;
79 [ + - - + : 1 : EXPECT_EQ(mValue, value);
- - - - -
- ]
80 : 1 : }
81 : :
82 : 2 : TEST_F(LaneSegmentTests, moveAssignment)
83 : : {
84 [ + - ]: 2 : ::ad::map::route::LaneSegment tmpValue(mValue);
85 : 2 : ::ad::map::route::LaneSegment value;
86 : 1 : value = std::move(tmpValue);
87 [ + - - + : 1 : EXPECT_EQ(mValue, value);
- - - - -
- ]
88 : 1 : }
89 : :
90 : 2 : TEST_F(LaneSegmentTests, comparisonOperatorEqual)
91 : : {
92 [ + - ]: 2 : ::ad::map::route::LaneSegment valueA = mValue;
93 [ + - ]: 2 : ::ad::map::route::LaneSegment valueB = mValue;
94 : :
95 [ + - - + : 1 : EXPECT_TRUE(valueA == valueB);
- - - - -
- - - ]
96 [ + - - + : 1 : EXPECT_FALSE(valueA != valueB);
- - - - -
- - - ]
97 : 1 : }
98 : :
99 : 2 : TEST_F(LaneSegmentTests, stringConversionTest)
100 : : {
101 [ + - ]: 1 : std::stringstream stream;
102 [ + - ]: 1 : stream << mValue;
103 [ + - ]: 1 : std::string ostreamStr = stream.str();
104 [ + - ]: 1 : std::string toStr = std::to_string(mValue);
105 [ + - - + : 1 : ASSERT_EQ(ostreamStr, toStr);
- - - - -
- ]
106 : : }
107 : :
108 : 2 : TEST_F(LaneSegmentTests, comparisonOperatorLeftNeighborDiffers)
109 : : {
110 [ + - ]: 2 : ::ad::map::route::LaneSegment valueA = mValue;
111 : 1 : ::ad::map::lane::LaneId leftNeighbor(std::numeric_limits<::ad::map::lane::LaneId>::max());
112 : 1 : valueA.leftNeighbor = leftNeighbor;
113 [ + - ]: 2 : ::ad::map::route::LaneSegment valueB = mValue;
114 : :
115 [ + - - + : 1 : EXPECT_FALSE(valueA == valueB);
- - - - -
- - - ]
116 [ + - - + : 1 : EXPECT_TRUE(valueA != valueB);
- - - - -
- - - ]
117 : 1 : }
118 : :
119 : 2 : TEST_F(LaneSegmentTests, comparisonOperatorRightNeighborDiffers)
120 : : {
121 [ + - ]: 2 : ::ad::map::route::LaneSegment valueA = mValue;
122 : 1 : ::ad::map::lane::LaneId rightNeighbor(std::numeric_limits<::ad::map::lane::LaneId>::max());
123 : 1 : valueA.rightNeighbor = rightNeighbor;
124 [ + - ]: 2 : ::ad::map::route::LaneSegment valueB = mValue;
125 : :
126 [ + - - + : 1 : EXPECT_FALSE(valueA == valueB);
- - - - -
- - - ]
127 [ + - - + : 1 : EXPECT_TRUE(valueA != valueB);
- - - - -
- - - ]
128 : 1 : }
129 : :
130 : 2 : TEST_F(LaneSegmentTests, comparisonOperatorPredecessorsDiffers)
131 : : {
132 [ + - ]: 2 : ::ad::map::route::LaneSegment valueA = mValue;
133 : 2 : ::ad::map::lane::LaneIdList predecessors;
134 : 1 : ::ad::map::lane::LaneId predecessorsElement(std::numeric_limits<::ad::map::lane::LaneId>::max());
135 [ + - ]: 1 : predecessors.resize(2, predecessorsElement);
136 [ + - ]: 1 : valueA.predecessors = predecessors;
137 [ + - ]: 2 : ::ad::map::route::LaneSegment valueB = mValue;
138 : :
139 [ + - - + : 1 : EXPECT_FALSE(valueA == valueB);
- - - - -
- - - ]
140 [ + - - + : 1 : EXPECT_TRUE(valueA != valueB);
- - - - -
- - - ]
141 : 1 : }
142 : :
143 : 2 : TEST_F(LaneSegmentTests, comparisonOperatorSuccessorsDiffers)
144 : : {
145 [ + - ]: 2 : ::ad::map::route::LaneSegment valueA = mValue;
146 : 2 : ::ad::map::lane::LaneIdList successors;
147 : 1 : ::ad::map::lane::LaneId successorsElement(std::numeric_limits<::ad::map::lane::LaneId>::max());
148 [ + - ]: 1 : successors.resize(2, successorsElement);
149 [ + - ]: 1 : valueA.successors = successors;
150 [ + - ]: 2 : ::ad::map::route::LaneSegment valueB = mValue;
151 : :
152 [ + - - + : 1 : EXPECT_FALSE(valueA == valueB);
- - - - -
- - - ]
153 [ + - - + : 1 : EXPECT_TRUE(valueA != valueB);
- - - - -
- - - ]
154 : 1 : }
155 : :
156 : 2 : TEST_F(LaneSegmentTests, comparisonOperatorLaneIntervalDiffers)
157 : : {
158 [ + - ]: 2 : ::ad::map::route::LaneSegment valueA = mValue;
159 : 1 : ::ad::map::route::LaneInterval laneInterval;
160 : 1 : ::ad::map::lane::LaneId laneIntervalLaneId(std::numeric_limits<::ad::map::lane::LaneId>::max());
161 : 1 : laneInterval.laneId = laneIntervalLaneId;
162 : 1 : ::ad::physics::ParametricValue laneIntervalStart(1.);
163 : 1 : laneInterval.start = laneIntervalStart;
164 : 1 : ::ad::physics::ParametricValue laneIntervalEnd(1.);
165 : 1 : laneInterval.end = laneIntervalEnd;
166 : 1 : bool laneIntervalWrongWay{false};
167 : 1 : laneInterval.wrongWay = laneIntervalWrongWay;
168 : 1 : valueA.laneInterval = laneInterval;
169 [ + - ]: 2 : ::ad::map::route::LaneSegment valueB = mValue;
170 : :
171 [ + - - + : 1 : EXPECT_FALSE(valueA == valueB);
- - - - -
- - - ]
172 [ + - - + : 1 : EXPECT_TRUE(valueA != valueB);
- - - - -
- - - ]
173 : 1 : }
174 : :
175 : 2 : TEST_F(LaneSegmentTests, comparisonOperatorRouteLaneOffsetDiffers)
176 : : {
177 [ + - ]: 2 : ::ad::map::route::LaneSegment valueA = mValue;
178 : 1 : ::ad::map::route::RouteLaneOffset routeLaneOffset(std::numeric_limits<::ad::map::route::RouteLaneOffset>::max());
179 : 1 : valueA.routeLaneOffset = routeLaneOffset;
180 [ + - ]: 2 : ::ad::map::route::LaneSegment valueB = mValue;
181 : :
182 [ + - - + : 1 : EXPECT_FALSE(valueA == valueB);
- - - - -
- - - ]
183 [ + - - + : 1 : EXPECT_TRUE(valueA != valueB);
- - - - -
- - - ]
184 : 1 : }
185 : :
186 : : #if defined(__clang__) && (__clang_major__ >= 7)
187 : : #pragma GCC diagnostic pop
188 : : #endif
|