MCPcopy Create free account
hub / github.com/OpenStarbound/OpenStarbound / TEST

Function TEST

source/test/multi_table_test.cpp:7–41  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

5using namespace Star;
6
7TEST(MultiArrayTest, All) {
8 MultiArray<int, 2> table(10, 12);
9 table.forEach([](Array2S const& index, int& val) {
10 val = (index[0] + 1) * index[1];
11 });
12
13 EXPECT_EQ(table(3, 4), 16);
14 EXPECT_EQ(table(5, 2), 12);
15 EXPECT_EQ(table(0, 9), 9);
16 EXPECT_EQ(table(8, 1), 9);
17 EXPECT_EQ(table(0, 1), 1);
18 EXPECT_EQ(table(8, 9), 81);
19
20 MultiArray<int, 3> table3(5, 6, 7);
21 table3.forEach([](Array3S const& index, int& val) {
22 val = index[0] + index[1] + index[2];
23 });
24
25 EXPECT_EQ(table3(0, 0, 0), 0);
26 EXPECT_EQ(table3(1, 1, 0), 2);
27 EXPECT_EQ(table3(2, 0, 2), 4);
28 EXPECT_EQ(table3(1, 1, 1), 3);
29 EXPECT_EQ(table3(0, 1, 0), 1);
30 EXPECT_EQ(table3(2, 2, 2), 6);
31 EXPECT_EQ(table3(3, 3, 3), 9);
32 EXPECT_EQ(table3(4, 4, 4), 12);
33
34 table3.forEach({3, 3, 3}, {2, 2, 2}, [](Array3S const&, int& val) {
35 val = 42;
36 });
37
38 EXPECT_EQ(table3(2, 2, 2), 6);
39 EXPECT_EQ(table3(3, 3, 4), 42);
40 EXPECT_EQ(table3(4, 4, 4), 42);
41}
42
43TEST(MultiTableTest, All) {
44 MultiTable2F table;

Callers

nothing calls this directly

Calls 7

setRangesMethod · 0.80
forEachMethod · 0.45
setInterpolationModeMethod · 0.45
setBoundModeMethod · 0.45
evalMethod · 0.45
interpolateMethod · 0.45
getMethod · 0.45

Tested by

no test coverage detected