LCOV - code coverage report
Current view: top level - tests/generated/ad/rss/world - LaneSegmentTests.cpp (source / functions) Hit Total Coverage
Test: ad_rss Lines: 114 114 100.0 %
Date: 2024-12-17 12:06:18 Functions: 23 23 100.0 %
Branches: 38 202 18.8 %

           Branch data     Line data    Source code
       1                 :            : /*
       2                 :            :  * ----------------- BEGIN LICENSE BLOCK ---------------------------------
       3                 :            :  *
       4                 :            :  * Copyright (C) 2018-2021 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/world/LaneSegment.hpp"
      23                 :            : 
      24                 :            : class LaneSegmentTests : public testing::Test
      25                 :            : {
      26                 :            : protected:
      27                 :         11 :   virtual void SetUp() override
      28                 :            :   {
      29                 :            :     // valid initialization
      30                 :         11 :     ::ad::rss::world::LaneSegment value;
      31                 :         11 :     ::ad::rss::world::LaneSegmentId valueId(std::numeric_limits<::ad::rss::world::LaneSegmentId>::lowest());
      32                 :         11 :     value.id = valueId;
      33                 :         11 :     ::ad::rss::world::LaneSegmentType valueType(::ad::rss::world::LaneSegmentType::Normal);
      34                 :         11 :     value.type = valueType;
      35                 :         11 :     ::ad::rss::world::LaneDrivingDirection valueDrivingDirection(::ad::rss::world::LaneDrivingDirection::Bidirectional);
      36                 :         11 :     value.drivingDirection = valueDrivingDirection;
      37                 :         11 :     ::ad::physics::MetricRange valueLength;
      38                 :         11 :     ::ad::physics::Distance valueLengthMinimum(-1e9);
      39                 :         11 :     valueLengthMinimum = ::ad::physics::Distance(0.); // set to valid value within struct
      40                 :         11 :     valueLength.minimum = valueLengthMinimum;
      41                 :         11 :     ::ad::physics::Distance valueLengthMaximum(-1e9);
      42                 :         11 :     valueLength.maximum = valueLengthMaximum;
      43                 :         11 :     valueLength.maximum = valueLength.minimum;
      44                 :         11 :     valueLength.minimum = valueLength.maximum;
      45                 :         11 :     value.length = valueLength;
      46                 :         11 :     ::ad::physics::MetricRange valueWidth;
      47                 :         11 :     ::ad::physics::Distance valueWidthMinimum(-1e9);
      48                 :         11 :     valueWidthMinimum = ::ad::physics::Distance(0.); // set to valid value within struct
      49                 :         11 :     valueWidth.minimum = valueWidthMinimum;
      50                 :         11 :     ::ad::physics::Distance valueWidthMaximum(-1e9);
      51                 :         11 :     valueWidth.maximum = valueWidthMaximum;
      52                 :         11 :     valueWidth.maximum = valueWidth.minimum;
      53                 :         11 :     valueWidth.minimum = valueWidth.maximum;
      54                 :         11 :     value.width = valueWidth;
      55                 :         11 :     mValue = value;
      56                 :         11 :   }
      57                 :            : 
      58                 :            :   ::ad::rss::world::LaneSegment mValue;
      59                 :            : };
      60                 :            : 
      61                 :          2 : TEST_F(LaneSegmentTests, copyConstruction)
      62                 :            : {
      63                 :          1 :   ::ad::rss::world::LaneSegment value(mValue);
      64   [ +  -  -  +  :          1 :   EXPECT_EQ(mValue, value);
          -  -  -  -  -  
                      - ]
      65                 :          1 : }
      66                 :            : 
      67                 :          2 : TEST_F(LaneSegmentTests, moveConstruction)
      68                 :            : {
      69                 :          1 :   ::ad::rss::world::LaneSegment tmpValue(mValue);
      70                 :          1 :   ::ad::rss::world::LaneSegment value(std::move(tmpValue));
      71   [ +  -  -  +  :          1 :   EXPECT_EQ(mValue, value);
          -  -  -  -  -  
                      - ]
      72                 :          1 : }
      73                 :            : 
      74                 :          2 : TEST_F(LaneSegmentTests, copyAssignment)
      75                 :            : {
      76                 :          1 :   ::ad::rss::world::LaneSegment value;
      77                 :          1 :   value = mValue;
      78   [ +  -  -  +  :          1 :   EXPECT_EQ(mValue, value);
          -  -  -  -  -  
                      - ]
      79                 :          1 : }
      80                 :            : 
      81                 :          2 : TEST_F(LaneSegmentTests, moveAssignment)
      82                 :            : {
      83                 :          1 :   ::ad::rss::world::LaneSegment tmpValue(mValue);
      84                 :          1 :   ::ad::rss::world::LaneSegment value;
      85                 :          1 :   value = std::move(tmpValue);
      86   [ +  -  -  +  :          1 :   EXPECT_EQ(mValue, value);
          -  -  -  -  -  
                      - ]
      87                 :          1 : }
      88                 :            : 
      89                 :          2 : TEST_F(LaneSegmentTests, comparisonOperatorEqual)
      90                 :            : {
      91                 :          1 :   ::ad::rss::world::LaneSegment valueA = mValue;
      92                 :          1 :   ::ad::rss::world::LaneSegment valueB = mValue;
      93                 :            : 
      94   [ +  -  -  +  :          1 :   EXPECT_TRUE(valueA == valueB);
          -  -  -  -  -  
                -  -  - ]
      95   [ +  -  -  +  :          1 :   EXPECT_FALSE(valueA != valueB);
          -  -  -  -  -  
                -  -  - ]
      96                 :          1 : }
      97                 :            : 
      98                 :          2 : TEST_F(LaneSegmentTests, stringConversionTest)
      99                 :            : {
     100         [ +  - ]:          1 :   std::stringstream stream;
     101         [ +  - ]:          1 :   stream << mValue;
     102         [ +  - ]:          1 :   std::string ostreamStr = stream.str();
     103         [ +  - ]:          1 :   std::string toStr = std::to_string(mValue);
     104   [ +  -  -  +  :          1 :   ASSERT_EQ(ostreamStr, toStr);
          -  -  -  -  -  
                      - ]
     105                 :            : }
     106                 :            : 
     107                 :          2 : TEST_F(LaneSegmentTests, comparisonOperatorIdDiffers)
     108                 :            : {
     109                 :          1 :   ::ad::rss::world::LaneSegment valueA = mValue;
     110                 :          1 :   ::ad::rss::world::LaneSegmentId id(std::numeric_limits<::ad::rss::world::LaneSegmentId>::max());
     111                 :          1 :   valueA.id = id;
     112                 :          1 :   ::ad::rss::world::LaneSegment valueB = mValue;
     113                 :            : 
     114   [ +  -  -  +  :          1 :   EXPECT_FALSE(valueA == valueB);
          -  -  -  -  -  
                -  -  - ]
     115   [ +  -  -  +  :          1 :   EXPECT_TRUE(valueA != valueB);
          -  -  -  -  -  
                -  -  - ]
     116                 :          1 : }
     117                 :            : 
     118                 :          2 : TEST_F(LaneSegmentTests, comparisonOperatorTypeDiffers)
     119                 :            : {
     120                 :          1 :   ::ad::rss::world::LaneSegment valueA = mValue;
     121                 :          1 :   ::ad::rss::world::LaneSegmentType type(::ad::rss::world::LaneSegmentType::Intersection);
     122                 :          1 :   valueA.type = type;
     123                 :          1 :   ::ad::rss::world::LaneSegment valueB = mValue;
     124                 :            : 
     125   [ +  -  -  +  :          1 :   EXPECT_FALSE(valueA == valueB);
          -  -  -  -  -  
                -  -  - ]
     126   [ +  -  -  +  :          1 :   EXPECT_TRUE(valueA != valueB);
          -  -  -  -  -  
                -  -  - ]
     127                 :          1 : }
     128                 :            : 
     129                 :          2 : TEST_F(LaneSegmentTests, comparisonOperatorDrivingDirectionDiffers)
     130                 :            : {
     131                 :          1 :   ::ad::rss::world::LaneSegment valueA = mValue;
     132                 :          1 :   ::ad::rss::world::LaneDrivingDirection drivingDirection(::ad::rss::world::LaneDrivingDirection::Negative);
     133                 :          1 :   valueA.drivingDirection = drivingDirection;
     134                 :          1 :   ::ad::rss::world::LaneSegment valueB = mValue;
     135                 :            : 
     136   [ +  -  -  +  :          1 :   EXPECT_FALSE(valueA == valueB);
          -  -  -  -  -  
                -  -  - ]
     137   [ +  -  -  +  :          1 :   EXPECT_TRUE(valueA != valueB);
          -  -  -  -  -  
                -  -  - ]
     138                 :          1 : }
     139                 :            : 
     140                 :          2 : TEST_F(LaneSegmentTests, comparisonOperatorLengthDiffers)
     141                 :            : {
     142                 :          1 :   ::ad::rss::world::LaneSegment valueA = mValue;
     143                 :          1 :   ::ad::physics::MetricRange length;
     144                 :          1 :   ::ad::physics::Distance lengthMinimum(1e9);
     145                 :          1 :   length.minimum = lengthMinimum;
     146                 :          1 :   ::ad::physics::Distance lengthMaximum(1e9);
     147                 :          1 :   lengthMaximum = ::ad::physics::Distance(1e6); // set to valid value within struct
     148                 :          1 :   length.maximum = lengthMaximum;
     149                 :          1 :   length.maximum = length.minimum;
     150                 :          1 :   length.minimum = length.maximum;
     151                 :          1 :   valueA.length = length;
     152                 :          1 :   ::ad::rss::world::LaneSegment valueB = mValue;
     153                 :            : 
     154   [ +  -  -  +  :          1 :   EXPECT_FALSE(valueA == valueB);
          -  -  -  -  -  
                -  -  - ]
     155   [ +  -  -  +  :          1 :   EXPECT_TRUE(valueA != valueB);
          -  -  -  -  -  
                -  -  - ]
     156                 :          1 : }
     157                 :            : 
     158                 :          2 : TEST_F(LaneSegmentTests, comparisonOperatorWidthDiffers)
     159                 :            : {
     160                 :          1 :   ::ad::rss::world::LaneSegment valueA = mValue;
     161                 :          1 :   ::ad::physics::MetricRange width;
     162                 :          1 :   ::ad::physics::Distance widthMinimum(1e9);
     163                 :          1 :   width.minimum = widthMinimum;
     164                 :          1 :   ::ad::physics::Distance widthMaximum(1e9);
     165                 :          1 :   widthMaximum = ::ad::physics::Distance(1e6); // set to valid value within struct
     166                 :          1 :   width.maximum = widthMaximum;
     167                 :          1 :   width.maximum = width.minimum;
     168                 :          1 :   width.minimum = width.maximum;
     169                 :          1 :   valueA.width = width;
     170                 :          1 :   ::ad::rss::world::LaneSegment valueB = mValue;
     171                 :            : 
     172   [ +  -  -  +  :          1 :   EXPECT_FALSE(valueA == valueB);
          -  -  -  -  -  
                -  -  - ]
     173   [ +  -  -  +  :          1 :   EXPECT_TRUE(valueA != valueB);
          -  -  -  -  -  
                -  -  - ]
     174                 :          1 : }
     175                 :            : 
     176                 :            : #if defined(__clang__) && (__clang_major__ >= 7)
     177                 :            : #pragma GCC diagnostic pop
     178                 :            : #endif

Generated by: LCOV version 1.14