line_iterator_test.cpp
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2012, Willow Garage, Inc.
3  * All rights reserved.
4  *
5  * Redistribution and use in source and binary forms, with or without
6  * modification, are permitted provided that the following conditions are met:
7  *
8  * * Redistributions of source code must retain the above copyright
9  * notice, this list of conditions and the following disclaimer.
10  * * Redistributions in binary form must reproduce the above copyright
11  * notice, this list of conditions and the following disclaimer in the
12  * documentation and/or other materials provided with the distribution.
13  * * Neither the name of the Willow Garage, Inc. nor the names of its
14  * contributors may be used to endorse or promote products derived from
15  * this software without specific prior written permission.
16  *
17  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
18  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
19  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
20  * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
21  * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
22  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
23  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
24  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
25  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
26  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
27  * POSSIBILITY OF SUCH DAMAGE.
28  */
29 
30 #include <gtest/gtest.h>
31 
33 
34 TEST( LineIterator, south )
35 {
36  base_local_planner::LineIterator line( 1, 2, 1, 4 );
37  EXPECT_TRUE( line.isValid() );
38  EXPECT_EQ( 1, line.getX() );
39  EXPECT_EQ( 2, line.getY() );
40  line.advance();
41  EXPECT_TRUE( line.isValid() );
42  EXPECT_EQ( 1, line.getX() );
43  EXPECT_EQ( 3, line.getY() );
44  line.advance();
45  EXPECT_TRUE( line.isValid() );
46  EXPECT_EQ( 1, line.getX() );
47  EXPECT_EQ( 4, line.getY() );
48  line.advance();
49  EXPECT_FALSE( line.isValid() );
50 }
51 
52 TEST( LineIterator, north_north_west )
53 {
54  base_local_planner::LineIterator line( 0, 0, -2, -4 );
55  EXPECT_TRUE( line.isValid() );
56  EXPECT_EQ( 0, line.getX() );
57  EXPECT_EQ( 0, line.getY() );
58  line.advance();
59  EXPECT_TRUE( line.isValid() );
60  EXPECT_EQ( -1, line.getX() );
61  EXPECT_EQ( -1, line.getY() );
62  line.advance();
63  EXPECT_TRUE( line.isValid() );
64  EXPECT_EQ( -1, line.getX() );
65  EXPECT_EQ( -2, line.getY() );
66  line.advance();
67  EXPECT_TRUE( line.isValid() );
68  EXPECT_EQ( -2, line.getX() );
69  EXPECT_EQ( -3, line.getY() );
70  line.advance();
71  EXPECT_TRUE( line.isValid() );
72  EXPECT_EQ( -2, line.getX() );
73  EXPECT_EQ( -4, line.getY() );
74  line.advance();
75  EXPECT_FALSE( line.isValid() );
76 }
77 
78 int main( int argc, char **argv ) {
79  testing::InitGoogleTest( &argc, argv );
80  return RUN_ALL_TESTS();
81 }
int main(int argc, char **argv)
TEST(LineIterator, south)


base_local_planner
Author(s): Eitan Marder-Eppstein, Eric Perko, contradict@gmail.com
autogenerated on Thu Jan 21 2021 04:05:49