Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion include/behaviortree_cpp/utils/safe_any.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -560,7 +560,7 @@ inline nonstd::expected<T, std::string> Any::tryCast() const

if(auto res = convert<T>())
{
return res.value();
return std::move(res.value());
}
else
{
Expand Down
24 changes: 12 additions & 12 deletions tests/gtest_factory.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -112,7 +112,7 @@ const char* xml_text_subtree_part2 = R"(
TEST(BehaviorTreeFactory, NotRegisteredNode)
{
BehaviorTreeFactory factory;
ASSERT_ANY_THROW(factory.createTreeFromText(xml_text));
ASSERT_ANY_THROW((void)factory.createTreeFromText(xml_text));
ASSERT_ANY_THROW(std::make_shared<BT::Tree>(factory.createTreeFromText(xml_text)));
}

Expand Down Expand Up @@ -623,7 +623,7 @@ TEST(BehaviorTreeFactory, MalformedXML_InvalidRoot)
{
// XML that is not valid XML at all
BehaviorTreeFactory factory;
EXPECT_ANY_THROW(factory.createTreeFromText("<not valid xml!!!"));
EXPECT_ANY_THROW((void)factory.createTreeFromText("<not valid xml!!!"));
}

TEST(BehaviorTreeFactory, MalformedXML_MissingRootElement)
Expand All @@ -637,7 +637,7 @@ TEST(BehaviorTreeFactory, MalformedXML_MissingRootElement)
</something>)";

BehaviorTreeFactory factory;
EXPECT_THROW(factory.createTreeFromText(xml), RuntimeError);
EXPECT_THROW((void)factory.createTreeFromText(xml), RuntimeError);
}

TEST(BehaviorTreeFactory, MalformedXML_EmptyBehaviorTree)
Expand All @@ -650,7 +650,7 @@ TEST(BehaviorTreeFactory, MalformedXML_EmptyBehaviorTree)
</root>)";

BehaviorTreeFactory factory;
EXPECT_THROW(factory.createTreeFromText(xml), RuntimeError);
EXPECT_THROW((void)factory.createTreeFromText(xml), RuntimeError);
}

TEST(BehaviorTreeFactory, MalformedXML_EmptyBehaviorTreeID)
Expand All @@ -667,7 +667,7 @@ TEST(BehaviorTreeFactory, MalformedXML_EmptyBehaviorTreeID)
</root>)";

BehaviorTreeFactory factory;
EXPECT_THROW(factory.createTreeFromText(xml), RuntimeError);
EXPECT_THROW((void)factory.createTreeFromText(xml), RuntimeError);
}

TEST(BehaviorTreeFactory, MalformedXML_MissingBehaviorTreeID)
Expand All @@ -684,7 +684,7 @@ TEST(BehaviorTreeFactory, MalformedXML_MissingBehaviorTreeID)
</root>)";

BehaviorTreeFactory factory;
EXPECT_THROW(factory.createTreeFromText(xml), RuntimeError);
EXPECT_THROW((void)factory.createTreeFromText(xml), RuntimeError);
}

TEST(BehaviorTreeFactory, MalformedXML_DeeplyNestedElements)
Expand All @@ -706,7 +706,7 @@ TEST(BehaviorTreeFactory, MalformedXML_DeeplyNestedElements)
xml += "</BehaviorTree></root>";

BehaviorTreeFactory factory;
EXPECT_THROW(factory.createTreeFromText(xml), RuntimeError);
EXPECT_THROW((void)factory.createTreeFromText(xml), RuntimeError);
}

TEST(BehaviorTreeFactory, MalformedXML_ModerateNestingIsOK)
Expand All @@ -727,7 +727,7 @@ TEST(BehaviorTreeFactory, MalformedXML_ModerateNestingIsOK)

BehaviorTreeFactory factory;
// Should not throw
EXPECT_NO_THROW(factory.createTreeFromText(xml));
EXPECT_NO_THROW((void)factory.createTreeFromText(xml));
}

TEST(BehaviorTreeFactory, MalformedXML_MultipleBTChildElements)
Expand All @@ -742,14 +742,14 @@ TEST(BehaviorTreeFactory, MalformedXML_MultipleBTChildElements)
</root>)";

BehaviorTreeFactory factory;
EXPECT_THROW(factory.createTreeFromText(xml), RuntimeError);
EXPECT_THROW((void)factory.createTreeFromText(xml), RuntimeError);
}

TEST(BehaviorTreeFactory, MalformedXML_CompletelyEmpty)
{
// Completely empty string
BehaviorTreeFactory factory;
EXPECT_ANY_THROW(factory.createTreeFromText(""));
EXPECT_ANY_THROW((void)factory.createTreeFromText(""));
}

