LCOV - code coverage report
Current view: top level - tests/generated/ad/rss/core - RelativeObjectStateTests.cpp (source / functions) Hit Total Coverage
Test: ad_rss Lines: 308 308 100.0 %
Date: 2025-07-22 06:53:46 Functions: 31 31 100.0 %
Branches: 38 186 20.4 %

           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/core/RelativeObjectState.hpp"
      23                 :            : 
      24                 :            : class RelativeObjectStateTests : public testing::Test
      25                 :            : {
      26                 :            : protected:
      27                 :         10 :   virtual void SetUp() override
      28                 :            :   {
      29                 :            :     // valid initialization
      30                 :         10 :     ::ad::rss::core::RelativeObjectState value;
      31                 :         10 :     ::ad::rss::world::ObjectType valueObject_type(::ad::rss::world::ObjectType::Invalid);
      32                 :         10 :     value.object_type = valueObject_type;
      33                 :         10 :     ::ad::rss::world::RssDynamics valueDynamics;
      34                 :         10 :     ::ad::rss::world::LongitudinalRssAccelerationValues valueDynamicsAlpha_lon;
      35                 :         10 :     ::ad::physics::Acceleration valueDynamicsAlpha_lonAccel_max(-1e2);
      36                 :         10 :     valueDynamicsAlpha_lonAccel_max = ::ad::physics::Acceleration(0.); // set to valid value within struct
      37                 :         10 :     valueDynamicsAlpha_lon.accel_max = valueDynamicsAlpha_lonAccel_max;
      38                 :         10 :     ::ad::physics::Acceleration valueDynamicsAlpha_lonBrake_max(-1e2);
      39                 :         10 :     valueDynamicsAlpha_lon.brake_max = valueDynamicsAlpha_lonBrake_max;
      40                 :         10 :     ::ad::physics::Acceleration valueDynamicsAlpha_lonBrake_min(-1e2);
      41                 :         10 :     valueDynamicsAlpha_lon.brake_min = valueDynamicsAlpha_lonBrake_min;
      42                 :         10 :     ::ad::physics::Acceleration valueDynamicsAlpha_lonBrake_min_correct(-1e2);
      43                 :         10 :     valueDynamicsAlpha_lon.brake_min_correct = valueDynamicsAlpha_lonBrake_min_correct;
      44                 :         10 :     valueDynamicsAlpha_lon.brake_min = valueDynamicsAlpha_lon.brake_max;
      45                 :         10 :     valueDynamicsAlpha_lon.brake_min_correct = valueDynamicsAlpha_lon.brake_min;
      46                 :         10 :     valueDynamicsAlpha_lon.brake_min = valueDynamicsAlpha_lon.brake_min_correct;
      47                 :         10 :     valueDynamicsAlpha_lon.brake_max = valueDynamicsAlpha_lon.brake_min;
      48                 :         10 :     valueDynamics.alpha_lon = valueDynamicsAlpha_lon;
      49                 :         10 :     ::ad::rss::world::LateralRssAccelerationValues valueDynamicsAlpha_lat;
      50                 :         10 :     ::ad::physics::Acceleration valueDynamicsAlpha_latAccel_max(-1e2);
      51                 :         10 :     valueDynamicsAlpha_latAccel_max = ::ad::physics::Acceleration(0.); // set to valid value within struct
      52                 :         10 :     valueDynamicsAlpha_lat.accel_max = valueDynamicsAlpha_latAccel_max;
      53                 :         10 :     ::ad::physics::Acceleration valueDynamicsAlpha_latBrake_min(-1e2);
      54                 :         10 :     valueDynamicsAlpha_lat.brake_min = valueDynamicsAlpha_latBrake_min;
      55                 :         10 :     valueDynamics.alpha_lat = valueDynamicsAlpha_lat;
      56                 :         10 :     ::ad::physics::Distance valueDynamicsLateral_fluctuation_margin(-1e9);
      57                 :         10 :     valueDynamicsLateral_fluctuation_margin = ::ad::physics::Distance(0.); // set to valid value within struct
      58                 :         10 :     valueDynamics.lateral_fluctuation_margin = valueDynamicsLateral_fluctuation_margin;
      59                 :         10 :     ::ad::physics::Duration valueDynamicsResponse_time(0.);
      60                 :            :     valueDynamicsResponse_time
      61                 :         10 :       = ::ad::physics::Duration(0. + ::ad::physics::Duration::cPrecisionValue); // set to valid value within struct
      62                 :         10 :     valueDynamics.response_time = valueDynamicsResponse_time;
      63                 :         10 :     ::ad::physics::Speed valueDynamicsMax_speed_on_acceleration(-100.);
      64                 :         10 :     valueDynamics.max_speed_on_acceleration = valueDynamicsMax_speed_on_acceleration;
      65                 :         10 :     ::ad::rss::world::UnstructuredSettings valueDynamicsUnstructured_settings;
      66                 :         10 :     ::ad::physics::Distance valueDynamicsUnstructured_settingsPedestrian_turning_radius(-1e9);
      67                 :            :     valueDynamicsUnstructured_settings.pedestrian_turning_radius
      68                 :         10 :       = valueDynamicsUnstructured_settingsPedestrian_turning_radius;
      69                 :         10 :     ::ad::physics::Angle valueDynamicsUnstructured_settingsDrive_away_max_angle(-6.283185308);
      70                 :         10 :     valueDynamicsUnstructured_settings.drive_away_max_angle = valueDynamicsUnstructured_settingsDrive_away_max_angle;
      71                 :         10 :     ::ad::physics::AngularAcceleration valueDynamicsUnstructured_settingsVehicle_yaw_rate_change(-1e2);
      72                 :            :     valueDynamicsUnstructured_settings.vehicle_yaw_rate_change
      73                 :         10 :       = valueDynamicsUnstructured_settingsVehicle_yaw_rate_change;
      74                 :         10 :     ::ad::physics::Distance valueDynamicsUnstructured_settingsVehicle_min_radius(-1e9);
      75                 :         10 :     valueDynamicsUnstructured_settings.vehicle_min_radius = valueDynamicsUnstructured_settingsVehicle_min_radius;
      76                 :         10 :     ::ad::physics::Duration valueDynamicsUnstructured_settingsVehicle_trajectory_calculation_step(0.);
      77                 :            :     valueDynamicsUnstructured_settings.vehicle_trajectory_calculation_step
      78                 :         10 :       = valueDynamicsUnstructured_settingsVehicle_trajectory_calculation_step;
      79                 :         10 :     uint32_t valueDynamicsUnstructured_settingsVehicle_front_intermediate_yaw_rate_change_ratio_steps{
      80                 :            :       std::numeric_limits<uint32_t>::min()};
      81                 :            :     valueDynamicsUnstructured_settings.vehicle_front_intermediate_yaw_rate_change_ratio_steps
      82                 :         10 :       = valueDynamicsUnstructured_settingsVehicle_front_intermediate_yaw_rate_change_ratio_steps;
      83                 :         10 :     uint32_t valueDynamicsUnstructured_settingsVehicle_back_intermediate_yaw_rate_change_ratio_steps{
      84                 :            :       std::numeric_limits<uint32_t>::min()};
      85                 :            :     valueDynamicsUnstructured_settings.vehicle_back_intermediate_yaw_rate_change_ratio_steps
      86                 :         10 :       = valueDynamicsUnstructured_settingsVehicle_back_intermediate_yaw_rate_change_ratio_steps;
      87                 :         10 :     uint32_t valueDynamicsUnstructured_settingsVehicle_brake_intermediate_acceleration_steps{
      88                 :            :       std::numeric_limits<uint32_t>::min()};
      89                 :            :     valueDynamicsUnstructured_settings.vehicle_brake_intermediate_acceleration_steps
      90                 :         10 :       = valueDynamicsUnstructured_settingsVehicle_brake_intermediate_acceleration_steps;
      91                 :         10 :     uint32_t valueDynamicsUnstructured_settingsVehicle_continue_forward_intermediate_acceleration_steps{
      92                 :            :       std::numeric_limits<uint32_t>::min()};
      93                 :            :     valueDynamicsUnstructured_settings.vehicle_continue_forward_intermediate_acceleration_steps
      94                 :         10 :       = valueDynamicsUnstructured_settingsVehicle_continue_forward_intermediate_acceleration_steps;
      95                 :         10 :     uint32_t valueDynamicsUnstructured_settingsVehicle_continue_forward_intermediate_yaw_rate_change_ratio_steps{
      96                 :            :       std::numeric_limits<uint32_t>::min()};
      97                 :            :     valueDynamicsUnstructured_settings.vehicle_continue_forward_intermediate_yaw_rate_change_ratio_steps
      98                 :         10 :       = valueDynamicsUnstructured_settingsVehicle_continue_forward_intermediate_yaw_rate_change_ratio_steps;
      99                 :         10 :     uint32_t valueDynamicsUnstructured_settingsPedestrian_continue_forward_intermediate_heading_change_ratio_steps{
     100                 :            :       std::numeric_limits<uint32_t>::min()};
     101                 :            :     valueDynamicsUnstructured_settings.pedestrian_continue_forward_intermediate_heading_change_ratio_steps
     102                 :         10 :       = valueDynamicsUnstructured_settingsPedestrian_continue_forward_intermediate_heading_change_ratio_steps;
     103                 :         10 :     uint32_t valueDynamicsUnstructured_settingsPedestrian_continue_forward_intermediate_acceleration_steps{
     104                 :            :       std::numeric_limits<uint32_t>::min()};
     105                 :            :     valueDynamicsUnstructured_settings.pedestrian_continue_forward_intermediate_acceleration_steps
     106                 :         10 :       = valueDynamicsUnstructured_settingsPedestrian_continue_forward_intermediate_acceleration_steps;
     107                 :         10 :     uint32_t valueDynamicsUnstructured_settingsPedestrian_brake_intermediate_acceleration_steps{
     108                 :            :       std::numeric_limits<uint32_t>::min()};
     109                 :            :     valueDynamicsUnstructured_settings.pedestrian_brake_intermediate_acceleration_steps
     110                 :         10 :       = valueDynamicsUnstructured_settingsPedestrian_brake_intermediate_acceleration_steps;
     111                 :         10 :     uint32_t valueDynamicsUnstructured_settingsPedestrian_front_intermediate_heading_change_ratio_steps{
     112                 :            :       std::numeric_limits<uint32_t>::min()};
     113                 :            :     valueDynamicsUnstructured_settings.pedestrian_front_intermediate_heading_change_ratio_steps
     114                 :         10 :       = valueDynamicsUnstructured_settingsPedestrian_front_intermediate_heading_change_ratio_steps;
     115                 :         10 :     uint32_t valueDynamicsUnstructured_settingsPedestrian_back_intermediate_heading_change_ratio_steps{
     116                 :            :       std::numeric_limits<uint32_t>::min()};
     117                 :            :     valueDynamicsUnstructured_settings.pedestrian_back_intermediate_heading_change_ratio_steps
     118                 :         10 :       = valueDynamicsUnstructured_settingsPedestrian_back_intermediate_heading_change_ratio_steps;
     119                 :         10 :     valueDynamics.unstructured_settings = valueDynamicsUnstructured_settings;
     120                 :         10 :     ::ad::physics::Distance valueDynamicsMin_longitudinal_safety_distance(-1e9);
     121                 :         10 :     valueDynamics.min_longitudinal_safety_distance = valueDynamicsMin_longitudinal_safety_distance;
     122                 :         10 :     value.dynamics = valueDynamics;
     123                 :         10 :     ::ad::rss::world::ObjectState valueUnstructured_object_state;
     124                 :         10 :     ::ad::physics::Angle valueUnstructured_object_stateYaw(-6.283185308);
     125                 :         10 :     valueUnstructured_object_state.yaw = valueUnstructured_object_stateYaw;
     126                 :         10 :     ::ad::physics::Dimension2D valueUnstructured_object_stateDimension;
     127                 :         10 :     ::ad::physics::Distance valueUnstructured_object_stateDimensionLength(-1e9);
     128                 :         10 :     valueUnstructured_object_stateDimension.length = valueUnstructured_object_stateDimensionLength;
     129                 :         10 :     ::ad::physics::Distance valueUnstructured_object_stateDimensionWidth(-1e9);
     130                 :         10 :     valueUnstructured_object_stateDimension.width = valueUnstructured_object_stateDimensionWidth;
     131                 :         10 :     valueUnstructured_object_state.dimension = valueUnstructured_object_stateDimension;
     132                 :         10 :     ::ad::physics::AngularVelocity valueUnstructured_object_stateYaw_rate(-100.);
     133                 :         10 :     valueUnstructured_object_state.yaw_rate = valueUnstructured_object_stateYaw_rate;
     134                 :         10 :     ::ad::physics::Distance2D valueUnstructured_object_stateCenter_point;
     135                 :         10 :     ::ad::physics::Distance valueUnstructured_object_stateCenter_pointX(-1e9);
     136                 :         10 :     valueUnstructured_object_stateCenter_point.x = valueUnstructured_object_stateCenter_pointX;
     137                 :         10 :     ::ad::physics::Distance valueUnstructured_object_stateCenter_pointY(-1e9);
     138                 :         10 :     valueUnstructured_object_stateCenter_point.y = valueUnstructured_object_stateCenter_pointY;
     139                 :         10 :     valueUnstructured_object_state.center_point = valueUnstructured_object_stateCenter_point;
     140                 :         10 :     ::ad::physics::SpeedRange valueUnstructured_object_stateSpeed_range;
     141                 :         10 :     ::ad::physics::Speed valueUnstructured_object_stateSpeed_rangeMinimum(-100.);
     142                 :         10 :     valueUnstructured_object_stateSpeed_range.minimum = valueUnstructured_object_stateSpeed_rangeMinimum;
     143                 :         10 :     ::ad::physics::Speed valueUnstructured_object_stateSpeed_rangeMaximum(-100.);
     144                 :         10 :     valueUnstructured_object_stateSpeed_range.maximum = valueUnstructured_object_stateSpeed_rangeMaximum;
     145                 :         10 :     valueUnstructured_object_stateSpeed_range.maximum = valueUnstructured_object_stateSpeed_range.minimum;
     146                 :         10 :     valueUnstructured_object_stateSpeed_range.minimum = valueUnstructured_object_stateSpeed_range.maximum;
     147                 :         10 :     valueUnstructured_object_state.speed_range = valueUnstructured_object_stateSpeed_range;
     148                 :         10 :     ::ad::physics::Angle valueUnstructured_object_stateSteering_angle(-6.283185308);
     149                 :         10 :     valueUnstructured_object_state.steering_angle = valueUnstructured_object_stateSteering_angle;
     150                 :         10 :     value.unstructured_object_state = valueUnstructured_object_state;
     151                 :         10 :     ::ad::rss::core::StructuredObjectState valueStructured_object_state;
     152                 :         10 :     ::ad::rss::world::Velocity valueStructured_object_stateVelocity;
     153                 :         10 :     ::ad::physics::Speed valueStructured_object_stateVelocitySpeed_lon_min(-100.);
     154                 :         10 :     valueStructured_object_stateVelocitySpeed_lon_min = ::ad::physics::Speed(0.); // set to valid value within struct
     155                 :         10 :     valueStructured_object_stateVelocity.speed_lon_min = valueStructured_object_stateVelocitySpeed_lon_min;
     156                 :         10 :     ::ad::physics::Speed valueStructured_object_stateVelocitySpeed_lon_max(-100.);
     157                 :         10 :     valueStructured_object_stateVelocity.speed_lon_max = valueStructured_object_stateVelocitySpeed_lon_max;
     158                 :         10 :     ::ad::physics::Speed valueStructured_object_stateVelocitySpeed_lat_min(-100.);
     159                 :         10 :     valueStructured_object_stateVelocity.speed_lat_min = valueStructured_object_stateVelocitySpeed_lat_min;
     160                 :         10 :     ::ad::physics::Speed valueStructured_object_stateVelocitySpeed_lat_max(-100.);
     161                 :         10 :     valueStructured_object_stateVelocity.speed_lat_max = valueStructured_object_stateVelocitySpeed_lat_max;
     162                 :         10 :     valueStructured_object_stateVelocity.speed_lon_max = valueStructured_object_stateVelocity.speed_lon_min;
     163                 :         10 :     valueStructured_object_stateVelocity.speed_lat_max = valueStructured_object_stateVelocity.speed_lat_min;
     164                 :         10 :     valueStructured_object_stateVelocity.speed_lon_min = valueStructured_object_stateVelocity.speed_lon_max;
     165                 :         10 :     valueStructured_object_stateVelocity.speed_lat_min = valueStructured_object_stateVelocity.speed_lat_max;
     166                 :         10 :     valueStructured_object_state.velocity = valueStructured_object_stateVelocity;
     167                 :         10 :     bool valueStructured_object_stateHas_priority{true};
     168                 :         10 :     valueStructured_object_state.has_priority = valueStructured_object_stateHas_priority;
     169                 :         10 :     bool valueStructured_object_stateIs_in_correct_lane{true};
     170                 :         10 :     valueStructured_object_state.is_in_correct_lane = valueStructured_object_stateIs_in_correct_lane;
     171                 :         10 :     ::ad::physics::Distance valueStructured_object_stateDistance_to_enter_intersection(-1e9);
     172                 :            :     valueStructured_object_stateDistance_to_enter_intersection
     173                 :         10 :       = ::ad::physics::Distance(0.); // set to valid value within struct
     174                 :            :     valueStructured_object_state.distance_to_enter_intersection
     175                 :         10 :       = valueStructured_object_stateDistance_to_enter_intersection;
     176                 :         10 :     ::ad::physics::Distance valueStructured_object_stateDistance_to_leave_intersection(-1e9);
     177                 :            :     valueStructured_object_state.distance_to_leave_intersection
     178                 :         10 :       = valueStructured_object_stateDistance_to_leave_intersection;
     179                 :            :     valueStructured_object_state.distance_to_leave_intersection
     180                 :         10 :       = valueStructured_object_state.distance_to_enter_intersection;
     181                 :            :     valueStructured_object_state.distance_to_enter_intersection
     182                 :         10 :       = valueStructured_object_state.distance_to_leave_intersection;
     183                 :         10 :     value.structured_object_state = valueStructured_object_state;
     184                 :         10 :     mValue = value;
     185                 :         10 :   }
     186                 :            : 
     187                 :            :   ::ad::rss::core::RelativeObjectState mValue;
     188                 :            : };
     189                 :            : 
     190                 :          4 : TEST_F(RelativeObjectStateTests, copyConstruction)
     191                 :            : {
     192                 :          1 :   ::ad::rss::core::RelativeObjectState value(mValue);
     193   [ +  -  -  +  :          1 :   EXPECT_EQ(mValue, value);
          -  -  -  -  -  
                      - ]
     194                 :          1 : }
     195                 :            : 
     196                 :          4 : TEST_F(RelativeObjectStateTests, moveConstruction)
     197                 :            : {
     198                 :          1 :   ::ad::rss::core::RelativeObjectState tmpValue(mValue);
     199                 :          1 :   ::ad::rss::core::RelativeObjectState value(std::move(tmpValue));
     200   [ +  -  -  +  :          1 :   EXPECT_EQ(mValue, value);
          -  -  -  -  -  
                      - ]
     201                 :          1 : }
     202                 :            : 
     203                 :          4 : TEST_F(RelativeObjectStateTests, copyAssignment)
     204                 :            : {
     205                 :          1 :   ::ad::rss::core::RelativeObjectState value;
     206                 :          1 :   value = mValue;
     207   [ +  -  -  +  :          1 :   EXPECT_EQ(mValue, value);
          -  -  -  -  -  
                      - ]
     208                 :          1 : }
     209                 :            : 
     210                 :          4 : TEST_F(RelativeObjectStateTests, moveAssignment)
     211                 :            : {
     212                 :          1 :   ::ad::rss::core::RelativeObjectState tmpValue(mValue);
     213                 :          1 :   ::ad::rss::core::RelativeObjectState value;
     214                 :          1 :   value = std::move(tmpValue);
     215   [ +  -  -  +  :          1 :   EXPECT_EQ(mValue, value);
          -  -  -  -  -  
                      - ]
     216                 :          1 : }
     217                 :            : 
     218                 :          4 : TEST_F(RelativeObjectStateTests, comparisonOperatorEqual)
     219                 :            : {
     220                 :          1 :   ::ad::rss::core::RelativeObjectState valueA = mValue;
     221                 :          1 :   ::ad::rss::core::RelativeObjectState valueB = mValue;
     222                 :            : 
     223   [ +  -  -  +  :          1 :   EXPECT_TRUE(valueA == valueB);
          -  -  -  -  -  
                -  -  - ]
     224   [ +  -  -  +  :          1 :   EXPECT_FALSE(valueA != valueB);
          -  -  -  -  -  
                -  -  - ]
     225                 :          1 : }
     226                 :            : 
     227                 :          4 : TEST_F(RelativeObjectStateTests, stringConversionTest)
     228                 :            : {
     229         [ +  - ]:          1 :   std::stringstream stream;
     230         [ +  - ]:          1 :   stream << mValue;
     231         [ +  - ]:          1 :   std::string ostreamStr = stream.str();
     232         [ +  - ]:          1 :   std::string toStr = std::to_string(mValue);
     233   [ +  -  -  +  :          1 :   ASSERT_EQ(ostreamStr, toStr);
          -  -  -  -  -  
                -  +  - ]
     234   [ +  -  +  -  :          1 : }
                   +  - ]
     235                 :            : 
     236                 :          4 : TEST_F(RelativeObjectStateTests, comparisonOperatorObject_typeDiffers)
     237                 :            : {
     238                 :          1 :   ::ad::rss::core::RelativeObjectState valueA = mValue;
     239                 :          1 :   ::ad::rss::world::ObjectType object_type(::ad::rss::world::ObjectType::OtherObject);
     240                 :          1 :   valueA.object_type = object_type;
     241                 :          1 :   ::ad::rss::core::RelativeObjectState valueB = mValue;
     242                 :            : 
     243   [ +  -  -  +  :          1 :   EXPECT_FALSE(valueA == valueB);
          -  -  -  -  -  
                -  -  - ]
     244   [ +  -  -  +  :          1 :   EXPECT_TRUE(valueA != valueB);
          -  -  -  -  -  
                -  -  - ]
     245                 :          1 : }
     246                 :            : 
     247                 :          4 : TEST_F(RelativeObjectStateTests, comparisonOperatorDynamicsDiffers)
     248                 :            : {
     249                 :          1 :   ::ad::rss::core::RelativeObjectState valueA = mValue;
     250                 :          1 :   ::ad::rss::world::RssDynamics dynamics;
     251                 :          1 :   ::ad::rss::world::LongitudinalRssAccelerationValues dynamicsAlpha_lon;
     252                 :          1 :   ::ad::physics::Acceleration dynamicsAlpha_lonAccel_max(1e2);
     253                 :          1 :   dynamicsAlpha_lon.accel_max = dynamicsAlpha_lonAccel_max;
     254                 :          1 :   ::ad::physics::Acceleration dynamicsAlpha_lonBrake_max(1e2);
     255                 :          1 :   dynamicsAlpha_lon.brake_max = dynamicsAlpha_lonBrake_max;
     256                 :          1 :   ::ad::physics::Acceleration dynamicsAlpha_lonBrake_min(1e2);
     257                 :          1 :   dynamicsAlpha_lon.brake_min = dynamicsAlpha_lonBrake_min;
     258                 :          1 :   ::ad::physics::Acceleration dynamicsAlpha_lonBrake_min_correct(1e2);
     259                 :          1 :   dynamicsAlpha_lonBrake_min_correct = ::ad::physics::Acceleration(0. * 0.9); // set to valid value within struct
     260                 :          1 :   dynamicsAlpha_lon.brake_min_correct = dynamicsAlpha_lonBrake_min_correct;
     261                 :          1 :   dynamicsAlpha_lon.brake_min_correct = dynamicsAlpha_lon.brake_min;
     262                 :          1 :   dynamicsAlpha_lon.brake_min = dynamicsAlpha_lon.brake_max;
     263                 :          1 :   dynamicsAlpha_lon.brake_max = dynamicsAlpha_lon.brake_min;
     264                 :          1 :   dynamicsAlpha_lon.brake_min = dynamicsAlpha_lon.brake_min_correct;
     265                 :          1 :   dynamics.alpha_lon = dynamicsAlpha_lon;
     266                 :          1 :   ::ad::rss::world::LateralRssAccelerationValues dynamicsAlpha_lat;
     267                 :          1 :   ::ad::physics::Acceleration dynamicsAlpha_latAccel_max(1e2);
     268                 :          1 :   dynamicsAlpha_lat.accel_max = dynamicsAlpha_latAccel_max;
     269                 :          1 :   ::ad::physics::Acceleration dynamicsAlpha_latBrake_min(1e2);
     270                 :          1 :   dynamicsAlpha_latBrake_min = ::ad::physics::Acceleration(0. * 0.9); // set to valid value within struct
     271                 :          1 :   dynamicsAlpha_lat.brake_min = dynamicsAlpha_latBrake_min;
     272                 :          1 :   dynamics.alpha_lat = dynamicsAlpha_lat;
     273                 :          1 :   ::ad::physics::Distance dynamicsLateral_fluctuation_margin(1e9);
     274                 :          1 :   dynamicsLateral_fluctuation_margin = ::ad::physics::Distance(1.); // set to valid value within struct
     275                 :          1 :   dynamics.lateral_fluctuation_margin = dynamicsLateral_fluctuation_margin;
     276                 :          1 :   ::ad::physics::Duration dynamicsResponse_time(1e6);
     277                 :          1 :   dynamicsResponse_time = ::ad::physics::Duration(10.); // set to valid value within struct
     278                 :          1 :   dynamics.response_time = dynamicsResponse_time;
     279                 :          1 :   ::ad::physics::Speed dynamicsMax_speed_on_acceleration(100.);
     280                 :          1 :   dynamics.max_speed_on_acceleration = dynamicsMax_speed_on_acceleration;
     281                 :          1 :   ::ad::rss::world::UnstructuredSettings dynamicsUnstructured_settings;
     282                 :          1 :   ::ad::physics::Distance dynamicsUnstructured_settingsPedestrian_turning_radius(1e9);
     283                 :          1 :   dynamicsUnstructured_settings.pedestrian_turning_radius = dynamicsUnstructured_settingsPedestrian_turning_radius;
     284                 :          1 :   ::ad::physics::Angle dynamicsUnstructured_settingsDrive_away_max_angle(6.283185308);
     285                 :          1 :   dynamicsUnstructured_settings.drive_away_max_angle = dynamicsUnstructured_settingsDrive_away_max_angle;
     286                 :          1 :   ::ad::physics::AngularAcceleration dynamicsUnstructured_settingsVehicle_yaw_rate_change(1e2);
     287                 :          1 :   dynamicsUnstructured_settings.vehicle_yaw_rate_change = dynamicsUnstructured_settingsVehicle_yaw_rate_change;
     288                 :          1 :   ::ad::physics::Distance dynamicsUnstructured_settingsVehicle_min_radius(1e9);
     289                 :          1 :   dynamicsUnstructured_settings.vehicle_min_radius = dynamicsUnstructured_settingsVehicle_min_radius;
     290                 :          1 :   ::ad::physics::Duration dynamicsUnstructured_settingsVehicle_trajectory_calculation_step(1e6);
     291                 :            :   dynamicsUnstructured_settings.vehicle_trajectory_calculation_step
     292                 :          1 :     = dynamicsUnstructured_settingsVehicle_trajectory_calculation_step;
     293                 :          1 :   uint32_t dynamicsUnstructured_settingsVehicle_front_intermediate_yaw_rate_change_ratio_steps{
     294                 :            :     std::numeric_limits<uint32_t>::max()};
     295                 :            :   dynamicsUnstructured_settings.vehicle_front_intermediate_yaw_rate_change_ratio_steps
     296                 :          1 :     = dynamicsUnstructured_settingsVehicle_front_intermediate_yaw_rate_change_ratio_steps;
     297                 :          1 :   uint32_t dynamicsUnstructured_settingsVehicle_back_intermediate_yaw_rate_change_ratio_steps{
     298                 :            :     std::numeric_limits<uint32_t>::max()};
     299                 :            :   dynamicsUnstructured_settings.vehicle_back_intermediate_yaw_rate_change_ratio_steps
     300                 :          1 :     = dynamicsUnstructured_settingsVehicle_back_intermediate_yaw_rate_change_ratio_steps;
     301                 :          1 :   uint32_t dynamicsUnstructured_settingsVehicle_brake_intermediate_acceleration_steps{
     302                 :            :     std::numeric_limits<uint32_t>::max()};
     303                 :            :   dynamicsUnstructured_settings.vehicle_brake_intermediate_acceleration_steps
     304                 :          1 :     = dynamicsUnstructured_settingsVehicle_brake_intermediate_acceleration_steps;
     305                 :          1 :   uint32_t dynamicsUnstructured_settingsVehicle_continue_forward_intermediate_acceleration_steps{
     306                 :            :     std::numeric_limits<uint32_t>::max()};
     307                 :            :   dynamicsUnstructured_settings.vehicle_continue_forward_intermediate_acceleration_steps
     308                 :          1 :     = dynamicsUnstructured_settingsVehicle_continue_forward_intermediate_acceleration_steps;
     309                 :          1 :   uint32_t dynamicsUnstructured_settingsVehicle_continue_forward_intermediate_yaw_rate_change_ratio_steps{
     310                 :            :     std::numeric_limits<uint32_t>::max()};
     311                 :            :   dynamicsUnstructured_settings.vehicle_continue_forward_intermediate_yaw_rate_change_ratio_steps
     312                 :          1 :     = dynamicsUnstructured_settingsVehicle_continue_forward_intermediate_yaw_rate_change_ratio_steps;
     313                 :          1 :   uint32_t dynamicsUnstructured_settingsPedestrian_continue_forward_intermediate_heading_change_ratio_steps{
     314                 :            :     std::numeric_limits<uint32_t>::max()};
     315                 :            :   dynamicsUnstructured_settings.pedestrian_continue_forward_intermediate_heading_change_ratio_steps
     316                 :          1 :     = dynamicsUnstructured_settingsPedestrian_continue_forward_intermediate_heading_change_ratio_steps;
     317                 :          1 :   uint32_t dynamicsUnstructured_settingsPedestrian_continue_forward_intermediate_acceleration_steps{
     318                 :            :     std::numeric_limits<uint32_t>::max()};
     319                 :            :   dynamicsUnstructured_settings.pedestrian_continue_forward_intermediate_acceleration_steps
     320                 :          1 :     = dynamicsUnstructured_settingsPedestrian_continue_forward_intermediate_acceleration_steps;
     321                 :          1 :   uint32_t dynamicsUnstructured_settingsPedestrian_brake_intermediate_acceleration_steps{
     322                 :            :     std::numeric_limits<uint32_t>::max()};
     323                 :            :   dynamicsUnstructured_settings.pedestrian_brake_intermediate_acceleration_steps
     324                 :          1 :     = dynamicsUnstructured_settingsPedestrian_brake_intermediate_acceleration_steps;
     325                 :          1 :   uint32_t dynamicsUnstructured_settingsPedestrian_front_intermediate_heading_change_ratio_steps{
     326                 :            :     std::numeric_limits<uint32_t>::max()};
     327                 :            :   dynamicsUnstructured_settings.pedestrian_front_intermediate_heading_change_ratio_steps
     328                 :          1 :     = dynamicsUnstructured_settingsPedestrian_front_intermediate_heading_change_ratio_steps;
     329                 :          1 :   uint32_t dynamicsUnstructured_settingsPedestrian_back_intermediate_heading_change_ratio_steps{
     330                 :            :     std::numeric_limits<uint32_t>::max()};
     331                 :            :   dynamicsUnstructured_settings.pedestrian_back_intermediate_heading_change_ratio_steps
     332                 :          1 :     = dynamicsUnstructured_settingsPedestrian_back_intermediate_heading_change_ratio_steps;
     333                 :          1 :   dynamics.unstructured_settings = dynamicsUnstructured_settings;
     334                 :          1 :   ::ad::physics::Distance dynamicsMin_longitudinal_safety_distance(1e9);
     335                 :          1 :   dynamics.min_longitudinal_safety_distance = dynamicsMin_longitudinal_safety_distance;
     336                 :          1 :   valueA.dynamics = dynamics;
     337                 :          1 :   ::ad::rss::core::RelativeObjectState valueB = mValue;
     338                 :            : 
     339   [ +  -  -  +  :          1 :   EXPECT_FALSE(valueA == valueB);
          -  -  -  -  -  
                -  -  - ]
     340   [ +  -  -  +  :          1 :   EXPECT_TRUE(valueA != valueB);
          -  -  -  -  -  
                -  -  - ]
     341                 :          1 : }
     342                 :            : 
     343                 :          4 : TEST_F(RelativeObjectStateTests, comparisonOperatorUnstructured_object_stateDiffers)
     344                 :            : {
     345                 :          1 :   ::ad::rss::core::RelativeObjectState valueA = mValue;
     346                 :          1 :   ::ad::rss::world::ObjectState unstructured_object_state;
     347                 :          1 :   ::ad::physics::Angle unstructured_object_stateYaw(6.283185308);
     348                 :          1 :   unstructured_object_state.yaw = unstructured_object_stateYaw;
     349                 :          1 :   ::ad::physics::Dimension2D unstructured_object_stateDimension;
     350                 :          1 :   ::ad::physics::Distance unstructured_object_stateDimensionLength(1e9);
     351                 :          1 :   unstructured_object_stateDimension.length = unstructured_object_stateDimensionLength;
     352                 :          1 :   ::ad::physics::Distance unstructured_object_stateDimensionWidth(1e9);
     353                 :          1 :   unstructured_object_stateDimension.width = unstructured_object_stateDimensionWidth;
     354                 :          1 :   unstructured_object_state.dimension = unstructured_object_stateDimension;
     355                 :          1 :   ::ad::physics::AngularVelocity unstructured_object_stateYaw_rate(100.);
     356                 :          1 :   unstructured_object_state.yaw_rate = unstructured_object_stateYaw_rate;
     357                 :          1 :   ::ad::physics::Distance2D unstructured_object_stateCenter_point;
     358                 :          1 :   ::ad::physics::Distance unstructured_object_stateCenter_pointX(1e9);
     359                 :          1 :   unstructured_object_stateCenter_point.x = unstructured_object_stateCenter_pointX;
     360                 :          1 :   ::ad::physics::Distance unstructured_object_stateCenter_pointY(1e9);
     361                 :          1 :   unstructured_object_stateCenter_point.y = unstructured_object_stateCenter_pointY;
     362                 :          1 :   unstructured_object_state.center_point = unstructured_object_stateCenter_point;
     363                 :          1 :   ::ad::physics::SpeedRange unstructured_object_stateSpeed_range;
     364                 :          1 :   ::ad::physics::Speed unstructured_object_stateSpeed_rangeMinimum(100.);
     365                 :          1 :   unstructured_object_stateSpeed_range.minimum = unstructured_object_stateSpeed_rangeMinimum;
     366                 :          1 :   ::ad::physics::Speed unstructured_object_stateSpeed_rangeMaximum(100.);
     367                 :          1 :   unstructured_object_stateSpeed_range.maximum = unstructured_object_stateSpeed_rangeMaximum;
     368                 :          1 :   unstructured_object_stateSpeed_range.maximum = unstructured_object_stateSpeed_range.minimum;
     369                 :          1 :   unstructured_object_stateSpeed_range.minimum = unstructured_object_stateSpeed_range.maximum;
     370                 :          1 :   unstructured_object_state.speed_range = unstructured_object_stateSpeed_range;
     371                 :          1 :   ::ad::physics::Angle unstructured_object_stateSteering_angle(6.283185308);
     372                 :          1 :   unstructured_object_state.steering_angle = unstructured_object_stateSteering_angle;
     373                 :          1 :   valueA.unstructured_object_state = unstructured_object_state;
     374                 :          1 :   ::ad::rss::core::RelativeObjectState valueB = mValue;
     375                 :            : 
     376   [ +  -  -  +  :          1 :   EXPECT_FALSE(valueA == valueB);
          -  -  -  -  -  
                -  -  - ]
     377   [ +  -  -  +  :          1 :   EXPECT_TRUE(valueA != valueB);
          -  -  -  -  -  
                -  -  - ]
     378                 :          1 : }
     379                 :            : 
     380                 :          4 : TEST_F(RelativeObjectStateTests, comparisonOperatorStructured_object_stateDiffers)
     381                 :            : {
     382                 :          1 :   ::ad::rss::core::RelativeObjectState valueA = mValue;
     383                 :          1 :   ::ad::rss::core::StructuredObjectState structured_object_state;
     384                 :          1 :   ::ad::rss::world::Velocity structured_object_stateVelocity;
     385                 :          1 :   ::ad::physics::Speed structured_object_stateVelocitySpeed_lon_min(100.);
     386                 :          1 :   structured_object_stateVelocity.speed_lon_min = structured_object_stateVelocitySpeed_lon_min;
     387                 :          1 :   ::ad::physics::Speed structured_object_stateVelocitySpeed_lon_max(100.);
     388                 :          1 :   structured_object_stateVelocity.speed_lon_max = structured_object_stateVelocitySpeed_lon_max;
     389                 :          1 :   ::ad::physics::Speed structured_object_stateVelocitySpeed_lat_min(100.);
     390                 :          1 :   structured_object_stateVelocity.speed_lat_min = structured_object_stateVelocitySpeed_lat_min;
     391                 :          1 :   ::ad::physics::Speed structured_object_stateVelocitySpeed_lat_max(100.);
     392                 :          1 :   structured_object_stateVelocity.speed_lat_max = structured_object_stateVelocitySpeed_lat_max;
     393                 :          1 :   structured_object_stateVelocity.speed_lat_max = structured_object_stateVelocity.speed_lat_min;
     394                 :          1 :   structured_object_stateVelocity.speed_lon_max = structured_object_stateVelocity.speed_lon_min;
     395                 :          1 :   structured_object_stateVelocity.speed_lat_min = structured_object_stateVelocity.speed_lat_max;
     396                 :          1 :   structured_object_stateVelocity.speed_lon_min = structured_object_stateVelocity.speed_lon_max;
     397                 :          1 :   structured_object_state.velocity = structured_object_stateVelocity;
     398                 :          1 :   bool structured_object_stateHas_priority{false};
     399                 :          1 :   structured_object_state.has_priority = structured_object_stateHas_priority;
     400                 :          1 :   bool structured_object_stateIs_in_correct_lane{false};
     401                 :          1 :   structured_object_state.is_in_correct_lane = structured_object_stateIs_in_correct_lane;
     402                 :          1 :   ::ad::physics::Distance structured_object_stateDistance_to_enter_intersection(1e9);
     403                 :          1 :   structured_object_state.distance_to_enter_intersection = structured_object_stateDistance_to_enter_intersection;
     404                 :          1 :   ::ad::physics::Distance structured_object_stateDistance_to_leave_intersection(1e9);
     405                 :            :   structured_object_stateDistance_to_leave_intersection
     406                 :          1 :     = ::ad::physics::Distance(1e4); // set to valid value within struct
     407                 :          1 :   structured_object_state.distance_to_leave_intersection = structured_object_stateDistance_to_leave_intersection;
     408                 :          1 :   structured_object_state.distance_to_leave_intersection = structured_object_state.distance_to_enter_intersection;
     409                 :          1 :   structured_object_state.distance_to_enter_intersection = structured_object_state.distance_to_leave_intersection;
     410                 :          1 :   valueA.structured_object_state = structured_object_state;
     411                 :          1 :   ::ad::rss::core::RelativeObjectState valueB = mValue;
     412                 :            : 
     413   [ +  -  -  +  :          1 :   EXPECT_FALSE(valueA == valueB);
          -  -  -  -  -  
                -  -  - ]
     414   [ +  -  -  +  :          1 :   EXPECT_TRUE(valueA != valueB);
          -  -  -  -  -  
                -  -  - ]
     415                 :          1 : }
     416                 :            : 
     417                 :            : #if defined(__clang__) && (__clang_major__ >= 7)
     418                 :            : #pragma GCC diagnostic pop
     419                 :            : #endif

Generated by: LCOV version 1.14