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 : : #include <gtest/gtest.h> 16 : : 17 : : #include <limits> 18 : : 19 : : #include "ad/map/route/RoadSegmentValidInputRange.hpp" 20 : : 21 : 2 : TEST(RoadSegmentValidInputRangeTests, testValidInputRange) 22 : : { 23 : 1 : ::ad::map::route::RoadSegment value; 24 : 1 : ::ad::map::route::LaneSegmentList valueDrivableLaneSegments; 25 : 1 : ::ad::map::route::LaneSegment valueDrivableLaneSegmentsElement; 26 : 1 : ::ad::map::lane::LaneId valueDrivableLaneSegmentsElementLeftNeighbor(1); 27 : 1 : valueDrivableLaneSegmentsElement.leftNeighbor = valueDrivableLaneSegmentsElementLeftNeighbor; 28 : 1 : ::ad::map::lane::LaneId valueDrivableLaneSegmentsElementRightNeighbor(1); 29 : 1 : valueDrivableLaneSegmentsElement.rightNeighbor = valueDrivableLaneSegmentsElementRightNeighbor; 30 : 1 : ::ad::map::lane::LaneIdList valueDrivableLaneSegmentsElementPredecessors; 31 : 1 : ::ad::map::lane::LaneId valueDrivableLaneSegmentsElementPredecessorsElement(1); 32 [ + - ]: 1 : valueDrivableLaneSegmentsElementPredecessors.resize(1, valueDrivableLaneSegmentsElementPredecessorsElement); 33 [ + - ]: 1 : valueDrivableLaneSegmentsElement.predecessors = valueDrivableLaneSegmentsElementPredecessors; 34 : 1 : ::ad::map::lane::LaneIdList valueDrivableLaneSegmentsElementSuccessors; 35 : 1 : ::ad::map::lane::LaneId valueDrivableLaneSegmentsElementSuccessorsElement(1); 36 [ + - ]: 1 : valueDrivableLaneSegmentsElementSuccessors.resize(1, valueDrivableLaneSegmentsElementSuccessorsElement); 37 [ + - ]: 1 : valueDrivableLaneSegmentsElement.successors = valueDrivableLaneSegmentsElementSuccessors; 38 : 1 : ::ad::map::route::LaneInterval valueDrivableLaneSegmentsElementLaneInterval; 39 : 1 : ::ad::map::lane::LaneId valueDrivableLaneSegmentsElementLaneIntervalLaneId(1); 40 : 1 : valueDrivableLaneSegmentsElementLaneInterval.laneId = valueDrivableLaneSegmentsElementLaneIntervalLaneId; 41 : 1 : ::ad::physics::ParametricValue valueDrivableLaneSegmentsElementLaneIntervalStart(0.); 42 : 1 : valueDrivableLaneSegmentsElementLaneInterval.start = valueDrivableLaneSegmentsElementLaneIntervalStart; 43 : 1 : ::ad::physics::ParametricValue valueDrivableLaneSegmentsElementLaneIntervalEnd(0.); 44 : 1 : valueDrivableLaneSegmentsElementLaneInterval.end = valueDrivableLaneSegmentsElementLaneIntervalEnd; 45 : 1 : bool valueDrivableLaneSegmentsElementLaneIntervalWrongWay{true}; 46 : 1 : valueDrivableLaneSegmentsElementLaneInterval.wrongWay = valueDrivableLaneSegmentsElementLaneIntervalWrongWay; 47 : 1 : valueDrivableLaneSegmentsElement.laneInterval = valueDrivableLaneSegmentsElementLaneInterval; 48 : 1 : ::ad::map::route::RouteLaneOffset valueDrivableLaneSegmentsElementRouteLaneOffset( 49 : : std::numeric_limits<::ad::map::route::RouteLaneOffset>::lowest()); 50 : 1 : valueDrivableLaneSegmentsElement.routeLaneOffset = valueDrivableLaneSegmentsElementRouteLaneOffset; 51 [ + - ]: 1 : valueDrivableLaneSegments.resize(1, valueDrivableLaneSegmentsElement); 52 [ + - ]: 1 : value.drivableLaneSegments = valueDrivableLaneSegments; 53 : 1 : ::ad::map::route::SegmentCounter valueSegmentCountFromDestination( 54 : : std::numeric_limits<::ad::map::route::SegmentCounter>::lowest()); 55 : 1 : value.segmentCountFromDestination = valueSegmentCountFromDestination; 56 : 1 : ::ad::map::point::BoundingSphere valueBoundingSphere; 57 : 1 : ::ad::map::point::ECEFPoint valueBoundingSphereCenter; 58 : 1 : ::ad::map::point::ECEFCoordinate valueBoundingSphereCenterX(-6400000); 59 : 1 : valueBoundingSphereCenter.x = valueBoundingSphereCenterX; 60 : 1 : ::ad::map::point::ECEFCoordinate valueBoundingSphereCenterY(-6400000); 61 : 1 : valueBoundingSphereCenter.y = valueBoundingSphereCenterY; 62 : 1 : ::ad::map::point::ECEFCoordinate valueBoundingSphereCenterZ(-6400000); 63 : 1 : valueBoundingSphereCenter.z = valueBoundingSphereCenterZ; 64 : 1 : valueBoundingSphere.center = valueBoundingSphereCenter; 65 : 1 : ::ad::physics::Distance valueBoundingSphereRadius(-1e9); 66 : 1 : valueBoundingSphere.radius = valueBoundingSphereRadius; 67 : 1 : value.boundingSphere = valueBoundingSphere; 68 [ + - - + : 1 : ASSERT_TRUE(withinValidInputRange(value)); - - - - - - - - ] 69 : : } 70 : : 71 : 2 : TEST(RoadSegmentValidInputRangeTests, testValidInputRangeBoundingSphereTooSmall) 72 : : { 73 : 1 : ::ad::map::route::RoadSegment value; 74 : 1 : ::ad::map::route::LaneSegmentList valueDrivableLaneSegments; 75 : 1 : ::ad::map::route::LaneSegment valueDrivableLaneSegmentsElement; 76 : 1 : ::ad::map::lane::LaneId valueDrivableLaneSegmentsElementLeftNeighbor(1); 77 : 1 : valueDrivableLaneSegmentsElement.leftNeighbor = valueDrivableLaneSegmentsElementLeftNeighbor; 78 : 1 : ::ad::map::lane::LaneId valueDrivableLaneSegmentsElementRightNeighbor(1); 79 : 1 : valueDrivableLaneSegmentsElement.rightNeighbor = valueDrivableLaneSegmentsElementRightNeighbor; 80 : 1 : ::ad::map::lane::LaneIdList valueDrivableLaneSegmentsElementPredecessors; 81 : 1 : ::ad::map::lane::LaneId valueDrivableLaneSegmentsElementPredecessorsElement(1); 82 [ + - ]: 1 : valueDrivableLaneSegmentsElementPredecessors.resize(1, valueDrivableLaneSegmentsElementPredecessorsElement); 83 [ + - ]: 1 : valueDrivableLaneSegmentsElement.predecessors = valueDrivableLaneSegmentsElementPredecessors; 84 : 1 : ::ad::map::lane::LaneIdList valueDrivableLaneSegmentsElementSuccessors; 85 : 1 : ::ad::map::lane::LaneId valueDrivableLaneSegmentsElementSuccessorsElement(1); 86 [ + - ]: 1 : valueDrivableLaneSegmentsElementSuccessors.resize(1, valueDrivableLaneSegmentsElementSuccessorsElement); 87 [ + - ]: 1 : valueDrivableLaneSegmentsElement.successors = valueDrivableLaneSegmentsElementSuccessors; 88 : 1 : ::ad::map::route::LaneInterval valueDrivableLaneSegmentsElementLaneInterval; 89 : 1 : ::ad::map::lane::LaneId valueDrivableLaneSegmentsElementLaneIntervalLaneId(1); 90 : 1 : valueDrivableLaneSegmentsElementLaneInterval.laneId = valueDrivableLaneSegmentsElementLaneIntervalLaneId; 91 : 1 : ::ad::physics::ParametricValue valueDrivableLaneSegmentsElementLaneIntervalStart(0.); 92 : 1 : valueDrivableLaneSegmentsElementLaneInterval.start = valueDrivableLaneSegmentsElementLaneIntervalStart; 93 : 1 : ::ad::physics::ParametricValue valueDrivableLaneSegmentsElementLaneIntervalEnd(0.); 94 : 1 : valueDrivableLaneSegmentsElementLaneInterval.end = valueDrivableLaneSegmentsElementLaneIntervalEnd; 95 : 1 : bool valueDrivableLaneSegmentsElementLaneIntervalWrongWay{true}; 96 : 1 : valueDrivableLaneSegmentsElementLaneInterval.wrongWay = valueDrivableLaneSegmentsElementLaneIntervalWrongWay; 97 : 1 : valueDrivableLaneSegmentsElement.laneInterval = valueDrivableLaneSegmentsElementLaneInterval; 98 : 1 : ::ad::map::route::RouteLaneOffset valueDrivableLaneSegmentsElementRouteLaneOffset( 99 : : std::numeric_limits<::ad::map::route::RouteLaneOffset>::lowest()); 100 : 1 : valueDrivableLaneSegmentsElement.routeLaneOffset = valueDrivableLaneSegmentsElementRouteLaneOffset; 101 [ + - ]: 1 : valueDrivableLaneSegments.resize(1, valueDrivableLaneSegmentsElement); 102 [ + - ]: 1 : value.drivableLaneSegments = valueDrivableLaneSegments; 103 : 1 : ::ad::map::route::SegmentCounter valueSegmentCountFromDestination( 104 : : std::numeric_limits<::ad::map::route::SegmentCounter>::lowest()); 105 : 1 : value.segmentCountFromDestination = valueSegmentCountFromDestination; 106 : 1 : ::ad::map::point::BoundingSphere valueBoundingSphere; 107 : 1 : ::ad::map::point::ECEFPoint valueBoundingSphereCenter; 108 : 1 : ::ad::map::point::ECEFCoordinate valueBoundingSphereCenterX(-6400000); 109 : 1 : valueBoundingSphereCenter.x = valueBoundingSphereCenterX; 110 : 1 : ::ad::map::point::ECEFCoordinate valueBoundingSphereCenterY(-6400000); 111 : 1 : valueBoundingSphereCenter.y = valueBoundingSphereCenterY; 112 : 1 : ::ad::map::point::ECEFCoordinate valueBoundingSphereCenterZ(-6400000); 113 : 1 : valueBoundingSphereCenter.z = valueBoundingSphereCenterZ; 114 : 1 : valueBoundingSphere.center = valueBoundingSphereCenter; 115 : 1 : ::ad::physics::Distance valueBoundingSphereRadius(-1e9); 116 : 1 : valueBoundingSphere.radius = valueBoundingSphereRadius; 117 : 1 : value.boundingSphere = valueBoundingSphere; 118 : : 119 : : // override member with data type value below input range minimum 120 : 1 : ::ad::map::point::BoundingSphere invalidInitializedMember; 121 : 1 : ::ad::map::point::ECEFPoint invalidInitializedMemberCenter; 122 : 1 : ::ad::map::point::ECEFCoordinate invalidInitializedMemberCenterX(-6400000 * 1.1); 123 : 1 : invalidInitializedMemberCenter.x = invalidInitializedMemberCenterX; 124 : 1 : invalidInitializedMember.center = invalidInitializedMemberCenter; 125 : 1 : value.boundingSphere = invalidInitializedMember; 126 [ + - - + : 1 : ASSERT_FALSE(withinValidInputRange(value)); - - - - - - - - ] 127 : : } 128 : : 129 : 2 : TEST(RoadSegmentValidInputRangeTests, testValidInputRangeBoundingSphereTooBig) 130 : : { 131 : 1 : ::ad::map::route::RoadSegment value; 132 : 1 : ::ad::map::route::LaneSegmentList valueDrivableLaneSegments; 133 : 1 : ::ad::map::route::LaneSegment valueDrivableLaneSegmentsElement; 134 : 1 : ::ad::map::lane::LaneId valueDrivableLaneSegmentsElementLeftNeighbor(1); 135 : 1 : valueDrivableLaneSegmentsElement.leftNeighbor = valueDrivableLaneSegmentsElementLeftNeighbor; 136 : 1 : ::ad::map::lane::LaneId valueDrivableLaneSegmentsElementRightNeighbor(1); 137 : 1 : valueDrivableLaneSegmentsElement.rightNeighbor = valueDrivableLaneSegmentsElementRightNeighbor; 138 : 1 : ::ad::map::lane::LaneIdList valueDrivableLaneSegmentsElementPredecessors; 139 : 1 : ::ad::map::lane::LaneId valueDrivableLaneSegmentsElementPredecessorsElement(1); 140 [ + - ]: 1 : valueDrivableLaneSegmentsElementPredecessors.resize(1, valueDrivableLaneSegmentsElementPredecessorsElement); 141 [ + - ]: 1 : valueDrivableLaneSegmentsElement.predecessors = valueDrivableLaneSegmentsElementPredecessors; 142 : 1 : ::ad::map::lane::LaneIdList valueDrivableLaneSegmentsElementSuccessors; 143 : 1 : ::ad::map::lane::LaneId valueDrivableLaneSegmentsElementSuccessorsElement(1); 144 [ + - ]: 1 : valueDrivableLaneSegmentsElementSuccessors.resize(1, valueDrivableLaneSegmentsElementSuccessorsElement); 145 [ + - ]: 1 : valueDrivableLaneSegmentsElement.successors = valueDrivableLaneSegmentsElementSuccessors; 146 : 1 : ::ad::map::route::LaneInterval valueDrivableLaneSegmentsElementLaneInterval; 147 : 1 : ::ad::map::lane::LaneId valueDrivableLaneSegmentsElementLaneIntervalLaneId(1); 148 : 1 : valueDrivableLaneSegmentsElementLaneInterval.laneId = valueDrivableLaneSegmentsElementLaneIntervalLaneId; 149 : 1 : ::ad::physics::ParametricValue valueDrivableLaneSegmentsElementLaneIntervalStart(0.); 150 : 1 : valueDrivableLaneSegmentsElementLaneInterval.start = valueDrivableLaneSegmentsElementLaneIntervalStart; 151 : 1 : ::ad::physics::ParametricValue valueDrivableLaneSegmentsElementLaneIntervalEnd(0.); 152 : 1 : valueDrivableLaneSegmentsElementLaneInterval.end = valueDrivableLaneSegmentsElementLaneIntervalEnd; 153 : 1 : bool valueDrivableLaneSegmentsElementLaneIntervalWrongWay{true}; 154 : 1 : valueDrivableLaneSegmentsElementLaneInterval.wrongWay = valueDrivableLaneSegmentsElementLaneIntervalWrongWay; 155 : 1 : valueDrivableLaneSegmentsElement.laneInterval = valueDrivableLaneSegmentsElementLaneInterval; 156 : 1 : ::ad::map::route::RouteLaneOffset valueDrivableLaneSegmentsElementRouteLaneOffset( 157 : : std::numeric_limits<::ad::map::route::RouteLaneOffset>::lowest()); 158 : 1 : valueDrivableLaneSegmentsElement.routeLaneOffset = valueDrivableLaneSegmentsElementRouteLaneOffset; 159 [ + - ]: 1 : valueDrivableLaneSegments.resize(1, valueDrivableLaneSegmentsElement); 160 [ + - ]: 1 : value.drivableLaneSegments = valueDrivableLaneSegments; 161 : 1 : ::ad::map::route::SegmentCounter valueSegmentCountFromDestination( 162 : : std::numeric_limits<::ad::map::route::SegmentCounter>::lowest()); 163 : 1 : value.segmentCountFromDestination = valueSegmentCountFromDestination; 164 : 1 : ::ad::map::point::BoundingSphere valueBoundingSphere; 165 : 1 : ::ad::map::point::ECEFPoint valueBoundingSphereCenter; 166 : 1 : ::ad::map::point::ECEFCoordinate valueBoundingSphereCenterX(-6400000); 167 : 1 : valueBoundingSphereCenter.x = valueBoundingSphereCenterX; 168 : 1 : ::ad::map::point::ECEFCoordinate valueBoundingSphereCenterY(-6400000); 169 : 1 : valueBoundingSphereCenter.y = valueBoundingSphereCenterY; 170 : 1 : ::ad::map::point::ECEFCoordinate valueBoundingSphereCenterZ(-6400000); 171 : 1 : valueBoundingSphereCenter.z = valueBoundingSphereCenterZ; 172 : 1 : valueBoundingSphere.center = valueBoundingSphereCenter; 173 : 1 : ::ad::physics::Distance valueBoundingSphereRadius(-1e9); 174 : 1 : valueBoundingSphere.radius = valueBoundingSphereRadius; 175 : 1 : value.boundingSphere = valueBoundingSphere; 176 : : 177 : : // override member with data type value above input range maximum 178 : 1 : ::ad::map::point::BoundingSphere invalidInitializedMember; 179 : 1 : ::ad::map::point::ECEFPoint invalidInitializedMemberCenter; 180 : 1 : ::ad::map::point::ECEFCoordinate invalidInitializedMemberCenterX(6400000 * 1.1); 181 : 1 : invalidInitializedMemberCenter.x = invalidInitializedMemberCenterX; 182 : 1 : invalidInitializedMember.center = invalidInitializedMemberCenter; 183 : 1 : value.boundingSphere = invalidInitializedMember; 184 [ + - - + : 1 : ASSERT_FALSE(withinValidInputRange(value)); - - - - - - - - ] 185 : : }