TEST(MergeTest, test4) { using namespace pdal; PipelineManager mgr; mgr.readPipeline(Support::configuredpath("filters/merge.json")); mgr.execute(); PointViewSet viewSet = mgr.views(); EXPECT_EQ(1u, viewSet.size()); PointViewPtr view = *viewSet.begin(); EXPECT_EQ(2130u, view->size()); }
TEST(MergeTest, test2) { using namespace pdal; PipelineManager mgr; PipelineReader specReader(mgr); specReader.readPipeline(Support::configuredpath("filters/merge2.xml")); mgr.execute(); PointViewSet viewSet = mgr.views(); EXPECT_EQ(viewSet.size(), 1u); PointViewPtr view = *viewSet.begin(); EXPECT_EQ(view->size(), 2130u); }
TEST_F(PythonFilterTest, pipelineJSON) { PipelineManager manager; manager.readPipeline( Support::configuredpath("plang/programmable-update-y-dims.json")); manager.execute(); PointViewSet viewSet = manager.views(); EXPECT_EQ(viewSet.size(), 1u); PointViewPtr view = *viewSet.begin(); for (PointId idx = 0; idx < 10; ++idx) { int32_t y = view->getFieldAs<int32_t>(Dimension::Id::Y, idx); EXPECT_EQ(y, 314); } }
TEST(SortFilterTest, pipeline) { PipelineManager mgr; PipelineReader reader(mgr); reader.readPipeline(Support::configuredpath("filters/sort.xml")); mgr.execute(); PointBufferSet pbSet = mgr.buffers(); EXPECT_EQ(pbSet.size(), 1u); PointBufferPtr buf = *pbSet.begin(); for (PointId i = 1; i < buf->size(); ++i) { double d1 = buf->getFieldAs<double>(Dimension::Id::X, i - 1); double d2 = buf->getFieldAs<double>(Dimension::Id::X, i); EXPECT_TRUE(d1 <= d2); } }
// Make sure we handle repeated options properly TEST(json, issue_1941) { PipelineManager manager; std::string file; file = Support::configuredpath("pipeline/range_multi_limits.json"); manager.readPipeline(file); EXPECT_EQ(manager.execute(), (point_count_t)5); const PointViewSet& s = manager.views(); EXPECT_EQ(s.size(), 1U); PointViewPtr view = *s.begin(); EXPECT_EQ(view->getFieldAs<int>(Dimension::Id::X, 0), 3); EXPECT_EQ(view->getFieldAs<int>(Dimension::Id::X, 1), 4); EXPECT_EQ(view->getFieldAs<int>(Dimension::Id::X, 2), 5); EXPECT_EQ(view->getFieldAs<int>(Dimension::Id::X, 3), 8); EXPECT_EQ(view->getFieldAs<int>(Dimension::Id::X, 4), 9); PipelineManager manager2; file = Support::configuredpath("pipeline/range_bad_limits.json"); EXPECT_THROW(manager2.readPipeline(file), pdal_error); }
TEST(MergeTest, test3) { using namespace pdal; PipelineManager mgr; mgr.readPipeline(Support::configuredpath("filters/merge3.xml")); std::ostringstream oss; std::ostream& o = std::clog; auto ctx = Utils::redirect(o, oss); mgr.execute(); std::string s = oss.str(); EXPECT_TRUE(s.find("inconsistent spatial references") != s.npos); Utils::restore(o, ctx); PointViewSet viewSet = mgr.views(); EXPECT_EQ(1u, viewSet.size()); PointViewPtr view = *viewSet.begin(); EXPECT_EQ(2130u, view->size()); }