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

Function exec4

test/unit/WhereTest.cpp:186–229  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

184}
185
186void exec4(const std::string& where, size_t expKeep, size_t expViews,
187 Stage::WhereMergeMode mm = Stage::WhereMergeMode::Auto)
188{
189 StageFactory factory;
190
191 Stage *r = factory.createStage("readers.faux");
192 Options ro;
193 ro.add("count", 100);
194 ro.add("bounds", BOX3D(0, 0, 100, 99, 9.9, 199));
195 ro.add("mode", "ramp");
196 r->setOptions(ro);
197
198 class TestWriter : public NoFilenameWriter
199 {
200 std::string getName() const
201 { return "writers.test"; }
202
203 PointViewSet run(PointViewPtr v)
204 {
205 g_count = v->size();
206 PointViewSet s;
207 s.insert(v);
208 s.insert(v->makeNew());
209 return s;
210 }
211 };
212
213 TestWriter w;
214 Options wo;
215 wo.add("where", where);
216 wo.add("where_merge", mm);
217 w.setOptions(wo);
218 w.setInput(*r);
219
220 PointTable t;
221 w.prepare(t);
222 PointViewSet s = w.execute(t);
223 EXPECT_EQ(s.size(), expViews);
224 size_t total = 0;
225 for (auto vp : s)
226 total += vp->size();
227 EXPECT_EQ(total, 100u);
228 EXPECT_EQ(g_count, expKeep);
229}
230
231void exec5(const std::string& where, size_t expKeep)
232{

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