TEST(BehaviorTreeFactory, MalformedXML_EmptyRoot)
Expand All @@ -761,7 +761,7 @@ TEST(BehaviorTreeFactory, MalformedXML_EmptyRoot)
// No BehaviorTree elements: registering succeeds but creating
// a tree should fail because there is nothing to instantiate.
factory.registerBehaviorTreeFromText(xml);
EXPECT_ANY_THROW(factory.createTree("MainTree"));
EXPECT_ANY_THROW((void)factory.createTree("MainTree"));
}

TEST(BehaviorTreeFactory, MalformedXML_UnknownNodeType)
Expand All @@ -775,5 +775,5 @@ TEST(BehaviorTreeFactory, MalformedXML_UnknownNodeType)
</root>)";

BehaviorTreeFactory factory;
EXPECT_THROW(factory.createTreeFromText(xml), RuntimeError);
EXPECT_THROW((void)factory.createTreeFromText(xml), RuntimeError);
}
36 changes: 18 additions & 18 deletions tests/gtest_name_validation.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -136,7 +136,7 @@ TEST_F(NameValidationXMLTest, ValidBehaviorTreeID)
<AlwaysSuccess/>
</BehaviorTree>
</root>)";
EXPECT_NO_THROW(factory.createTreeFromText(xml));
EXPECT_NO_THROW((void)factory.createTreeFromText(xml));
}

TEST_F(NameValidationXMLTest, ValidBehaviorTreeID_WithUnderscore)
Expand All @@ -147,7 +147,7 @@ TEST_F(NameValidationXMLTest, ValidBehaviorTreeID_WithUnderscore)
<AlwaysSuccess/>
</BehaviorTree>
</root>)";
EXPECT_NO_THROW(factory.createTreeFromText(xml));
EXPECT_NO_THROW((void)factory.createTreeFromText(xml));
}

TEST_F(NameValidationXMLTest, InvalidBehaviorTreeID_Root)
Expand All @@ -158,7 +158,7 @@ TEST_F(NameValidationXMLTest, InvalidBehaviorTreeID_Root)
<AlwaysSuccess/>
</BehaviorTree>
</root>)";
EXPECT_THROW(factory.createTreeFromText(xml), RuntimeError);
EXPECT_THROW((void)factory.createTreeFromText(xml), RuntimeError);
}

TEST_F(NameValidationXMLTest, InvalidBehaviorTreeID_root_lowercase)
Expand All @@ -169,7 +169,7 @@ TEST_F(NameValidationXMLTest, InvalidBehaviorTreeID_root_lowercase)
<AlwaysSuccess/>
</BehaviorTree>
</root>)";
EXPECT_THROW(factory.createTreeFromText(xml), RuntimeError);
EXPECT_THROW((void)factory.createTreeFromText(xml), RuntimeError);
}

TEST_F(NameValidationXMLTest, InvalidBehaviorTreeID_WithSpace)
Expand All @@ -180,7 +180,7 @@ TEST_F(NameValidationXMLTest, InvalidBehaviorTreeID_WithSpace)
<AlwaysSuccess/>
</BehaviorTree>
</root>)";
EXPECT_THROW(factory.createTreeFromText(xml), RuntimeError);
EXPECT_THROW((void)factory.createTreeFromText(xml), RuntimeError);
}

TEST_F(NameValidationXMLTest, InvalidBehaviorTreeID_WithPeriod)
Expand All @@ -191,7 +191,7 @@ TEST_F(NameValidationXMLTest, InvalidBehaviorTreeID_WithPeriod)
<AlwaysSuccess/>
</BehaviorTree>
</root>)";
EXPECT_THROW(factory.createTreeFromText(xml), RuntimeError);
EXPECT_THROW((void)factory.createTreeFromText(xml), RuntimeError);
}

TEST_F(NameValidationXMLTest, ValidInstanceName)
Expand All @@ -202,7 +202,7 @@ TEST_F(NameValidationXMLTest, ValidInstanceName)
<AlwaysSuccess name="my_success_node"/>
</BehaviorTree>
</root>)";
EXPECT_NO_THROW(factory.createTreeFromText(xml));
EXPECT_NO_THROW((void)factory.createTreeFromText(xml));
}

TEST_F(NameValidationXMLTest, ValidInstanceName_WithSpace)
Expand All @@ -214,7 +214,7 @@ TEST_F(NameValidationXMLTest, ValidInstanceName_WithSpace)
<AlwaysSuccess name="my success node"/>
</BehaviorTree>
</root>)";
EXPECT_NO_THROW(factory.createTreeFromText(xml));
EXPECT_NO_THROW((void)factory.createTreeFromText(xml));
}

