BoundaryTest.cpp File Reference

#include <gtest/gtest.h>
#include <utils/geom/Boundary.h>

Go to the source code of this file.

Functions

 TEST (Boundary, test_method_moveby)
 TEST (Boundary, test_method_flipY)
 TEST (Boundary, test_method_partialWithin)
 TEST (Boundary, test_method_crosses)
 TEST (Boundary, test_method_overlapsWith)
 TEST (Boundary, test_method_around)
 TEST (Boundary, test_method_getWidthHeight)
 TEST (Boundary, test_method_getCenter)
 TEST (Boundary, test_method_add_multiple)
 TEST (Boundary, test_method_add)


Function Documentation

TEST ( Boundary  ,
test_method_moveby   
)

Definition at line 94 of file BoundaryTest.cpp.

References Boundary::moveby(), Boundary::xmax(), Boundary::xmin(), Boundary::ymax(), and Boundary::ymin().

00094                                    {
00095     Boundary *bound = new Boundary(1,2,3,6);
00096     bound->moveby(2.5,-3.5);
00097     EXPECT_FLOAT_EQ(bound->xmax(), 5.5);
00098     EXPECT_FLOAT_EQ(bound->xmin(), 3.5);
00099     EXPECT_FLOAT_EQ(bound->ymax(), 2.5);
00100     EXPECT_FLOAT_EQ(bound->ymin(), -1.5);
00101 }

TEST ( Boundary  ,
test_method_flipY   
)

Definition at line 84 of file BoundaryTest.cpp.

References Boundary::flipY(), Boundary::xmax(), Boundary::xmin(), Boundary::ymax(), and Boundary::ymin().

00084                                   {
00085     Boundary *bound = new Boundary(1,2,3,6);
00086     bound->flipY();
00087     EXPECT_FLOAT_EQ(bound->xmax(), 3);
00088     EXPECT_FLOAT_EQ(bound->xmin(), 1);
00089     EXPECT_FLOAT_EQ(bound->ymax(), -2);
00090     EXPECT_FLOAT_EQ(bound->ymin(), -6);
00091 }

TEST ( Boundary  ,
test_method_partialWithin   
)

Definition at line 75 of file BoundaryTest.cpp.

References Boundary::partialWithin().

00075                                           {
00076     Boundary *bound = new Boundary(1,2,3,6);
00077     EXPECT_TRUE(bound->partialWithin(Boundary(1,2,1,2)));
00078     EXPECT_FALSE(bound->partialWithin(Boundary(10,17,13,16)));
00079     EXPECT_TRUE(bound->partialWithin(Boundary(1,2,3,6)));   
00080     EXPECT_TRUE(bound->partialWithin(Boundary(4,2,5,7),1));
00081 }

TEST ( Boundary  ,
test_method_crosses   
)

Definition at line 66 of file BoundaryTest.cpp.

References Boundary::crosses().

00066                                     {
00067     Boundary *bound = new Boundary(1,2,3,6);
00068     EXPECT_TRUE(bound->crosses(Position2D(3,2),Position2D(4,2)));
00069     EXPECT_TRUE(bound->crosses(Position2D(2,1),Position2D(0,3)));
00070     EXPECT_TRUE(bound->crosses(Position2D(1,2),Position2D(3,6)));
00071     EXPECT_FALSE(bound->crosses(Position2D(0,0),Position2D(0,8)));
00072 }

TEST ( Boundary  ,
test_method_overlapsWith   
)

Definition at line 57 of file BoundaryTest.cpp.

References Boundary::overlapsWith().

00057                                          {
00058     Boundary *bound = new Boundary(1,2,3,6);
00059     EXPECT_FALSE(bound->overlapsWith(Boundary(10,17,13,16)));
00060     EXPECT_TRUE(bound->overlapsWith(Boundary(-1,-7,2,4)));
00061     EXPECT_TRUE(bound->overlapsWith(Boundary(1,2,3,6)));    
00062     EXPECT_TRUE(bound->overlapsWith(Boundary(4,2,5,7),1));
00063 }

TEST ( Boundary  ,
test_method_around   
)

Definition at line 48 of file BoundaryTest.cpp.

References Boundary::around().

00048                                    {
00049     Boundary *bound = new Boundary(1,2,3,6);
00050     EXPECT_TRUE(bound->around(Position2D(2,4)));
00051     EXPECT_FALSE(bound->around(Position2D(0,4)));
00052     EXPECT_FALSE(bound->around(Position2D(2,7)));
00053     EXPECT_TRUE(bound->around(Position2D(0,7),2));
00054 }

TEST ( Boundary  ,
test_method_getWidthHeight   
)

Definition at line 41 of file BoundaryTest.cpp.

References Boundary::getHeight(), and Boundary::getWidth().

00041                                            {
00042     Boundary *bound = new Boundary(-2,-4,4,8);
00043     EXPECT_FLOAT_EQ(bound->getHeight(), 12);
00044     EXPECT_FLOAT_EQ(bound->getWidth(), 6);
00045 }

TEST ( Boundary  ,
test_method_getCenter   
)

Definition at line 33 of file BoundaryTest.cpp.

References Boundary::getCenter(), Position2D::x(), and Position2D::y().

00033                                       {
00034     Boundary *bound = new Boundary(-2,-4,4,8);
00035     Position2D pos = bound->getCenter();
00036     EXPECT_FLOAT_EQ(pos.x(), 1);
00037     EXPECT_FLOAT_EQ(pos.y(), 2);
00038 }

TEST ( Boundary  ,
test_method_add_multiple   
)

Definition at line 21 of file BoundaryTest.cpp.

References Boundary::add(), Boundary::xmax(), Boundary::xmin(), Boundary::ymax(), and Boundary::ymin().

00021                                          {
00022     Boundary *bound = new Boundary();
00023     bound->add(-1,-2);
00024     bound->add(3,5);
00025     bound->add(5,8);
00026     EXPECT_FLOAT_EQ(bound->xmax(), 5);
00027     EXPECT_FLOAT_EQ(bound->xmin(), -1);
00028     EXPECT_FLOAT_EQ(bound->ymax(), 8);
00029     EXPECT_FLOAT_EQ(bound->ymin(), -2);
00030 }

TEST ( Boundary  ,
test_method_add   
)

Definition at line 11 of file BoundaryTest.cpp.

References Boundary::add(), Boundary::xmax(), Boundary::xmin(), Boundary::ymax(), and Boundary::ymin().

00011                                 {
00012     Boundary *bound = new Boundary();
00013     bound->add(1,2);
00014     EXPECT_FLOAT_EQ(bound->xmax(), 1);
00015     EXPECT_FLOAT_EQ(bound->xmin(), 1);
00016     EXPECT_FLOAT_EQ(bound->ymax(), 2);
00017     EXPECT_FLOAT_EQ(bound->ymin(), 2);
00018 }


Generated on Wed May 5 00:06:37 2010 for Sumo - Simulation of Urban MObility by  doxygen 1.5.6