MCPcopy Create free account
hub / github.com/PDAL/PDAL / exec3

Function exec3

test/unit/WhereTest.cpp:141–184  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

139}
140
141void exec3(const std::string& where, size_t expKeep, size_t expViews,
142 Stage::WhereMergeMode mm = Stage::WhereMergeMode::Auto)
143{
144 StageFactory factory;
145
146 Stage *r = factory.createStage("readers.faux");
147 Options ro;
148 ro.add("count", 100);
149 ro.add("bounds", BOX3D(0, 0, 100, 99, 9.9, 199));
150 ro.add("mode", "ramp");
151 r->setOptions(ro);
152
153 class TestFilter : public Filter
154 {
155 std::string getName() const
156 { return "filters.test"; }
157
158 PointViewSet run(PointViewPtr v)
159 {
160 g_count = v->size();
161 PointViewSet s;
162 s.insert(v);
163 s.insert(v->makeNew());
164 return s;
165 }
166 };
167
168 TestFilter f;
169 Options fo;
170 fo.add("where", where);
171 fo.add("where_merge", mm);
172 f.setOptions(fo);
173 f.setInput(*r);
174
175 PointTable t;
176 f.prepare(t);
177 PointViewSet s = f.execute(t);
178 EXPECT_EQ(s.size(), expViews);
179 size_t total = 0;
180 for (auto vp : s)
181 total += vp->size();
182 EXPECT_EQ(total, 100u);
183 EXPECT_EQ(g_count, expKeep);
184}
185
186void exec4(const std::string& where, size_t expKeep, size_t expViews,
187 Stage::WhereMergeMode mm = Stage::WhereMergeMode::Auto)

Callers 1

TESTFunction · 0.85

Calls 7

createStageMethod · 0.80
setOptionsMethod · 0.80
BOX3DClass · 0.70
addMethod · 0.45
prepareMethod · 0.45
executeMethod · 0.45
sizeMethod · 0.45

Tested by

no test coverage detected