TEST_F(NameValidationXMLTest, ValidInstanceName_WithPeriod)
Expand All @@ -226,7 +226,7 @@ TEST_F(NameValidationXMLTest, ValidInstanceName_WithPeriod)
<AlwaysSuccess name="node.name"/>
</BehaviorTree>
</root>)";
EXPECT_NO_THROW(factory.createTreeFromText(xml));
EXPECT_NO_THROW((void)factory.createTreeFromText(xml));
}

TEST_F(NameValidationXMLTest, ValidSubTreeID)
Expand All @@ -240,7 +240,7 @@ TEST_F(NameValidationXMLTest, ValidSubTreeID)
<AlwaysSuccess/>
</BehaviorTree>
</root>)";
EXPECT_NO_THROW(factory.createTreeFromText(xml));
EXPECT_NO_THROW((void)factory.createTreeFromText(xml));
}

TEST_F(NameValidationXMLTest, InvalidSubTreeID_WithSpace)
Expand All @@ -254,7 +254,7 @@ TEST_F(NameValidationXMLTest, InvalidSubTreeID_WithSpace)
<AlwaysSuccess/>
</BehaviorTree>
</root>)";
EXPECT_THROW(factory.createTreeFromText(xml), RuntimeError);
EXPECT_THROW((void)factory.createTreeFromText(xml), RuntimeError);
}

// ============== Tests for Unicode support ==============
Expand All @@ -267,7 +267,7 @@ TEST_F(NameValidationXMLTest, UnicodeTreeID_Chinese)
<AlwaysSuccess/>
</BehaviorTree>
</root>)";
EXPECT_NO_THROW(factory.createTreeFromText(xml));
EXPECT_NO_THROW((void)factory.createTreeFromText(xml));
}

TEST_F(NameValidationXMLTest, UnicodeInstanceName_Japanese)
Expand All @@ -278,7 +278,7 @@ TEST_F(NameValidationXMLTest, UnicodeInstanceName_Japanese)
<AlwaysSuccess name="成功ノード"/>
</BehaviorTree>
</root>)";
EXPECT_NO_THROW(factory.createTreeFromText(xml));
EXPECT_NO_THROW((void)factory.createTreeFromText(xml));
}

TEST_F(NameValidationXMLTest, UnicodeTreeID_German)
Expand All @@ -289,7 +289,7 @@ TEST_F(NameValidationXMLTest, UnicodeTreeID_German)
<AlwaysSuccess/>
</BehaviorTree>
</root>)";
EXPECT_NO_THROW(factory.createTreeFromText(xml));
EXPECT_NO_THROW((void)factory.createTreeFromText(xml));
}

// ============== Tests for SubTree port validation ==============
Expand All @@ -310,7 +310,7 @@ TEST_F(NameValidationXMLTest, ValidSubTreePortName)
</SubTree>
</TreeNodesModel>
</root>)";
EXPECT_NO_THROW(factory.createTreeFromText(xml));
EXPECT_NO_THROW((void)factory.createTreeFromText(xml));
}

TEST_F(NameValidationXMLTest, InvalidSubTreePortName_WithSpace)
Expand All @@ -326,7 +326,7 @@ TEST_F(NameValidationXMLTest, InvalidSubTreePortName_WithSpace)
</SubTree>
</TreeNodesModel>
</root>)";
EXPECT_THROW(factory.createTreeFromText(xml), RuntimeError);
EXPECT_THROW((void)factory.createTreeFromText(xml), RuntimeError);
}

TEST_F(NameValidationXMLTest, InvalidSubTreePortName_Reserved)
Expand All @@ -342,7 +342,7 @@ TEST_F(NameValidationXMLTest, InvalidSubTreePortName_Reserved)
</SubTree>
</TreeNodesModel>
</root>)";
EXPECT_THROW(factory.createTreeFromText(xml), RuntimeError);
EXPECT_THROW((void)factory.createTreeFromText(xml), RuntimeError);
}

TEST_F(NameValidationXMLTest, InvalidSubTreePortName_StartsWithDigit)
Expand All @@ -358,5 +358,5 @@ TEST_F(NameValidationXMLTest, InvalidSubTreePortName_StartsWithDigit)
</SubTree>
</TreeNodesModel>
</root>)";
EXPECT_THROW(factory.createTreeFromText(xml), RuntimeError);
EXPECT_THROW((void)factory.createTreeFromText(xml), RuntimeError);
}
2 changes: 1 addition & 1 deletion tests/gtest_try_catch.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -209,7 +209,7 @@ TEST_F(TryCatchTest, MinimumTwoChildren_ParseTimeValidation)
</root>)";

// Error should be caught at parse time, not tick time
ASSERT_THROW(factory.createTreeFromText(xml_text), BT::RuntimeError);
ASSERT_THROW((void)factory.createTreeFromText(xml_text), BT::RuntimeError);
}

TEST_F(TryCatchTest, ReExecuteAfterSuccess)
Expand Down
Loading