COIN-OR::LEMON - Graph Library

source: lemon-0.x/src/test/xy_test.cc @ 727:aada518af30f

Last change on this file since 727:aada518af30f was 727:aada518af30f, checked in by Alpar Juttner, 16 years ago
  • Better Makefile.am. (I hope.)
  • Some more tests
File size: 1.3 KB
RevLine 
[542]1#include <hugo/xy.h>
[201]2#include <iostream>
[727]3#include "test_tools.h"
4
[201]5using namespace std;
[207]6using namespace hugo;
[201]7int main()
8{
[207]9
[518]10  cout << "Testing classes xy and boundingbox." << endl;
[201]11
[513]12        typedef xy<int> XY;
13       
14        XY seged;
15        XY a(1,2);
16        XY b(3,4);
[201]17
[513]18        seged = a+b;
[727]19        check(seged.x==4 && seged.y==6, "Wrong vector addition");
[201]20
[513]21        seged = a-b;
[516]22        check(seged.x==-2 && seged.y==-2, "a-b");
[513]23
[727]24        check(a.normSquare()==5,"Wrong norm calculation");
[516]25        check(a*b==11, "a*b");
[513]26
27        int l=2;
28        seged = a*l;
[516]29        check(seged.x==2 && seged.y==4, "a*l");
[513]30
31        seged = b/l;
[516]32        check(seged.x==1 && seged.y==2, "b/l");
[513]33
34        typedef BoundingBox<int> BB;
35        BB doboz1;
[516]36        check(doboz1.empty(), "empty? Should be.");
37       
[513]38        doboz1 += a;
[516]39        check(!doboz1.empty(), "empty? Should not be.");
[513]40        doboz1 += b;
41
[516]42        check(doboz1.bottomLeft().x==1 &&
43              doboz1.bottomLeft().y==2 &&
44              doboz1.topRight().x==3 &&
45              doboz1.topRight().y==4, 
46              "added points to box");
47
48        seged.x=2;seged.y=3;
[727]49        check(doboz1.inside(seged),"Inside? It should be.");
[516]50
51        seged.x=1;seged.y=3;
[727]52        check(doboz1.inside(seged),"Inside? It should be.");
[516]53
54        seged.x=0;seged.y=3;
[727]55        check(!doboz1.inside(seged),"Inside? It should not be.");
[516]56
57        BB doboz2(seged);
[727]58        check(!doboz2.empty(),
59              "empty? Should not be. Constructed from 1 point.");
[516]60
61        doboz2 += doboz1;
[727]62        check(doboz2.inside(seged),
63              "Not inside? It should be. Incremented a box with an other.");
[201]64}
Note: See TracBrowser for help on using the repository browser.