diff --git a/tesseract_task_composer/core/include/tesseract_task_composer/core/task_composer_input.h b/tesseract_task_composer/core/include/tesseract_task_composer/core/task_composer_input.h index a1217aabb2..0e4036d4e8 100644 --- a/tesseract_task_composer/core/include/tesseract_task_composer/core/task_composer_input.h +++ b/tesseract_task_composer/core/include/tesseract_task_composer/core/task_composer_input.h @@ -52,6 +52,7 @@ struct TaskComposerInput TaskComposerInput(TaskComposerProblem::UPtr problem); TaskComposerInput(const TaskComposerInput&) = delete; + TaskComposerInput(TaskComposerInput&&) noexcept = delete; TaskComposerInput& operator=(const TaskComposerInput&) = delete; TaskComposerInput& operator=(TaskComposerInput&&) = delete; virtual ~TaskComposerInput() = default; diff --git a/tesseract_task_composer/core/src/task_composer_node.cpp b/tesseract_task_composer/core/src/task_composer_node.cpp index e10ef29cf7..b410767361 100644 --- a/tesseract_task_composer/core/src/task_composer_node.cpp +++ b/tesseract_task_composer/core/src/task_composer_node.cpp @@ -47,7 +47,7 @@ TaskComposerNode::TaskComposerNode(std::string name, TaskComposerNodeType type, } TaskComposerNode::TaskComposerNode(std::string name, TaskComposerNodeType type, const YAML::Node& config) - : TaskComposerNode::TaskComposerNode(name, type) + : TaskComposerNode::TaskComposerNode(std::move(name), type) { try { diff --git a/tesseract_task_composer/core/src/task_composer_pipeline.cpp b/tesseract_task_composer/core/src/task_composer_pipeline.cpp index 7942df1d76..6a012cfcbd 100644 --- a/tesseract_task_composer/core/src/task_composer_pipeline.cpp +++ b/tesseract_task_composer/core/src/task_composer_pipeline.cpp @@ -35,7 +35,7 @@ TESSERACT_COMMON_IGNORE_WARNINGS_POP namespace tesseract_planning { -TaskComposerPipeline::TaskComposerPipeline(std::string name) : TaskComposerPipeline(name, true) {} +TaskComposerPipeline::TaskComposerPipeline(std::string name) : TaskComposerPipeline(std::move(name), true) {} TaskComposerPipeline::TaskComposerPipeline(std::string name, bool conditional) : TaskComposerGraph(std::move(name), TaskComposerNodeType::PIPELINE, conditional) { diff --git a/tesseract_task_composer/core/src/task_composer_task.cpp b/tesseract_task_composer/core/src/task_composer_task.cpp index a3bfe1aaab..8c7519a010 100644 --- a/tesseract_task_composer/core/src/task_composer_task.cpp +++ b/tesseract_task_composer/core/src/task_composer_task.cpp @@ -34,7 +34,7 @@ TESSERACT_COMMON_IGNORE_WARNINGS_POP namespace tesseract_planning { -TaskComposerTask::TaskComposerTask(std::string name) : TaskComposerTask(name, true) {} +TaskComposerTask::TaskComposerTask(std::string name) : TaskComposerTask(std::move(name), true) {} TaskComposerTask::TaskComposerTask(std::string name, bool conditional) : TaskComposerNode(std::move(name), TaskComposerNodeType::TASK, conditional) { diff --git a/tesseract_task_composer/test/tesseract_task_composer_core_unit.cpp b/tesseract_task_composer/test/tesseract_task_composer_core_unit.cpp index ef87fb5bf5..1a3960c8f4 100644 --- a/tesseract_task_composer/test/tesseract_task_composer_core_unit.cpp +++ b/tesseract_task_composer/test/tesseract_task_composer_core_unit.cpp @@ -157,7 +157,7 @@ TEST(TesseractTaskComposerCoreUnit, TaskComposerNodeTests) // NOLINT EXPECT_TRUE(node->getInputKeys().empty()); EXPECT_TRUE(node->getOutputKeys().empty()); EXPECT_FALSE(node->isConditional()); - EXPECT_NO_THROW(node->dump(os)); + EXPECT_NO_THROW(node->dump(os)); // NOLINT // Setters std::string name{ "TaskComposerNodeTests" }; @@ -171,7 +171,7 @@ TEST(TesseractTaskComposerCoreUnit, TaskComposerNodeTests) // NOLINT EXPECT_EQ(node->getInputKeys(), input_keys); EXPECT_EQ(node->getOutputKeys(), output_keys); EXPECT_EQ(node->isConditional(), true); - EXPECT_NO_THROW(node->dump(os)); + EXPECT_NO_THROW(node->dump(os)); // NOLINT // Utils std::map rename_input_keys{ { "I1", "I3" }, { "I2", "I4" } }; @@ -180,7 +180,7 @@ TEST(TesseractTaskComposerCoreUnit, TaskComposerNodeTests) // NOLINT node->renameOutputKeys(rename_output_keys); EXPECT_EQ(node->getInputKeys(), std::vector({ "I3", "I4" })); EXPECT_EQ(node->getOutputKeys(), std::vector({ "O3", "O4" })); - EXPECT_NO_THROW(node->dump(os)); + EXPECT_NO_THROW(node->dump(os)); // NOLINT // Serialization test_suite::runSerializationPointerTest(node, "TaskComposerNodeTests"); @@ -262,7 +262,7 @@ class TestTask : public TaskComposerTask } TaskComposerNodeInfo::UPtr runImpl(TaskComposerInput& input, - OptionalTaskComposerExecutor /*executor*/ = std::nullopt) const + OptionalTaskComposerExecutor /*executor*/ = std::nullopt) const override final { if (throw_exception) throw std::runtime_error("TestTask, failure"); @@ -311,8 +311,8 @@ TEST(TesseractTaskComposerCoreUnit, TaskComposerTaskTests) // NOLINT EXPECT_EQ(input.task_infos.getInfoMap().at(task->getUUID())->return_value, 0); std::stringstream os; - EXPECT_NO_THROW(task->dump(os)); - EXPECT_NO_THROW(task->dump(os, nullptr, input.task_infos.getInfoMap())); + EXPECT_NO_THROW(task->dump(os)); // NOLINT + EXPECT_NO_THROW(task->dump(os, nullptr, input.task_infos.getInfoMap())); // NOLINT } { // Conditional @@ -334,8 +334,8 @@ TEST(TesseractTaskComposerCoreUnit, TaskComposerTaskTests) // NOLINT EXPECT_EQ(input.task_infos.getInfoMap().at(task->getUUID())->return_value, 1); std::stringstream os; - EXPECT_NO_THROW(task->dump(os)); - EXPECT_NO_THROW(task->dump(os, nullptr, input.task_infos.getInfoMap())); + EXPECT_NO_THROW(task->dump(os)); // NOLINT + EXPECT_NO_THROW(task->dump(os, nullptr, input.task_infos.getInfoMap())); // NOLINT } { @@ -363,8 +363,8 @@ TEST(TesseractTaskComposerCoreUnit, TaskComposerTaskTests) // NOLINT EXPECT_EQ(input.task_infos.getInfoMap().at(task->getUUID())->return_value, 0); std::stringstream os; - EXPECT_NO_THROW(task->dump(os)); - EXPECT_NO_THROW(task->dump(os, nullptr, input.task_infos.getInfoMap())); + EXPECT_NO_THROW(task->dump(os)); // NOLINT + EXPECT_NO_THROW(task->dump(os, nullptr, input.task_infos.getInfoMap())); // NOLINT } { @@ -393,8 +393,8 @@ TEST(TesseractTaskComposerCoreUnit, TaskComposerTaskTests) // NOLINT EXPECT_EQ(input.task_infos.getInfoMap().at(task->getUUID())->return_value, 1); std::stringstream os; - EXPECT_NO_THROW(task->dump(os)); - EXPECT_NO_THROW(task->dump(os, nullptr, input.task_infos.getInfoMap())); + EXPECT_NO_THROW(task->dump(os)); // NOLINT + EXPECT_NO_THROW(task->dump(os, nullptr, input.task_infos.getInfoMap())); // NOLINT } { // Failure due to exception during run @@ -499,12 +499,12 @@ TEST(TesseractTaskComposerCoreUnit, TaskComposerPipelineTests) // NOLINT std::ofstream os1; os1.open(tesseract_common::getTempPath() + "task_composer_pipeline_test1a.dot"); - EXPECT_NO_THROW(pipeline->dump(os1)); + EXPECT_NO_THROW(pipeline->dump(os1)); // NOLINT os1.close(); std::ofstream os2; os2.open(tesseract_common::getTempPath() + "task_composer_pipeline_test1b.dot"); - EXPECT_NO_THROW(pipeline->dump(os2, nullptr, input.task_infos.getInfoMap())); + EXPECT_NO_THROW(pipeline->dump(os2, nullptr, input.task_infos.getInfoMap())); // NOLINT os2.close(); } @@ -554,12 +554,12 @@ TEST(TesseractTaskComposerCoreUnit, TaskComposerPipelineTests) // NOLINT std::ofstream os1; os1.open(tesseract_common::getTempPath() + "task_composer_pipeline_test2a.dot"); - EXPECT_NO_THROW(pipeline->dump(os1)); + EXPECT_NO_THROW(pipeline->dump(os1)); // NOLINT os1.close(); std::ofstream os2; os2.open(tesseract_common::getTempPath() + "task_composer_pipeline_test2b.dot"); - EXPECT_NO_THROW(pipeline->dump(os2, nullptr, input.task_infos.getInfoMap())); + EXPECT_NO_THROW(pipeline->dump(os2, nullptr, input.task_infos.getInfoMap())); // NOLINT os2.close(); } @@ -610,12 +610,12 @@ TEST(TesseractTaskComposerCoreUnit, TaskComposerPipelineTests) // NOLINT std::ofstream os1; os1.open(tesseract_common::getTempPath() + "task_composer_pipeline_test3a.dot"); - EXPECT_NO_THROW(pipeline->dump(os1)); + EXPECT_NO_THROW(pipeline->dump(os1)); // NOLINT os1.close(); std::ofstream os2; os2.open(tesseract_common::getTempPath() + "task_composer_pipeline_test3b.dot"); - EXPECT_NO_THROW(pipeline->dump(os2, nullptr, input.task_infos.getInfoMap())); + EXPECT_NO_THROW(pipeline->dump(os2, nullptr, input.task_infos.getInfoMap())); // NOLINT os2.close(); } @@ -666,12 +666,12 @@ TEST(TesseractTaskComposerCoreUnit, TaskComposerPipelineTests) // NOLINT std::ofstream os1; os1.open(tesseract_common::getTempPath() + "task_composer_pipeline_test4a.dot"); - EXPECT_NO_THROW(pipeline->dump(os1)); + EXPECT_NO_THROW(pipeline->dump(os1)); // NOLINT os1.close(); std::ofstream os2; os2.open(tesseract_common::getTempPath() + "task_composer_pipeline_test4b.dot"); - EXPECT_NO_THROW(pipeline->dump(os2, nullptr, input.task_infos.getInfoMap())); + EXPECT_NO_THROW(pipeline->dump(os2, nullptr, input.task_infos.getInfoMap())); // NOLINT os2.close(); } @@ -724,12 +724,12 @@ TEST(TesseractTaskComposerCoreUnit, TaskComposerPipelineTests) // NOLINT std::ofstream os1; os1.open(tesseract_common::getTempPath() + "task_composer_pipeline_test5a.dot"); - EXPECT_NO_THROW(pipeline3->dump(os1)); + EXPECT_NO_THROW(pipeline3->dump(os1)); // NOLINT os1.close(); std::ofstream os2; os2.open(tesseract_common::getTempPath() + "task_composer_pipeline_test5b.dot"); - EXPECT_NO_THROW(pipeline3->dump(os2, nullptr, input.task_infos.getInfoMap())); + EXPECT_NO_THROW(pipeline3->dump(os2, nullptr, input.task_infos.getInfoMap())); // NOLINT os2.close(); } @@ -784,12 +784,12 @@ TEST(TesseractTaskComposerCoreUnit, TaskComposerPipelineTests) // NOLINT std::ofstream os1; os1.open(tesseract_common::getTempPath() + "task_composer_pipeline_test6a.dot"); - EXPECT_NO_THROW(pipeline3->dump(os1)); + EXPECT_NO_THROW(pipeline3->dump(os1)); // NOLINT os1.close(); std::ofstream os2; os2.open(tesseract_common::getTempPath() + "task_composer_pipeline_test6b.dot"); - EXPECT_NO_THROW(pipeline3->dump(os2, nullptr, input.task_infos.getInfoMap())); + EXPECT_NO_THROW(pipeline3->dump(os2, nullptr, input.task_infos.getInfoMap())); // NOLINT os2.close(); } @@ -845,12 +845,12 @@ TEST(TesseractTaskComposerCoreUnit, TaskComposerPipelineTests) // NOLINT std::ofstream os1; os1.open(tesseract_common::getTempPath() + "task_composer_pipeline_test7a.dot"); - EXPECT_NO_THROW(pipeline3->dump(os1)); + EXPECT_NO_THROW(pipeline3->dump(os1)); // NOLINT os1.close(); std::ofstream os2; os2.open(tesseract_common::getTempPath() + "task_composer_pipeline_test7b.dot"); - EXPECT_NO_THROW(pipeline3->dump(os2, nullptr, input.task_infos.getInfoMap())); + EXPECT_NO_THROW(pipeline3->dump(os2, nullptr, input.task_infos.getInfoMap())); // NOLINT os2.close(); } @@ -1014,12 +1014,12 @@ TEST(TesseractTaskComposerCoreUnit, TaskComposerPipelineTests) // NOLINT std::ofstream os1; os1.open(tesseract_common::getTempPath() + "task_composer_pipeline_test8a.dot"); - EXPECT_NO_THROW(pipeline->dump(os1)); + EXPECT_NO_THROW(pipeline->dump(os1)); // NOLINT os1.close(); std::ofstream os2; os2.open(tesseract_common::getTempPath() + "task_composer_pipeline_test8b.dot"); - EXPECT_NO_THROW(pipeline->dump(os2, nullptr, input.task_infos.getInfoMap())); + EXPECT_NO_THROW(pipeline->dump(os2, nullptr, input.task_infos.getInfoMap())); // NOLINT os2.close(); } @@ -1045,12 +1045,12 @@ TEST(TesseractTaskComposerCoreUnit, TaskComposerPipelineTests) // NOLINT std::ofstream os1; os1.open(tesseract_common::getTempPath() + "task_composer_pipeline_test9a.dot"); - EXPECT_NO_THROW(pipeline->dump(os1)); + EXPECT_NO_THROW(pipeline->dump(os1)); // NOLINT os1.close(); std::ofstream os2; os2.open(tesseract_common::getTempPath() + "task_composer_pipeline_test9b.dot"); - EXPECT_NO_THROW(pipeline->dump(os2, nullptr, input.task_infos.getInfoMap())); + EXPECT_NO_THROW(pipeline->dump(os2, nullptr, input.task_infos.getInfoMap())); // NOLINT os2.close(); } @@ -1075,12 +1075,12 @@ TEST(TesseractTaskComposerCoreUnit, TaskComposerPipelineTests) // NOLINT std::ofstream os1; os1.open(tesseract_common::getTempPath() + "task_composer_pipeline_test10a.dot"); - EXPECT_NO_THROW(pipeline->dump(os1)); + EXPECT_NO_THROW(pipeline->dump(os1)); // NOLINT os1.close(); std::ofstream os2; os2.open(tesseract_common::getTempPath() + "task_composer_pipeline_test10b.dot"); - EXPECT_NO_THROW(pipeline->dump(os2, nullptr, input.task_infos.getInfoMap())); + EXPECT_NO_THROW(pipeline->dump(os2, nullptr, input.task_infos.getInfoMap())); // NOLINT os2.close(); } @@ -1687,7 +1687,7 @@ TEST(TesseractTaskComposerCoreUnit, TaskComposerStartTaskTests) // NOLINT std::string str = R"(config: conditional: true)"; YAML::Node config = YAML::Load(str); - EXPECT_ANY_THROW(std::make_unique("abc", config["config"], factory)); + EXPECT_ANY_THROW(std::make_unique("abc", config["config"], factory)); // NOLINT } { // Construction failure @@ -1697,7 +1697,7 @@ TEST(TesseractTaskComposerCoreUnit, TaskComposerStartTaskTests) // NOLINT inputs: [input_data] ouputs: [output_data])"; YAML::Node config = YAML::Load(str); - EXPECT_ANY_THROW(std::make_unique("abc", config["config"], factory)); + EXPECT_ANY_THROW(std::make_unique("abc", config["config"], factory)); // NOLINT } { // Construction failure @@ -1706,7 +1706,7 @@ TEST(TesseractTaskComposerCoreUnit, TaskComposerStartTaskTests) // NOLINT conditional: false outputs: [output_data])"; YAML::Node config = YAML::Load(str); - EXPECT_ANY_THROW(std::make_unique("abc", config["config"], factory)); + EXPECT_ANY_THROW(std::make_unique("abc", config["config"], factory)); // NOLINT } { // Serialization diff --git a/tesseract_task_composer/test/tesseract_task_composer_plugin_factories_unit.cpp b/tesseract_task_composer/test/tesseract_task_composer_plugin_factories_unit.cpp index 89c41f33d1..cf56421714 100644 --- a/tesseract_task_composer/test/tesseract_task_composer_plugin_factories_unit.cpp +++ b/tesseract_task_composer/test/tesseract_task_composer_plugin_factories_unit.cpp @@ -34,7 +34,7 @@ TESSERACT_COMMON_IGNORE_WARNINGS_POP using namespace tesseract_planning; -void runTaskComposerFactoryTest(TaskComposerPluginFactory factory, YAML::Node plugin_config) +void runTaskComposerFactoryTest(TaskComposerPluginFactory& factory, YAML::Node plugin_config) { const YAML::Node& plugin_info = plugin_config[tesseract_common::TaskComposerPluginInfo::CONFIG_KEY]; const YAML::Node& search_paths = plugin_info["search_paths"];