File: HashGrid3NeighborBoxItem_test.C

package info (click to toggle)
ball 1.4.3~beta1-3
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 318,984 kB
  • sloc: cpp: 346,579; ansic: 4,097; python: 2,664; yacc: 1,778; lex: 1,099; xml: 964; sh: 688; sql: 316; awk: 118; makefile: 108
file content (53 lines) | stat: -rw-r--r-- 1,144 bytes parent folder | download | duplicates (8)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
// -*- Mode: C++; tab-width: 2; -*-
// vi: set ts=2:
//

#include <set>

#include <BALL/CONCEPT/classTest.h>

///////////////////////////

#include <BALL/DATATYPE/hashGrid.h>

///////////////////////////

START_TEST(HashGrid3::NeighborBoxItem)

/////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////

using namespace BALL;
//BALL::HashGridBox3::NeighbourBoxItem

CHECK(HashGrid3 boxNeighbours)
	HashGrid3<int> grid(Vector3(0.0f, 0.0f, 0.0f), Vector3(2.0f, 2.0f, 2.0f), 1.0f);
	TEST_EQUAL(grid.getSize(), 27);

	std::set<HashGridBox3<int>*> boxes;

	for(int i = 0; i < 3; ++i)
	{
		for(int j = 0; j < 3; ++j)
		{
			for(int k = 0; k < 3; ++k)
			{
				boxes.insert(grid.getBox(i, j, k));
			}
		}
	}

	TEST_EQUAL(boxes.size(), (size_t)27);

	for(HashGridBox3<int>::BoxIterator it = grid.getBox(1,1,1)->beginBox(); +it; ++it)
	{
		TEST_EQUAL(boxes.find(&*it) != boxes.end(), true);
		boxes.erase(&*it);
	}

	TEST_EQUAL(boxes.size(), 0);
RESULT

////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////
END_TEST