Branch data Line data Source code
1 : : /* 2 : : * ----------------- BEGIN LICENSE BLOCK --------------------------------- 3 : : * 4 : : * Copyright (C) 2018-2022 Intel Corporation 5 : : * 6 : : * SPDX-License-Identifier: LGPL-2.1-only 7 : : * 8 : : * ----------------- END LICENSE BLOCK ----------------------------------- 9 : : */ 10 : : 11 : : /* 12 : : * Generated file 13 : : */ 14 : : 15 : : #include <gtest/gtest.h> 16 : : 17 : : #include <limits> 18 : : 19 : : #include "ad/rss/state/LongitudinalRssStateValidInputRange.hpp" 20 : : 21 : 4 : TEST(LongitudinalRssStateValidInputRangeTests, testValidInputRange) 22 : : { 23 : 1 : ::ad::rss::state::LongitudinalRssState value; 24 : 1 : bool valueIs_safe{true}; 25 : 1 : value.is_safe = valueIs_safe; 26 : 1 : ::ad::rss::state::LongitudinalResponse valueResponse(::ad::rss::state::LongitudinalResponse::None); 27 : 1 : value.response = valueResponse; 28 : 1 : ::ad::rss::world::LongitudinalRssAccelerationValues valueAlpha_lon; 29 : 1 : ::ad::physics::Acceleration valueAlpha_lonAccel_max(-1e2); 30 : 1 : valueAlpha_lonAccel_max = ::ad::physics::Acceleration(0.); // set to valid value within struct 31 : 1 : valueAlpha_lon.accel_max = valueAlpha_lonAccel_max; 32 : 1 : ::ad::physics::Acceleration valueAlpha_lonBrake_max(-1e2); 33 : 1 : valueAlpha_lon.brake_max = valueAlpha_lonBrake_max; 34 : 1 : ::ad::physics::Acceleration valueAlpha_lonBrake_min(-1e2); 35 : 1 : valueAlpha_lon.brake_min = valueAlpha_lonBrake_min; 36 : 1 : ::ad::physics::Acceleration valueAlpha_lonBrake_min_correct(-1e2); 37 : 1 : valueAlpha_lon.brake_min_correct = valueAlpha_lonBrake_min_correct; 38 : 1 : valueAlpha_lon.brake_min = valueAlpha_lon.brake_max; 39 : 1 : valueAlpha_lon.brake_min_correct = valueAlpha_lon.brake_min; 40 : 1 : valueAlpha_lon.brake_min = valueAlpha_lon.brake_min_correct; 41 : 1 : valueAlpha_lon.brake_max = valueAlpha_lon.brake_min; 42 : 1 : value.alpha_lon = valueAlpha_lon; 43 : 1 : ::ad::rss::state::RssStateInformation valueRss_state_information; 44 : 1 : ::ad::physics::Distance valueRss_state_informationSafe_distance(-1e9); 45 : 1 : valueRss_state_information.safe_distance = valueRss_state_informationSafe_distance; 46 : 1 : ::ad::physics::Distance valueRss_state_informationCurrent_distance(-1e9); 47 : 1 : valueRss_state_information.current_distance = valueRss_state_informationCurrent_distance; 48 : 1 : ::ad::rss::state::RssStateEvaluator valueRss_state_informationEvaluator(::ad::rss::state::RssStateEvaluator::None); 49 : 1 : valueRss_state_information.evaluator = valueRss_state_informationEvaluator; 50 : 1 : value.rss_state_information = valueRss_state_information; 51 [ + - - + : 1 : ASSERT_TRUE(withinValidInputRange(value)); - - - - - - - - + - ] 52 : : } 53 : : 54 : 4 : TEST(LongitudinalRssStateValidInputRangeTests, testValidInputRangeResponseTooSmall) 55 : : { 56 : 1 : ::ad::rss::state::LongitudinalRssState value; 57 : 1 : bool valueIs_safe{true}; 58 : 1 : value.is_safe = valueIs_safe; 59 : 1 : ::ad::rss::state::LongitudinalResponse valueResponse(::ad::rss::state::LongitudinalResponse::None); 60 : 1 : value.response = valueResponse; 61 : 1 : ::ad::rss::world::LongitudinalRssAccelerationValues valueAlpha_lon; 62 : 1 : ::ad::physics::Acceleration valueAlpha_lonAccel_max(-1e2); 63 : 1 : valueAlpha_lonAccel_max = ::ad::physics::Acceleration(0.); // set to valid value within struct 64 : 1 : valueAlpha_lon.accel_max = valueAlpha_lonAccel_max; 65 : 1 : ::ad::physics::Acceleration valueAlpha_lonBrake_max(-1e2); 66 : 1 : valueAlpha_lon.brake_max = valueAlpha_lonBrake_max; 67 : 1 : ::ad::physics::Acceleration valueAlpha_lonBrake_min(-1e2); 68 : 1 : valueAlpha_lon.brake_min = valueAlpha_lonBrake_min; 69 : 1 : ::ad::physics::Acceleration valueAlpha_lonBrake_min_correct(-1e2); 70 : 1 : valueAlpha_lon.brake_min_correct = valueAlpha_lonBrake_min_correct; 71 : 1 : valueAlpha_lon.brake_min = valueAlpha_lon.brake_max; 72 : 1 : valueAlpha_lon.brake_min_correct = valueAlpha_lon.brake_min; 73 : 1 : valueAlpha_lon.brake_min = valueAlpha_lon.brake_min_correct; 74 : 1 : valueAlpha_lon.brake_max = valueAlpha_lon.brake_min; 75 : 1 : value.alpha_lon = valueAlpha_lon; 76 : 1 : ::ad::rss::state::RssStateInformation valueRss_state_information; 77 : 1 : ::ad::physics::Distance valueRss_state_informationSafe_distance(-1e9); 78 : 1 : valueRss_state_information.safe_distance = valueRss_state_informationSafe_distance; 79 : 1 : ::ad::physics::Distance valueRss_state_informationCurrent_distance(-1e9); 80 : 1 : valueRss_state_information.current_distance = valueRss_state_informationCurrent_distance; 81 : 1 : ::ad::rss::state::RssStateEvaluator valueRss_state_informationEvaluator(::ad::rss::state::RssStateEvaluator::None); 82 : 1 : valueRss_state_information.evaluator = valueRss_state_informationEvaluator; 83 : 1 : value.rss_state_information = valueRss_state_information; 84 : : 85 : : // override member with data type value below input range minimum 86 : 1 : ::ad::rss::state::LongitudinalResponse invalidInitializedMember( 87 : : static_cast<::ad::rss::state::LongitudinalResponse>(-1)); 88 : 1 : value.response = invalidInitializedMember; 89 [ + - - + : 1 : ASSERT_FALSE(withinValidInputRange(value)); - - - - - - - - + - ] 90 : : } 91 : : 92 : 4 : TEST(LongitudinalRssStateValidInputRangeTests, testValidInputRangeResponseTooBig) 93 : : { 94 : 1 : ::ad::rss::state::LongitudinalRssState value; 95 : 1 : bool valueIs_safe{true}; 96 : 1 : value.is_safe = valueIs_safe; 97 : 1 : ::ad::rss::state::LongitudinalResponse valueResponse(::ad::rss::state::LongitudinalResponse::None); 98 : 1 : value.response = valueResponse; 99 : 1 : ::ad::rss::world::LongitudinalRssAccelerationValues valueAlpha_lon; 100 : 1 : ::ad::physics::Acceleration valueAlpha_lonAccel_max(-1e2); 101 : 1 : valueAlpha_lonAccel_max = ::ad::physics::Acceleration(0.); // set to valid value within struct 102 : 1 : valueAlpha_lon.accel_max = valueAlpha_lonAccel_max; 103 : 1 : ::ad::physics::Acceleration valueAlpha_lonBrake_max(-1e2); 104 : 1 : valueAlpha_lon.brake_max = valueAlpha_lonBrake_max; 105 : 1 : ::ad::physics::Acceleration valueAlpha_lonBrake_min(-1e2); 106 : 1 : valueAlpha_lon.brake_min = valueAlpha_lonBrake_min; 107 : 1 : ::ad::physics::Acceleration valueAlpha_lonBrake_min_correct(-1e2); 108 : 1 : valueAlpha_lon.brake_min_correct = valueAlpha_lonBrake_min_correct; 109 : 1 : valueAlpha_lon.brake_min = valueAlpha_lon.brake_max; 110 : 1 : valueAlpha_lon.brake_min_correct = valueAlpha_lon.brake_min; 111 : 1 : valueAlpha_lon.brake_min = valueAlpha_lon.brake_min_correct; 112 : 1 : valueAlpha_lon.brake_max = valueAlpha_lon.brake_min; 113 : 1 : value.alpha_lon = valueAlpha_lon; 114 : 1 : ::ad::rss::state::RssStateInformation valueRss_state_information; 115 : 1 : ::ad::physics::Distance valueRss_state_informationSafe_distance(-1e9); 116 : 1 : valueRss_state_information.safe_distance = valueRss_state_informationSafe_distance; 117 : 1 : ::ad::physics::Distance valueRss_state_informationCurrent_distance(-1e9); 118 : 1 : valueRss_state_information.current_distance = valueRss_state_informationCurrent_distance; 119 : 1 : ::ad::rss::state::RssStateEvaluator valueRss_state_informationEvaluator(::ad::rss::state::RssStateEvaluator::None); 120 : 1 : valueRss_state_information.evaluator = valueRss_state_informationEvaluator; 121 : 1 : value.rss_state_information = valueRss_state_information; 122 : : 123 : : // override member with data type value above input range maximum 124 : 1 : ::ad::rss::state::LongitudinalResponse invalidInitializedMember( 125 : : static_cast<::ad::rss::state::LongitudinalResponse>(-1)); 126 : 1 : value.response = invalidInitializedMember; 127 [ + - - + : 1 : ASSERT_FALSE(withinValidInputRange(value)); - - - - - - - - + - ] 128 : : } 129 : : 130 : 4 : TEST(LongitudinalRssStateValidInputRangeTests, testValidInputRangeAlpha_lonTooSmall) 131 : : { 132 : 1 : ::ad::rss::state::LongitudinalRssState value; 133 : 1 : bool valueIs_safe{true}; 134 : 1 : value.is_safe = valueIs_safe; 135 : 1 : ::ad::rss::state::LongitudinalResponse valueResponse(::ad::rss::state::LongitudinalResponse::None); 136 : 1 : value.response = valueResponse; 137 : 1 : ::ad::rss::world::LongitudinalRssAccelerationValues valueAlpha_lon; 138 : 1 : ::ad::physics::Acceleration valueAlpha_lonAccel_max(-1e2); 139 : 1 : valueAlpha_lonAccel_max = ::ad::physics::Acceleration(0.); // set to valid value within struct 140 : 1 : valueAlpha_lon.accel_max = valueAlpha_lonAccel_max; 141 : 1 : ::ad::physics::Acceleration valueAlpha_lonBrake_max(-1e2); 142 : 1 : valueAlpha_lon.brake_max = valueAlpha_lonBrake_max; 143 : 1 : ::ad::physics::Acceleration valueAlpha_lonBrake_min(-1e2); 144 : 1 : valueAlpha_lon.brake_min = valueAlpha_lonBrake_min; 145 : 1 : ::ad::physics::Acceleration valueAlpha_lonBrake_min_correct(-1e2); 146 : 1 : valueAlpha_lon.brake_min_correct = valueAlpha_lonBrake_min_correct; 147 : 1 : valueAlpha_lon.brake_min = valueAlpha_lon.brake_max; 148 : 1 : valueAlpha_lon.brake_min_correct = valueAlpha_lon.brake_min; 149 : 1 : valueAlpha_lon.brake_min = valueAlpha_lon.brake_min_correct; 150 : 1 : valueAlpha_lon.brake_max = valueAlpha_lon.brake_min; 151 : 1 : value.alpha_lon = valueAlpha_lon; 152 : 1 : ::ad::rss::state::RssStateInformation valueRss_state_information; 153 : 1 : ::ad::physics::Distance valueRss_state_informationSafe_distance(-1e9); 154 : 1 : valueRss_state_information.safe_distance = valueRss_state_informationSafe_distance; 155 : 1 : ::ad::physics::Distance valueRss_state_informationCurrent_distance(-1e9); 156 : 1 : valueRss_state_information.current_distance = valueRss_state_informationCurrent_distance; 157 : 1 : ::ad::rss::state::RssStateEvaluator valueRss_state_informationEvaluator(::ad::rss::state::RssStateEvaluator::None); 158 : 1 : valueRss_state_information.evaluator = valueRss_state_informationEvaluator; 159 : 1 : value.rss_state_information = valueRss_state_information; 160 : : 161 : : // override member with data type value below input range minimum 162 : 1 : ::ad::rss::world::LongitudinalRssAccelerationValues invalidInitializedMember; 163 : 1 : ::ad::physics::Acceleration invalidInitializedMemberAccel_max(-1e2 * 1.1); 164 : 1 : invalidInitializedMember.accel_max = invalidInitializedMemberAccel_max; 165 : 1 : value.alpha_lon = invalidInitializedMember; 166 [ + - - + : 1 : ASSERT_FALSE(withinValidInputRange(value)); - - - - - - - - + - ] 167 : : } 168 : : 169 : 4 : TEST(LongitudinalRssStateValidInputRangeTests, testValidInputRangeAlpha_lonTooBig) 170 : : { 171 : 1 : ::ad::rss::state::LongitudinalRssState value; 172 : 1 : bool valueIs_safe{true}; 173 : 1 : value.is_safe = valueIs_safe; 174 : 1 : ::ad::rss::state::LongitudinalResponse valueResponse(::ad::rss::state::LongitudinalResponse::None); 175 : 1 : value.response = valueResponse; 176 : 1 : ::ad::rss::world::LongitudinalRssAccelerationValues valueAlpha_lon; 177 : 1 : ::ad::physics::Acceleration valueAlpha_lonAccel_max(-1e2); 178 : 1 : valueAlpha_lonAccel_max = ::ad::physics::Acceleration(0.); // set to valid value within struct 179 : 1 : valueAlpha_lon.accel_max = valueAlpha_lonAccel_max; 180 : 1 : ::ad::physics::Acceleration valueAlpha_lonBrake_max(-1e2); 181 : 1 : valueAlpha_lon.brake_max = valueAlpha_lonBrake_max; 182 : 1 : ::ad::physics::Acceleration valueAlpha_lonBrake_min(-1e2); 183 : 1 : valueAlpha_lon.brake_min = valueAlpha_lonBrake_min; 184 : 1 : ::ad::physics::Acceleration valueAlpha_lonBrake_min_correct(-1e2); 185 : 1 : valueAlpha_lon.brake_min_correct = valueAlpha_lonBrake_min_correct; 186 : 1 : valueAlpha_lon.brake_min = valueAlpha_lon.brake_max; 187 : 1 : valueAlpha_lon.brake_min_correct = valueAlpha_lon.brake_min; 188 : 1 : valueAlpha_lon.brake_min = valueAlpha_lon.brake_min_correct; 189 : 1 : valueAlpha_lon.brake_max = valueAlpha_lon.brake_min; 190 : 1 : value.alpha_lon = valueAlpha_lon; 191 : 1 : ::ad::rss::state::RssStateInformation valueRss_state_information; 192 : 1 : ::ad::physics::Distance valueRss_state_informationSafe_distance(-1e9); 193 : 1 : valueRss_state_information.safe_distance = valueRss_state_informationSafe_distance; 194 : 1 : ::ad::physics::Distance valueRss_state_informationCurrent_distance(-1e9); 195 : 1 : valueRss_state_information.current_distance = valueRss_state_informationCurrent_distance; 196 : 1 : ::ad::rss::state::RssStateEvaluator valueRss_state_informationEvaluator(::ad::rss::state::RssStateEvaluator::None); 197 : 1 : valueRss_state_information.evaluator = valueRss_state_informationEvaluator; 198 : 1 : value.rss_state_information = valueRss_state_information; 199 : : 200 : : // override member with data type value above input range maximum 201 : 1 : ::ad::rss::world::LongitudinalRssAccelerationValues invalidInitializedMember; 202 : 1 : ::ad::physics::Acceleration invalidInitializedMemberAccel_max(1e2 * 1.1); 203 : 1 : invalidInitializedMember.accel_max = invalidInitializedMemberAccel_max; 204 : 1 : value.alpha_lon = invalidInitializedMember; 205 [ + - - + : 1 : ASSERT_FALSE(withinValidInputRange(value)); - - - - - - - - + - ] 206 : : } 207 : : 208 : 4 : TEST(LongitudinalRssStateValidInputRangeTests, testValidInputRangeRss_state_informationTooSmall) 209 : : { 210 : 1 : ::ad::rss::state::LongitudinalRssState value; 211 : 1 : bool valueIs_safe{true}; 212 : 1 : value.is_safe = valueIs_safe; 213 : 1 : ::ad::rss::state::LongitudinalResponse valueResponse(::ad::rss::state::LongitudinalResponse::None); 214 : 1 : value.response = valueResponse; 215 : 1 : ::ad::rss::world::LongitudinalRssAccelerationValues valueAlpha_lon; 216 : 1 : ::ad::physics::Acceleration valueAlpha_lonAccel_max(-1e2); 217 : 1 : valueAlpha_lonAccel_max = ::ad::physics::Acceleration(0.); // set to valid value within struct 218 : 1 : valueAlpha_lon.accel_max = valueAlpha_lonAccel_max; 219 : 1 : ::ad::physics::Acceleration valueAlpha_lonBrake_max(-1e2); 220 : 1 : valueAlpha_lon.brake_max = valueAlpha_lonBrake_max; 221 : 1 : ::ad::physics::Acceleration valueAlpha_lonBrake_min(-1e2); 222 : 1 : valueAlpha_lon.brake_min = valueAlpha_lonBrake_min; 223 : 1 : ::ad::physics::Acceleration valueAlpha_lonBrake_min_correct(-1e2); 224 : 1 : valueAlpha_lon.brake_min_correct = valueAlpha_lonBrake_min_correct; 225 : 1 : valueAlpha_lon.brake_min = valueAlpha_lon.brake_max; 226 : 1 : valueAlpha_lon.brake_min_correct = valueAlpha_lon.brake_min; 227 : 1 : valueAlpha_lon.brake_min = valueAlpha_lon.brake_min_correct; 228 : 1 : valueAlpha_lon.brake_max = valueAlpha_lon.brake_min; 229 : 1 : value.alpha_lon = valueAlpha_lon; 230 : 1 : ::ad::rss::state::RssStateInformation valueRss_state_information; 231 : 1 : ::ad::physics::Distance valueRss_state_informationSafe_distance(-1e9); 232 : 1 : valueRss_state_information.safe_distance = valueRss_state_informationSafe_distance; 233 : 1 : ::ad::physics::Distance valueRss_state_informationCurrent_distance(-1e9); 234 : 1 : valueRss_state_information.current_distance = valueRss_state_informationCurrent_distance; 235 : 1 : ::ad::rss::state::RssStateEvaluator valueRss_state_informationEvaluator(::ad::rss::state::RssStateEvaluator::None); 236 : 1 : valueRss_state_information.evaluator = valueRss_state_informationEvaluator; 237 : 1 : value.rss_state_information = valueRss_state_information; 238 : : 239 : : // override member with data type value below input range minimum 240 : 1 : ::ad::rss::state::RssStateInformation invalidInitializedMember; 241 : 1 : ::ad::physics::Distance invalidInitializedMemberSafe_distance(-1e9 * 1.1); 242 : 1 : invalidInitializedMember.safe_distance = invalidInitializedMemberSafe_distance; 243 : 1 : value.rss_state_information = invalidInitializedMember; 244 [ + - - + : 1 : ASSERT_FALSE(withinValidInputRange(value)); - - - - - - - - + - ] 245 : : } 246 : : 247 : 4 : TEST(LongitudinalRssStateValidInputRangeTests, testValidInputRangeRss_state_informationTooBig) 248 : : { 249 : 1 : ::ad::rss::state::LongitudinalRssState value; 250 : 1 : bool valueIs_safe{true}; 251 : 1 : value.is_safe = valueIs_safe; 252 : 1 : ::ad::rss::state::LongitudinalResponse valueResponse(::ad::rss::state::LongitudinalResponse::None); 253 : 1 : value.response = valueResponse; 254 : 1 : ::ad::rss::world::LongitudinalRssAccelerationValues valueAlpha_lon; 255 : 1 : ::ad::physics::Acceleration valueAlpha_lonAccel_max(-1e2); 256 : 1 : valueAlpha_lonAccel_max = ::ad::physics::Acceleration(0.); // set to valid value within struct 257 : 1 : valueAlpha_lon.accel_max = valueAlpha_lonAccel_max; 258 : 1 : ::ad::physics::Acceleration valueAlpha_lonBrake_max(-1e2); 259 : 1 : valueAlpha_lon.brake_max = valueAlpha_lonBrake_max; 260 : 1 : ::ad::physics::Acceleration valueAlpha_lonBrake_min(-1e2); 261 : 1 : valueAlpha_lon.brake_min = valueAlpha_lonBrake_min; 262 : 1 : ::ad::physics::Acceleration valueAlpha_lonBrake_min_correct(-1e2); 263 : 1 : valueAlpha_lon.brake_min_correct = valueAlpha_lonBrake_min_correct; 264 : 1 : valueAlpha_lon.brake_min = valueAlpha_lon.brake_max; 265 : 1 : valueAlpha_lon.brake_min_correct = valueAlpha_lon.brake_min; 266 : 1 : valueAlpha_lon.brake_min = valueAlpha_lon.brake_min_correct; 267 : 1 : valueAlpha_lon.brake_max = valueAlpha_lon.brake_min; 268 : 1 : value.alpha_lon = valueAlpha_lon; 269 : 1 : ::ad::rss::state::RssStateInformation valueRss_state_information; 270 : 1 : ::ad::physics::Distance valueRss_state_informationSafe_distance(-1e9); 271 : 1 : valueRss_state_information.safe_distance = valueRss_state_informationSafe_distance; 272 : 1 : ::ad::physics::Distance valueRss_state_informationCurrent_distance(-1e9); 273 : 1 : valueRss_state_information.current_distance = valueRss_state_informationCurrent_distance; 274 : 1 : ::ad::rss::state::RssStateEvaluator valueRss_state_informationEvaluator(::ad::rss::state::RssStateEvaluator::None); 275 : 1 : valueRss_state_information.evaluator = valueRss_state_informationEvaluator; 276 : 1 : value.rss_state_information = valueRss_state_information; 277 : : 278 : : // override member with data type value above input range maximum 279 : 1 : ::ad::rss::state::RssStateInformation invalidInitializedMember; 280 : 1 : ::ad::physics::Distance invalidInitializedMemberSafe_distance(1e9 * 1.1); 281 : 1 : invalidInitializedMember.safe_distance = invalidInitializedMemberSafe_distance; 282 : 1 : value.rss_state_information = invalidInitializedMember; 283 [ + - - + : 1 : ASSERT_FALSE(withinValidInputRange(value)); - - - - - - - - + - ] 284 : : }