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

Function TEST

tests/cpp/types/MultiLineString_test.cpp:10–69  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

8#include "fields2cover/types.h"
9
10TEST(fields2cover_types_multilinestring, init) {
11 F2CMultiLineString lines;
12 for (int i = 0; i < 3; ++i) {
13 F2CLineString line;
14 for (int j = i; j < 5; ++j) {
15 line.addPoint(F2CPoint(i, j, -i * j));
16 }
17 lines.addGeometry(line);
18 }
19
20 int i = 0;
21 for (const F2CLineString& l : lines) {
22 for (int j = 0; j < 5 - i; ++j) {
23 EXPECT_EQ(l.getX(j), i);
24 EXPECT_EQ(l.getY(j), j+i);
25 EXPECT_EQ(l.getZ(j), -i * (j + i));
26 }
27 ++i;
28 }
29
30 lines *= 2.0;
31
32 i = 0;
33 for (auto&& l : lines) {
34 for (int j = 0; j < 5-i; ++j) {
35 EXPECT_EQ(l.getX(j), 2*i);
36 EXPECT_EQ(l.getY(j), 2*(j+i));
37 EXPECT_EQ(l.getZ(j), -2*i * (j+i));
38 }
39 ++i;
40 }
41 const auto const_lines = lines;
42 i = 0;
43 for (auto&& l : const_lines) {
44 for (int j = 0; j < 5-i; ++j) {
45 EXPECT_EQ(l.getX(j), 2*i);
46 EXPECT_EQ(l.getY(j), 2*(j+i));
47 EXPECT_EQ(l.getZ(j), -2*i * (j+i));
48 }
49 ++i;
50 }
51 i = 0;
52 for (F2CLineString& l : lines) {
53 for (int j = 0; j < 5-i; ++j) {
54 EXPECT_EQ(l.getX(j), 2*i);
55 EXPECT_EQ(l.getY(j), 2*(j+i));
56 EXPECT_EQ(l.getZ(j), -2*i * (j+i));
57 }
58 ++i;
59 }
60
61 EXPECT_EQ(lines.size(), 3);
62 F2CMultiLineString lines2 = lines.clone();
63 EXPECT_EQ(lines.size(), 3);
64 EXPECT_EQ(lines2.size(), 3);
65
66 lines.addGeometry(lines2);
67 EXPECT_EQ(lines.size(), 6);

Callers

nothing calls this directly

Calls 13

getMethod · 0.80
addPointMethod · 0.45
addGeometryMethod · 0.45
getXMethod · 0.45
getYMethod · 0.45
getZMethod · 0.45
sizeMethod · 0.45
cloneMethod · 0.45
getGeometryMethod · 0.45
lengthMethod · 0.45
addRingMethod · 0.45
appendMethod · 0.45

Tested by

no test coverage detected