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 : : #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/rss/state/LongitudinalRssState.hpp" 23 : : 24 : : class LongitudinalRssStateTests : public testing::Test 25 : : { 26 : : protected: 27 : 10 : virtual void SetUp() override 28 : : { 29 : : // valid initialization 30 : 10 : ::ad::rss::state::LongitudinalRssState value; 31 : 10 : bool valueIs_safe{true}; 32 : 10 : value.is_safe = valueIs_safe; 33 : 10 : ::ad::rss::state::LongitudinalResponse valueResponse(::ad::rss::state::LongitudinalResponse::None); 34 : 10 : value.response = valueResponse; 35 : 10 : ::ad::rss::world::LongitudinalRssAccelerationValues valueAlpha_lon; 36 : 10 : ::ad::physics::Acceleration valueAlpha_lonAccel_max(-1e2); 37 : 10 : valueAlpha_lonAccel_max = ::ad::physics::Acceleration(0.); // set to valid value within struct 38 : 10 : valueAlpha_lon.accel_max = valueAlpha_lonAccel_max; 39 : 10 : ::ad::physics::Acceleration valueAlpha_lonBrake_max(-1e2); 40 : 10 : valueAlpha_lon.brake_max = valueAlpha_lonBrake_max; 41 : 10 : ::ad::physics::Acceleration valueAlpha_lonBrake_min(-1e2); 42 : 10 : valueAlpha_lon.brake_min = valueAlpha_lonBrake_min; 43 : 10 : ::ad::physics::Acceleration valueAlpha_lonBrake_min_correct(-1e2); 44 : 10 : valueAlpha_lon.brake_min_correct = valueAlpha_lonBrake_min_correct; 45 : 10 : valueAlpha_lon.brake_min = valueAlpha_lon.brake_max; 46 : 10 : valueAlpha_lon.brake_min_correct = valueAlpha_lon.brake_min; 47 : 10 : valueAlpha_lon.brake_min = valueAlpha_lon.brake_min_correct; 48 : 10 : valueAlpha_lon.brake_max = valueAlpha_lon.brake_min; 49 : 10 : value.alpha_lon = valueAlpha_lon; 50 : 10 : ::ad::rss::state::RssStateInformation valueRss_state_information; 51 : 10 : ::ad::physics::Distance valueRss_state_informationSafe_distance(-1e9); 52 : 10 : valueRss_state_information.safe_distance = valueRss_state_informationSafe_distance; 53 : 10 : ::ad::physics::Distance valueRss_state_informationCurrent_distance(-1e9); 54 : 10 : valueRss_state_information.current_distance = valueRss_state_informationCurrent_distance; 55 : 10 : ::ad::rss::state::RssStateEvaluator valueRss_state_informationEvaluator(::ad::rss::state::RssStateEvaluator::None); 56 : 10 : valueRss_state_information.evaluator = valueRss_state_informationEvaluator; 57 : 10 : value.rss_state_information = valueRss_state_information; 58 : 10 : mValue = value; 59 : 10 : } 60 : : 61 : : ::ad::rss::state::LongitudinalRssState mValue; 62 : : }; 63 : : 64 : 4 : TEST_F(LongitudinalRssStateTests, copyConstruction) 65 : : { 66 : 1 : ::ad::rss::state::LongitudinalRssState value(mValue); 67 [ + - - + : 1 : EXPECT_EQ(mValue, value); - - - - - - ] 68 : 1 : } 69 : : 70 : 4 : TEST_F(LongitudinalRssStateTests, moveConstruction) 71 : : { 72 : 1 : ::ad::rss::state::LongitudinalRssState tmpValue(mValue); 73 : 1 : ::ad::rss::state::LongitudinalRssState value(std::move(tmpValue)); 74 [ + - - + : 1 : EXPECT_EQ(mValue, value); - - - - - - ] 75 : 1 : } 76 : : 77 : 4 : TEST_F(LongitudinalRssStateTests, copyAssignment) 78 : : { 79 : 1 : ::ad::rss::state::LongitudinalRssState value; 80 : 1 : value = mValue; 81 [ + - - + : 1 : EXPECT_EQ(mValue, value); - - - - - - ] 82 : 1 : } 83 : : 84 : 4 : TEST_F(LongitudinalRssStateTests, moveAssignment) 85 : : { 86 : 1 : ::ad::rss::state::LongitudinalRssState tmpValue(mValue); 87 : 1 : ::ad::rss::state::LongitudinalRssState value; 88 : 1 : value = std::move(tmpValue); 89 [ + - - + : 1 : EXPECT_EQ(mValue, value); - - - - - - ] 90 : 1 : } 91 : : 92 : 4 : TEST_F(LongitudinalRssStateTests, comparisonOperatorEqual) 93 : : { 94 : 1 : ::ad::rss::state::LongitudinalRssState valueA = mValue; 95 : 1 : ::ad::rss::state::LongitudinalRssState valueB = mValue; 96 : : 97 [ + - - + : 1 : EXPECT_TRUE(valueA == valueB); - - - - - - - - ] 98 [ + - - + : 1 : EXPECT_FALSE(valueA != valueB); - - - - - - - - ] 99 : 1 : } 100 : : 101 : 4 : TEST_F(LongitudinalRssStateTests, stringConversionTest) 102 : : { 103 [ + - ]: 1 : std::stringstream stream; 104 [ + - ]: 1 : stream << mValue; 105 [ + - ]: 1 : std::string ostreamStr = stream.str(); 106 [ + - ]: 1 : std::string toStr = std::to_string(mValue); 107 [ + - - + : 1 : ASSERT_EQ(ostreamStr, toStr); - - - - - - + - ] 108 [ + - + - : 1 : } + - ] 109 : : 110 : 4 : TEST_F(LongitudinalRssStateTests, comparisonOperatorIs_safeDiffers) 111 : : { 112 : 1 : ::ad::rss::state::LongitudinalRssState valueA = mValue; 113 : 1 : bool is_safe{false}; 114 : 1 : valueA.is_safe = is_safe; 115 : 1 : ::ad::rss::state::LongitudinalRssState valueB = mValue; 116 : : 117 [ + - - + : 1 : EXPECT_FALSE(valueA == valueB); - - - - - - - - ] 118 [ + - - + : 1 : EXPECT_TRUE(valueA != valueB); - - - - - - - - ] 119 : 1 : } 120 : : 121 : 4 : TEST_F(LongitudinalRssStateTests, comparisonOperatorResponseDiffers) 122 : : { 123 : 1 : ::ad::rss::state::LongitudinalRssState valueA = mValue; 124 : 1 : ::ad::rss::state::LongitudinalResponse response(::ad::rss::state::LongitudinalResponse::BrakeMin); 125 : 1 : valueA.response = response; 126 : 1 : ::ad::rss::state::LongitudinalRssState valueB = mValue; 127 : : 128 [ + - - + : 1 : EXPECT_FALSE(valueA == valueB); - - - - - - - - ] 129 [ + - - + : 1 : EXPECT_TRUE(valueA != valueB); - - - - - - - - ] 130 : 1 : } 131 : : 132 : 4 : TEST_F(LongitudinalRssStateTests, comparisonOperatorAlpha_lonDiffers) 133 : : { 134 : 1 : ::ad::rss::state::LongitudinalRssState valueA = mValue; 135 : 1 : ::ad::rss::world::LongitudinalRssAccelerationValues alpha_lon; 136 : 1 : ::ad::physics::Acceleration alpha_lonAccel_max(1e2); 137 : 1 : alpha_lon.accel_max = alpha_lonAccel_max; 138 : 1 : ::ad::physics::Acceleration alpha_lonBrake_max(1e2); 139 : 1 : alpha_lon.brake_max = alpha_lonBrake_max; 140 : 1 : ::ad::physics::Acceleration alpha_lonBrake_min(1e2); 141 : 1 : alpha_lon.brake_min = alpha_lonBrake_min; 142 : 1 : ::ad::physics::Acceleration alpha_lonBrake_min_correct(1e2); 143 : 1 : alpha_lonBrake_min_correct = ::ad::physics::Acceleration(0. * 0.9); // set to valid value within struct 144 : 1 : alpha_lon.brake_min_correct = alpha_lonBrake_min_correct; 145 : 1 : alpha_lon.brake_min_correct = alpha_lon.brake_min; 146 : 1 : alpha_lon.brake_min = alpha_lon.brake_max; 147 : 1 : alpha_lon.brake_max = alpha_lon.brake_min; 148 : 1 : alpha_lon.brake_min = alpha_lon.brake_min_correct; 149 : 1 : valueA.alpha_lon = alpha_lon; 150 : 1 : ::ad::rss::state::LongitudinalRssState valueB = mValue; 151 : : 152 [ + - - + : 1 : EXPECT_FALSE(valueA == valueB); - - - - - - - - ] 153 [ + - - + : 1 : EXPECT_TRUE(valueA != valueB); - - - - - - - - ] 154 : 1 : } 155 : : 156 : 4 : TEST_F(LongitudinalRssStateTests, comparisonOperatorRss_state_informationDiffers) 157 : : { 158 : 1 : ::ad::rss::state::LongitudinalRssState valueA = mValue; 159 : 1 : ::ad::rss::state::RssStateInformation rss_state_information; 160 : 1 : ::ad::physics::Distance rss_state_informationSafe_distance(1e9); 161 : 1 : rss_state_information.safe_distance = rss_state_informationSafe_distance; 162 : 1 : ::ad::physics::Distance rss_state_informationCurrent_distance(1e9); 163 : 1 : rss_state_information.current_distance = rss_state_informationCurrent_distance; 164 : 1 : ::ad::rss::state::RssStateEvaluator rss_state_informationEvaluator( 165 : : ::ad::rss::state::RssStateEvaluator::IntersectionOverlap); 166 : 1 : rss_state_information.evaluator = rss_state_informationEvaluator; 167 : 1 : valueA.rss_state_information = rss_state_information; 168 : 1 : ::ad::rss::state::LongitudinalRssState valueB = mValue; 169 : : 170 [ + - - + : 1 : EXPECT_FALSE(valueA == valueB); - - - - - - - - ] 171 [ + - - + : 1 : EXPECT_TRUE(valueA != valueB); - - - - - - - - ] 172 : 1 : } 173 : : 174 : : #if defined(__clang__) && (__clang_major__ >= 7) 175 : : #pragma GCC diagnostic pop 176 : : #endif