source: src/Tesselation/unittests/Tesselation_BoundaryTriangleUnitTest.hpp@ 97dff0

Last change on this file since 97dff0 was c1d78c, checked in by Frederik Heber <heber@…>, 13 years ago

FIX: Tesselation_BoundaryTriangleUnitTest did not properly removed temporary TesselPoints.

  • although we did remove them correctly in teardown(), in intermediate removals in functions we did so only via "delete triangle". This kept the TesselPoints especially in the static Observable map which causes memory corruption on program exit.
  • Property mode set to 100644
File size: 1.8 KB
Line 
1/*
2 * Tesselation_BoundaryTriangleUnitTest.hpp
3 *
4 * Created on: Jan 13, 2010
5 * Author: heber
6 */
7
8#ifndef TESSELATION_BOUNDARYTRIANGLEUNITTEST_HPP_
9#define TESSELATION_BOUNDARYTRIANGLEUNITTEST_HPP_
10
11// include config.h
12#ifdef HAVE_CONFIG_H
13#include <config.h>
14#endif
15
16
17/*********************************************** includes ***********************************/
18
19#include <cppunit/extensions/HelperMacros.h>
20
21#include <vector>
22
23#include "LinearAlgebra/Vector.hpp"
24#include "LinkedCell/linkedcell.hpp"
25#include "Tesselation/tesselation.hpp"
26
27class TesselPoint;
28
29/********************************************** Test classes **************************************/
30
31class TesselationBoundaryTriangleTest : public CppUnit::TestFixture
32{
33 CPPUNIT_TEST_SUITE( TesselationBoundaryTriangleTest) ;
34 CPPUNIT_TEST ( IsInsideTriangleTest );
35 CPPUNIT_TEST ( IsInsideTriangle_specificTest );
36 CPPUNIT_TEST ( GetClosestPointInsideTriangleTest );
37 CPPUNIT_TEST ( GetClosestPointInsideTriangle_specificTest );
38 CPPUNIT_TEST ( GetClosestPointOnPlaneTest );
39 CPPUNIT_TEST ( GetClosestPointOffPlaneTest );
40 CPPUNIT_TEST_SUITE_END();
41
42public:
43 void setUp();
44 void tearDown();
45 void IsInsideTriangleTest();
46 void IsInsideTriangle_specificTest();
47 void GetClosestPointInsideTriangleTest();
48 void GetClosestPointInsideTriangle_specificTest();
49 void GetClosestPointOnPlaneTest();
50 void GetClosestPointOffPlaneTest();
51
52private:
53 void createTriangle(const std::vector<Vector> &Vectors);
54 void removeTriangle();
55
56 static const double SPHERERADIUS;
57
58 class BoundaryTriangleSet *triangle;
59 class BoundaryLineSet *lines[3];
60 class BoundaryPointSet *points[3];
61 class TesselPoint *tesselpoints[3];
62 TesselPointSTLList Corners;
63};
64
65
66#endif /* TESSELATION_BOUNDARYTRIANGLEUNITTEST_HPP_ */
Note: See TracBrowser for help on using the repository browser.