Changes in test/dim_test.cc [14:8685efdef52f:8:a1b1d672f37a] in lemon-main
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
test/dim_test.cc
r14 r8 23 23 using namespace std; 24 24 using namespace lemon; 25 26 25 int main() 27 26 { 28 cout << "Testing classes 'dim2::Point' and 'dim2::BoundingBox'." << endl; 27 28 cout << "Testing classes `dim2::Point' and `dim2::BoundingBox'." << endl; 29 29 30 30 typedef dim2::Point<int> Point; 31 32 Point p;33 check( p.size()==2, "Wrong vector initialization.");31 32 Point seged; 33 check(seged.size()==2, "Wrong vector addition"); 34 34 35 35 Point a(1,2); 36 36 Point b(3,4); 37 check(a[0]==1 && a[1]==2, "Wrong vector initialization.");38 37 39 p = a+b; 40 check(p.x==4 && p.y==6, "Wrong vector addition."); 38 check(a[0]==1 && a[1]==2, "Wrong vector addition"); 41 39 42 p = a-b;43 check( p.x==-2 && p.y==-2, "Wrong vector subtraction.");40 seged = a+b; 41 check(seged.x==4 && seged.y==6, "Wrong vector addition"); 44 42 45 check(a.normSquare()==5,"Wrong vector norm calculation."); 46 check(a*b==11, "Wrong vector scalar product."); 43 seged = a-b; 44 check(seged.x==-2 && seged.y==-2, "a-b"); 45 46 check(a.normSquare()==5,"Wrong norm calculation"); 47 check(a*b==11, "a*b"); 47 48 48 49 int l=2; 49 p= a*l;50 check( p.x==2 && p.y==4, "Wrong vector multiplication by a scalar.");50 seged = a*l; 51 check(seged.x==2 && seged.y==4, "a*l"); 51 52 52 p= b/l;53 check( p.x==1 && p.y==2, "Wrong vector division by a scalar.");53 seged = b/l; 54 check(seged.x==1 && seged.y==2, "b/l"); 54 55 55 56 typedef dim2::BoundingBox<int> BB; 56 BB box1; 57 check(box1.empty(), "It should be empty."); 57 BB doboz1; 58 check(doboz1.empty(), "It should be empty."); 59 60 doboz1.add(a); 61 check(!doboz1.empty(), "It should not be empty."); 62 doboz1.add(b); 58 63 59 box1.add(a); 60 check(!box1.empty(), "It should not be empty."); 61 box1.add(b); 64 check(doboz1.bottomLeft().x==1 && 65 doboz1.bottomLeft().y==2 && 66 doboz1.topRight().x==3 && 67 doboz1.topRight().y==4, 68 "added points to box"); 62 69 63 check(box1.bottomLeft().x==1 && 64 box1.bottomLeft().y==2 && 65 box1.topRight().x==3 && 66 box1.topRight().y==4, 67 "Wrong addition of points to box."); 70 seged.x=2;seged.y=3; 71 check(doboz1.inside(seged),"It should be inside."); 68 72 69 p.x=2; p.y=3;70 check( box1.inside(p),"It should be inside.");73 seged.x=1;seged.y=3; 74 check(doboz1.inside(seged),"It should be inside."); 71 75 72 p.x=1; p.y=3;73 check( box1.inside(p), "It shouldbe inside.");76 seged.x=0;seged.y=3; 77 check(!doboz1.inside(seged),"It should not be inside."); 74 78 75 p.x=0; p.y=3; 76 check(!box1.inside(p), "It should not be inside."); 77 78 BB box2(p); 79 check(!box2.empty(), 79 BB doboz2(seged); 80 check(!doboz2.empty(), 80 81 "It should not be empty. Constructed from 1 point."); 81 82 82 box2.add(box1);83 check( box2.inside(p),83 doboz2.add(doboz1); 84 check(doboz2.inside(seged), 84 85 "It should be inside. Incremented a box with another one."); 85 86 return 0;87 86 }
Note: See TracChangeset
for help on using the changeset viewer.