|
@@ -3,7 +3,7 @@
|
|
* Company: Lynar Studios
|
|
* Company: Lynar Studios
|
|
* E-Mail: webmaster@lynarstudios.com
|
|
* E-Mail: webmaster@lynarstudios.com
|
|
* Created: 2020-11-26
|
|
* Created: 2020-11-26
|
|
- * Changed: 2022-05-20
|
|
|
|
|
|
+ * Changed: 2022-11-09
|
|
*
|
|
*
|
|
* */
|
|
* */
|
|
|
|
|
|
@@ -12,6 +12,12 @@
|
|
#include <ls_std/ls_std_io.hpp>
|
|
#include <ls_std/ls_std_io.hpp>
|
|
#include "TestHelper.hpp"
|
|
#include "TestHelper.hpp"
|
|
|
|
|
|
|
|
+using namespace ls::std::core;
|
|
|
|
+using namespace ls::std::core::type;
|
|
|
|
+using namespace ls::std::io;
|
|
|
|
+using namespace ::std;
|
|
|
|
+using namespace ls_std_test;
|
|
|
|
+
|
|
namespace
|
|
namespace
|
|
{
|
|
{
|
|
class XmlParserTest : public ::testing::Test
|
|
class XmlParserTest : public ::testing::Test
|
|
@@ -21,11 +27,11 @@ namespace
|
|
XmlParserTest() = default;
|
|
XmlParserTest() = default;
|
|
~XmlParserTest() override = default;
|
|
~XmlParserTest() override = default;
|
|
|
|
|
|
- static ls::std::core::type::byte_field readXmlStateMachine()
|
|
|
|
|
|
+ static byte_field readXmlStateMachine()
|
|
{
|
|
{
|
|
- ::std::string xmlPath = ls_std_test::TestHelper::getResourcesFolderLocation() + "state_machine_test.xml";
|
|
|
|
- ls::std::io::File file{xmlPath};
|
|
|
|
- ls::std::core::type::byte_field data = ls::std::io::FileReader{file}.read();
|
|
|
|
|
|
+ string xmlPath = TestHelper::getResourcesFolderLocation() + "state_machine_test.xml";
|
|
|
|
+ File file{xmlPath};
|
|
|
|
+ byte_field data = FileReader{file}.read();
|
|
|
|
|
|
return data;
|
|
return data;
|
|
}
|
|
}
|
|
@@ -39,27 +45,27 @@ namespace
|
|
|
|
|
|
TEST_F(XmlParserTest, constructor)
|
|
TEST_F(XmlParserTest, constructor)
|
|
{
|
|
{
|
|
- ::std::shared_ptr<ls::std::io::XmlDocument> document{};
|
|
|
|
|
|
+ shared_ptr<XmlDocument> document{};
|
|
|
|
|
|
EXPECT_THROW({
|
|
EXPECT_THROW({
|
|
try
|
|
try
|
|
{
|
|
{
|
|
- ls::std::io::XmlParser xmlParser{document};
|
|
|
|
|
|
+ XmlParser xmlParser{document};
|
|
}
|
|
}
|
|
- catch (const ls::std::core::IllegalArgumentException &_exception)
|
|
|
|
|
|
+ catch (const IllegalArgumentException &_exception)
|
|
{
|
|
{
|
|
throw;
|
|
throw;
|
|
}
|
|
}
|
|
- }, ls::std::core::IllegalArgumentException);
|
|
|
|
|
|
+ }, IllegalArgumentException);
|
|
}
|
|
}
|
|
|
|
|
|
TEST_F(XmlParserTest, read)
|
|
TEST_F(XmlParserTest, read)
|
|
{
|
|
{
|
|
- ls::std::io::XmlParser xmlParser{::std::make_shared<ls::std::io::XmlDocument>()};
|
|
|
|
- ::std::list<::std::shared_ptr<ls::std::io::XmlNode>> children, statesChildren, memoryChildren, connectionChildren{};
|
|
|
|
- ::std::list<::std::shared_ptr<ls::std::io::XmlAttribute>> attributes{};
|
|
|
|
|
|
+ XmlParser xmlParser{make_shared<XmlDocument>()};
|
|
|
|
+ list<shared_ptr<XmlNode>> children, statesChildren, memoryChildren, connectionChildren{};
|
|
|
|
+ list<shared_ptr<XmlAttribute>> attributes{};
|
|
|
|
|
|
- ls::std::core::type::byte_field data = readXmlStateMachine();
|
|
|
|
|
|
+ byte_field data = readXmlStateMachine();
|
|
xmlParser.parse(data);
|
|
xmlParser.parse(data);
|
|
|
|
|
|
// check declaration
|
|
// check declaration
|
|
@@ -70,7 +76,7 @@ namespace
|
|
|
|
|
|
// check root element
|
|
// check root element
|
|
|
|
|
|
- ::std::shared_ptr<ls::std::io::XmlNode> root = xmlParser.getDocument()->getRootElement();
|
|
|
|
|
|
+ shared_ptr<XmlNode> root = xmlParser.getDocument()->getRootElement();
|
|
ASSERT_STREQ("stateMachine", root->getName().c_str());
|
|
ASSERT_STREQ("stateMachine", root->getName().c_str());
|
|
ASSERT_STREQ("name", root->getAttributes().front()->getName().c_str());
|
|
ASSERT_STREQ("name", root->getAttributes().front()->getName().c_str());
|
|
ASSERT_EQ(1, root->getAttributes().size());
|
|
ASSERT_EQ(1, root->getAttributes().size());
|
|
@@ -80,180 +86,180 @@ namespace
|
|
|
|
|
|
children = root->getChildren();
|
|
children = root->getChildren();
|
|
ASSERT_EQ(3, children.size());
|
|
ASSERT_EQ(3, children.size());
|
|
- ASSERT_STREQ("states", ls::std::core::STLUtils::getListElementAt(children, 0)->getName().c_str());
|
|
|
|
- ASSERT_TRUE(ls::std::core::STLUtils::getListElementAt(children, 0)->getAttributes().empty());
|
|
|
|
- ASSERT_STREQ("currentState", ls::std::core::STLUtils::getListElementAt(children, 1)->getName().c_str());
|
|
|
|
- ASSERT_TRUE(ls::std::core::STLUtils::getListElementAt(children, 1)->getAttributes().empty());
|
|
|
|
- ASSERT_STREQ("memory", ls::std::core::STLUtils::getListElementAt(children, 2)->getName().c_str());
|
|
|
|
- ASSERT_TRUE(ls::std::core::STLUtils::getListElementAt(children, 2)->getAttributes().empty());
|
|
|
|
|
|
+ ASSERT_STREQ("states", STLUtils::getListElementAt(children, 0)->getName().c_str());
|
|
|
|
+ ASSERT_TRUE(STLUtils::getListElementAt(children, 0)->getAttributes().empty());
|
|
|
|
+ ASSERT_STREQ("currentState", STLUtils::getListElementAt(children, 1)->getName().c_str());
|
|
|
|
+ ASSERT_TRUE(STLUtils::getListElementAt(children, 1)->getAttributes().empty());
|
|
|
|
+ ASSERT_STREQ("memory", STLUtils::getListElementAt(children, 2)->getName().c_str());
|
|
|
|
+ ASSERT_TRUE(STLUtils::getListElementAt(children, 2)->getAttributes().empty());
|
|
|
|
|
|
// states
|
|
// states
|
|
|
|
|
|
- statesChildren = ls::std::core::STLUtils::getListElementAt(children, 0)->getChildren();
|
|
|
|
|
|
+ statesChildren = STLUtils::getListElementAt(children, 0)->getChildren();
|
|
ASSERT_EQ(5, statesChildren.size());
|
|
ASSERT_EQ(5, statesChildren.size());
|
|
|
|
|
|
- ASSERT_STREQ("state", ls::std::core::STLUtils::getListElementAt(statesChildren, 0)->getName().c_str());
|
|
|
|
- ASSERT_EQ(1, ls::std::core::STLUtils::getListElementAt(statesChildren, 0)->getAttributes().size());
|
|
|
|
- ASSERT_STREQ("id", ls::std::core::STLUtils::getListElementAt(statesChildren, 0)->getAttributes().front()->getName().c_str());
|
|
|
|
- ASSERT_STREQ("A", ls::std::core::STLUtils::getListElementAt(statesChildren, 0)->getAttributes().front()->getValue().c_str());
|
|
|
|
- ASSERT_TRUE(ls::std::core::STLUtils::getListElementAt(statesChildren, 0)->getValue().empty());
|
|
|
|
- ASSERT_EQ(1, ls::std::core::STLUtils::getListElementAt(statesChildren, 0)->getChildren().size());
|
|
|
|
- ASSERT_STREQ("connections", ls::std::core::STLUtils::getListElementAt(statesChildren, 0)->getChildren().front()->getName().c_str());
|
|
|
|
- ASSERT_TRUE(ls::std::core::STLUtils::getListElementAt(statesChildren, 0)->getChildren().front()->getValue().empty());
|
|
|
|
- ASSERT_TRUE(ls::std::core::STLUtils::getListElementAt(statesChildren, 0)->getChildren().front()->getAttributes().empty());
|
|
|
|
- connectionChildren = ls::std::core::STLUtils::getListElementAt(statesChildren, 0)->getChildren().front()->getChildren();
|
|
|
|
|
|
+ ASSERT_STREQ("state", STLUtils::getListElementAt(statesChildren, 0)->getName().c_str());
|
|
|
|
+ ASSERT_EQ(1, STLUtils::getListElementAt(statesChildren, 0)->getAttributes().size());
|
|
|
|
+ ASSERT_STREQ("id", STLUtils::getListElementAt(statesChildren, 0)->getAttributes().front()->getName().c_str());
|
|
|
|
+ ASSERT_STREQ("A", STLUtils::getListElementAt(statesChildren, 0)->getAttributes().front()->getValue().c_str());
|
|
|
|
+ ASSERT_TRUE(STLUtils::getListElementAt(statesChildren, 0)->getValue().empty());
|
|
|
|
+ ASSERT_EQ(1, STLUtils::getListElementAt(statesChildren, 0)->getChildren().size());
|
|
|
|
+ ASSERT_STREQ("connections", STLUtils::getListElementAt(statesChildren, 0)->getChildren().front()->getName().c_str());
|
|
|
|
+ ASSERT_TRUE(STLUtils::getListElementAt(statesChildren, 0)->getChildren().front()->getValue().empty());
|
|
|
|
+ ASSERT_TRUE(STLUtils::getListElementAt(statesChildren, 0)->getChildren().front()->getAttributes().empty());
|
|
|
|
+ connectionChildren = STLUtils::getListElementAt(statesChildren, 0)->getChildren().front()->getChildren();
|
|
ASSERT_EQ(1, connectionChildren.size());
|
|
ASSERT_EQ(1, connectionChildren.size());
|
|
- ASSERT_STREQ("connection", ls::std::core::STLUtils::getListElementAt(connectionChildren, 0)->getName().c_str());
|
|
|
|
- ASSERT_TRUE(ls::std::core::STLUtils::getListElementAt(connectionChildren, 0)->getValue().empty());
|
|
|
|
- attributes = ls::std::core::STLUtils::getListElementAt(connectionChildren, 0)->getAttributes();
|
|
|
|
|
|
+ ASSERT_STREQ("connection", STLUtils::getListElementAt(connectionChildren, 0)->getName().c_str());
|
|
|
|
+ ASSERT_TRUE(STLUtils::getListElementAt(connectionChildren, 0)->getValue().empty());
|
|
|
|
+ attributes = STLUtils::getListElementAt(connectionChildren, 0)->getAttributes();
|
|
ASSERT_EQ(3, attributes.size());
|
|
ASSERT_EQ(3, attributes.size());
|
|
- ASSERT_STREQ("connectionId", ls::std::core::STLUtils::getListElementAt(attributes, 0)->getName().c_str());
|
|
|
|
- ASSERT_STREQ("AB", ls::std::core::STLUtils::getListElementAt(attributes, 0)->getValue().c_str());
|
|
|
|
- ASSERT_STREQ("condition", ls::std::core::STLUtils::getListElementAt(attributes, 1)->getName().c_str());
|
|
|
|
- ASSERT_STREQ("false", ls::std::core::STLUtils::getListElementAt(attributes, 1)->getValue().c_str());
|
|
|
|
- ASSERT_STREQ("id", ls::std::core::STLUtils::getListElementAt(attributes, 2)->getName().c_str());
|
|
|
|
- ASSERT_STREQ("B", ls::std::core::STLUtils::getListElementAt(attributes, 2)->getValue().c_str());
|
|
|
|
-
|
|
|
|
- ASSERT_STREQ("state", ls::std::core::STLUtils::getListElementAt(statesChildren, 1)->getName().c_str());
|
|
|
|
- ASSERT_EQ(1, ls::std::core::STLUtils::getListElementAt(statesChildren, 1)->getAttributes().size());
|
|
|
|
- ASSERT_STREQ("id", ls::std::core::STLUtils::getListElementAt(statesChildren, 1)->getAttributes().front()->getName().c_str());
|
|
|
|
- ASSERT_STREQ("B", ls::std::core::STLUtils::getListElementAt(statesChildren, 1)->getAttributes().front()->getValue().c_str());
|
|
|
|
- ASSERT_TRUE(ls::std::core::STLUtils::getListElementAt(statesChildren, 1)->getValue().empty());
|
|
|
|
- ASSERT_EQ(1, ls::std::core::STLUtils::getListElementAt(statesChildren, 1)->getChildren().size());
|
|
|
|
- ASSERT_STREQ("connections", ls::std::core::STLUtils::getListElementAt(statesChildren, 1)->getChildren().front()->getName().c_str());
|
|
|
|
- ASSERT_TRUE(ls::std::core::STLUtils::getListElementAt(statesChildren, 1)->getChildren().front()->getValue().empty());
|
|
|
|
- ASSERT_TRUE(ls::std::core::STLUtils::getListElementAt(statesChildren, 1)->getChildren().front()->getAttributes().empty());
|
|
|
|
- connectionChildren = ls::std::core::STLUtils::getListElementAt(statesChildren, 1)->getChildren().front()->getChildren();
|
|
|
|
|
|
+ ASSERT_STREQ("connectionId", STLUtils::getListElementAt(attributes, 0)->getName().c_str());
|
|
|
|
+ ASSERT_STREQ("AB", STLUtils::getListElementAt(attributes, 0)->getValue().c_str());
|
|
|
|
+ ASSERT_STREQ("condition", STLUtils::getListElementAt(attributes, 1)->getName().c_str());
|
|
|
|
+ ASSERT_STREQ("false", STLUtils::getListElementAt(attributes, 1)->getValue().c_str());
|
|
|
|
+ ASSERT_STREQ("id", STLUtils::getListElementAt(attributes, 2)->getName().c_str());
|
|
|
|
+ ASSERT_STREQ("B", STLUtils::getListElementAt(attributes, 2)->getValue().c_str());
|
|
|
|
+
|
|
|
|
+ ASSERT_STREQ("state", STLUtils::getListElementAt(statesChildren, 1)->getName().c_str());
|
|
|
|
+ ASSERT_EQ(1, STLUtils::getListElementAt(statesChildren, 1)->getAttributes().size());
|
|
|
|
+ ASSERT_STREQ("id", STLUtils::getListElementAt(statesChildren, 1)->getAttributes().front()->getName().c_str());
|
|
|
|
+ ASSERT_STREQ("B", STLUtils::getListElementAt(statesChildren, 1)->getAttributes().front()->getValue().c_str());
|
|
|
|
+ ASSERT_TRUE(STLUtils::getListElementAt(statesChildren, 1)->getValue().empty());
|
|
|
|
+ ASSERT_EQ(1, STLUtils::getListElementAt(statesChildren, 1)->getChildren().size());
|
|
|
|
+ ASSERT_STREQ("connections", STLUtils::getListElementAt(statesChildren, 1)->getChildren().front()->getName().c_str());
|
|
|
|
+ ASSERT_TRUE(STLUtils::getListElementAt(statesChildren, 1)->getChildren().front()->getValue().empty());
|
|
|
|
+ ASSERT_TRUE(STLUtils::getListElementAt(statesChildren, 1)->getChildren().front()->getAttributes().empty());
|
|
|
|
+ connectionChildren = STLUtils::getListElementAt(statesChildren, 1)->getChildren().front()->getChildren();
|
|
ASSERT_EQ(2, connectionChildren.size());
|
|
ASSERT_EQ(2, connectionChildren.size());
|
|
- ASSERT_STREQ("connection", ls::std::core::STLUtils::getListElementAt(connectionChildren, 0)->getName().c_str());
|
|
|
|
- ASSERT_TRUE(ls::std::core::STLUtils::getListElementAt(connectionChildren, 0)->getValue().empty());
|
|
|
|
- attributes = ls::std::core::STLUtils::getListElementAt(connectionChildren, 0)->getAttributes();
|
|
|
|
|
|
+ ASSERT_STREQ("connection", STLUtils::getListElementAt(connectionChildren, 0)->getName().c_str());
|
|
|
|
+ ASSERT_TRUE(STLUtils::getListElementAt(connectionChildren, 0)->getValue().empty());
|
|
|
|
+ attributes = STLUtils::getListElementAt(connectionChildren, 0)->getAttributes();
|
|
ASSERT_EQ(3, attributes.size());
|
|
ASSERT_EQ(3, attributes.size());
|
|
- ASSERT_STREQ("connectionId", ls::std::core::STLUtils::getListElementAt(attributes, 0)->getName().c_str());
|
|
|
|
- ASSERT_STREQ("BC", ls::std::core::STLUtils::getListElementAt(attributes, 0)->getValue().c_str());
|
|
|
|
- ASSERT_STREQ("condition", ls::std::core::STLUtils::getListElementAt(attributes, 1)->getName().c_str());
|
|
|
|
- ASSERT_STREQ("false", ls::std::core::STLUtils::getListElementAt(attributes, 1)->getValue().c_str());
|
|
|
|
- ASSERT_STREQ("id", ls::std::core::STLUtils::getListElementAt(attributes, 2)->getName().c_str());
|
|
|
|
- ASSERT_STREQ("C", ls::std::core::STLUtils::getListElementAt(attributes, 2)->getValue().c_str());
|
|
|
|
- ASSERT_STREQ("connection", ls::std::core::STLUtils::getListElementAt(connectionChildren, 1)->getName().c_str());
|
|
|
|
- ASSERT_TRUE(ls::std::core::STLUtils::getListElementAt(connectionChildren, 1)->getValue().empty());
|
|
|
|
- attributes = ls::std::core::STLUtils::getListElementAt(connectionChildren, 1)->getAttributes();
|
|
|
|
|
|
+ ASSERT_STREQ("connectionId", STLUtils::getListElementAt(attributes, 0)->getName().c_str());
|
|
|
|
+ ASSERT_STREQ("BC", STLUtils::getListElementAt(attributes, 0)->getValue().c_str());
|
|
|
|
+ ASSERT_STREQ("condition", STLUtils::getListElementAt(attributes, 1)->getName().c_str());
|
|
|
|
+ ASSERT_STREQ("false", STLUtils::getListElementAt(attributes, 1)->getValue().c_str());
|
|
|
|
+ ASSERT_STREQ("id", STLUtils::getListElementAt(attributes, 2)->getName().c_str());
|
|
|
|
+ ASSERT_STREQ("C", STLUtils::getListElementAt(attributes, 2)->getValue().c_str());
|
|
|
|
+ ASSERT_STREQ("connection", STLUtils::getListElementAt(connectionChildren, 1)->getName().c_str());
|
|
|
|
+ ASSERT_TRUE(STLUtils::getListElementAt(connectionChildren, 1)->getValue().empty());
|
|
|
|
+ attributes = STLUtils::getListElementAt(connectionChildren, 1)->getAttributes();
|
|
ASSERT_EQ(3, attributes.size());
|
|
ASSERT_EQ(3, attributes.size());
|
|
- ASSERT_STREQ("connectionId", ls::std::core::STLUtils::getListElementAt(attributes, 0)->getName().c_str());
|
|
|
|
- ASSERT_STREQ("BD", ls::std::core::STLUtils::getListElementAt(attributes, 0)->getValue().c_str());
|
|
|
|
- ASSERT_STREQ("condition", ls::std::core::STLUtils::getListElementAt(attributes, 1)->getName().c_str());
|
|
|
|
- ASSERT_STREQ("false", ls::std::core::STLUtils::getListElementAt(attributes, 1)->getValue().c_str());
|
|
|
|
- ASSERT_STREQ("id", ls::std::core::STLUtils::getListElementAt(attributes, 2)->getName().c_str());
|
|
|
|
- ASSERT_STREQ("D", ls::std::core::STLUtils::getListElementAt(attributes, 2)->getValue().c_str());
|
|
|
|
-
|
|
|
|
- ASSERT_STREQ("state", ls::std::core::STLUtils::getListElementAt(statesChildren, 2)->getName().c_str());
|
|
|
|
- ASSERT_EQ(1, ls::std::core::STLUtils::getListElementAt(statesChildren, 2)->getAttributes().size());
|
|
|
|
- ASSERT_STREQ("id", ls::std::core::STLUtils::getListElementAt(statesChildren, 2)->getAttributes().front()->getName().c_str());
|
|
|
|
- ASSERT_STREQ("C", ls::std::core::STLUtils::getListElementAt(statesChildren, 2)->getAttributes().front()->getValue().c_str());
|
|
|
|
- ASSERT_TRUE(ls::std::core::STLUtils::getListElementAt(statesChildren, 2)->getValue().empty());
|
|
|
|
- ASSERT_EQ(1, ls::std::core::STLUtils::getListElementAt(statesChildren, 2)->getChildren().size());
|
|
|
|
- ASSERT_STREQ("connections", ls::std::core::STLUtils::getListElementAt(statesChildren, 2)->getChildren().front()->getName().c_str());
|
|
|
|
- ASSERT_TRUE(ls::std::core::STLUtils::getListElementAt(statesChildren, 2)->getChildren().front()->getValue().empty());
|
|
|
|
- ASSERT_TRUE(ls::std::core::STLUtils::getListElementAt(statesChildren, 2)->getChildren().front()->getAttributes().empty());
|
|
|
|
- connectionChildren = ls::std::core::STLUtils::getListElementAt(statesChildren, 2)->getChildren().front()->getChildren();
|
|
|
|
|
|
+ ASSERT_STREQ("connectionId", STLUtils::getListElementAt(attributes, 0)->getName().c_str());
|
|
|
|
+ ASSERT_STREQ("BD", STLUtils::getListElementAt(attributes, 0)->getValue().c_str());
|
|
|
|
+ ASSERT_STREQ("condition", STLUtils::getListElementAt(attributes, 1)->getName().c_str());
|
|
|
|
+ ASSERT_STREQ("false", STLUtils::getListElementAt(attributes, 1)->getValue().c_str());
|
|
|
|
+ ASSERT_STREQ("id", STLUtils::getListElementAt(attributes, 2)->getName().c_str());
|
|
|
|
+ ASSERT_STREQ("D", STLUtils::getListElementAt(attributes, 2)->getValue().c_str());
|
|
|
|
+
|
|
|
|
+ ASSERT_STREQ("state", STLUtils::getListElementAt(statesChildren, 2)->getName().c_str());
|
|
|
|
+ ASSERT_EQ(1, STLUtils::getListElementAt(statesChildren, 2)->getAttributes().size());
|
|
|
|
+ ASSERT_STREQ("id", STLUtils::getListElementAt(statesChildren, 2)->getAttributes().front()->getName().c_str());
|
|
|
|
+ ASSERT_STREQ("C", STLUtils::getListElementAt(statesChildren, 2)->getAttributes().front()->getValue().c_str());
|
|
|
|
+ ASSERT_TRUE(STLUtils::getListElementAt(statesChildren, 2)->getValue().empty());
|
|
|
|
+ ASSERT_EQ(1, STLUtils::getListElementAt(statesChildren, 2)->getChildren().size());
|
|
|
|
+ ASSERT_STREQ("connections", STLUtils::getListElementAt(statesChildren, 2)->getChildren().front()->getName().c_str());
|
|
|
|
+ ASSERT_TRUE(STLUtils::getListElementAt(statesChildren, 2)->getChildren().front()->getValue().empty());
|
|
|
|
+ ASSERT_TRUE(STLUtils::getListElementAt(statesChildren, 2)->getChildren().front()->getAttributes().empty());
|
|
|
|
+ connectionChildren = STLUtils::getListElementAt(statesChildren, 2)->getChildren().front()->getChildren();
|
|
ASSERT_EQ(1, connectionChildren.size());
|
|
ASSERT_EQ(1, connectionChildren.size());
|
|
- ASSERT_STREQ("connection", ls::std::core::STLUtils::getListElementAt(connectionChildren, 0)->getName().c_str());
|
|
|
|
- ASSERT_TRUE(ls::std::core::STLUtils::getListElementAt(connectionChildren, 0)->getValue().empty());
|
|
|
|
- attributes = ls::std::core::STLUtils::getListElementAt(connectionChildren, 0)->getAttributes();
|
|
|
|
|
|
+ ASSERT_STREQ("connection", STLUtils::getListElementAt(connectionChildren, 0)->getName().c_str());
|
|
|
|
+ ASSERT_TRUE(STLUtils::getListElementAt(connectionChildren, 0)->getValue().empty());
|
|
|
|
+ attributes = STLUtils::getListElementAt(connectionChildren, 0)->getAttributes();
|
|
ASSERT_EQ(3, attributes.size());
|
|
ASSERT_EQ(3, attributes.size());
|
|
- ASSERT_STREQ("connectionId", ls::std::core::STLUtils::getListElementAt(attributes, 0)->getName().c_str());
|
|
|
|
- ASSERT_STREQ("CE", ls::std::core::STLUtils::getListElementAt(attributes, 0)->getValue().c_str());
|
|
|
|
- ASSERT_STREQ("condition", ls::std::core::STLUtils::getListElementAt(attributes, 1)->getName().c_str());
|
|
|
|
- ASSERT_STREQ("false", ls::std::core::STLUtils::getListElementAt(attributes, 1)->getValue().c_str());
|
|
|
|
- ASSERT_STREQ("id", ls::std::core::STLUtils::getListElementAt(attributes, 2)->getName().c_str());
|
|
|
|
- ASSERT_STREQ("E", ls::std::core::STLUtils::getListElementAt(attributes, 2)->getValue().c_str());
|
|
|
|
-
|
|
|
|
- ASSERT_STREQ("state", ls::std::core::STLUtils::getListElementAt(statesChildren, 3)->getName().c_str());
|
|
|
|
- ASSERT_EQ(1, ls::std::core::STLUtils::getListElementAt(statesChildren, 3)->getAttributes().size());
|
|
|
|
- ASSERT_STREQ("id", ls::std::core::STLUtils::getListElementAt(statesChildren, 3)->getAttributes().front()->getName().c_str());
|
|
|
|
- ASSERT_STREQ("D", ls::std::core::STLUtils::getListElementAt(statesChildren, 3)->getAttributes().front()->getValue().c_str());
|
|
|
|
- ASSERT_TRUE(ls::std::core::STLUtils::getListElementAt(statesChildren, 3)->getChildren().front()->getAttributes().empty());
|
|
|
|
- connectionChildren = ls::std::core::STLUtils::getListElementAt(statesChildren, 3)->getChildren().front()->getChildren();
|
|
|
|
|
|
+ ASSERT_STREQ("connectionId", STLUtils::getListElementAt(attributes, 0)->getName().c_str());
|
|
|
|
+ ASSERT_STREQ("CE", STLUtils::getListElementAt(attributes, 0)->getValue().c_str());
|
|
|
|
+ ASSERT_STREQ("condition", STLUtils::getListElementAt(attributes, 1)->getName().c_str());
|
|
|
|
+ ASSERT_STREQ("false", STLUtils::getListElementAt(attributes, 1)->getValue().c_str());
|
|
|
|
+ ASSERT_STREQ("id", STLUtils::getListElementAt(attributes, 2)->getName().c_str());
|
|
|
|
+ ASSERT_STREQ("E", STLUtils::getListElementAt(attributes, 2)->getValue().c_str());
|
|
|
|
+
|
|
|
|
+ ASSERT_STREQ("state", STLUtils::getListElementAt(statesChildren, 3)->getName().c_str());
|
|
|
|
+ ASSERT_EQ(1, STLUtils::getListElementAt(statesChildren, 3)->getAttributes().size());
|
|
|
|
+ ASSERT_STREQ("id", STLUtils::getListElementAt(statesChildren, 3)->getAttributes().front()->getName().c_str());
|
|
|
|
+ ASSERT_STREQ("D", STLUtils::getListElementAt(statesChildren, 3)->getAttributes().front()->getValue().c_str());
|
|
|
|
+ ASSERT_TRUE(STLUtils::getListElementAt(statesChildren, 3)->getChildren().front()->getAttributes().empty());
|
|
|
|
+ connectionChildren = STLUtils::getListElementAt(statesChildren, 3)->getChildren().front()->getChildren();
|
|
ASSERT_EQ(1, connectionChildren.size());
|
|
ASSERT_EQ(1, connectionChildren.size());
|
|
- ASSERT_STREQ("connection", ls::std::core::STLUtils::getListElementAt(connectionChildren, 0)->getName().c_str());
|
|
|
|
- ASSERT_TRUE(ls::std::core::STLUtils::getListElementAt(connectionChildren, 0)->getValue().empty());
|
|
|
|
- attributes = ls::std::core::STLUtils::getListElementAt(connectionChildren, 0)->getAttributes();
|
|
|
|
|
|
+ ASSERT_STREQ("connection", STLUtils::getListElementAt(connectionChildren, 0)->getName().c_str());
|
|
|
|
+ ASSERT_TRUE(STLUtils::getListElementAt(connectionChildren, 0)->getValue().empty());
|
|
|
|
+ attributes = STLUtils::getListElementAt(connectionChildren, 0)->getAttributes();
|
|
ASSERT_EQ(3, attributes.size());
|
|
ASSERT_EQ(3, attributes.size());
|
|
- ASSERT_STREQ("connectionId", ls::std::core::STLUtils::getListElementAt(attributes, 0)->getName().c_str());
|
|
|
|
- ASSERT_STREQ("DE", ls::std::core::STLUtils::getListElementAt(attributes, 0)->getValue().c_str());
|
|
|
|
- ASSERT_STREQ("condition", ls::std::core::STLUtils::getListElementAt(attributes, 1)->getName().c_str());
|
|
|
|
- ASSERT_STREQ("false", ls::std::core::STLUtils::getListElementAt(attributes, 1)->getValue().c_str());
|
|
|
|
- ASSERT_STREQ("id", ls::std::core::STLUtils::getListElementAt(attributes, 2)->getName().c_str());
|
|
|
|
- ASSERT_STREQ("E", ls::std::core::STLUtils::getListElementAt(attributes, 2)->getValue().c_str());
|
|
|
|
-
|
|
|
|
- ASSERT_STREQ("state", ls::std::core::STLUtils::getListElementAt(statesChildren, 4)->getName().c_str());
|
|
|
|
- ASSERT_EQ(1, ls::std::core::STLUtils::getListElementAt(statesChildren, 4)->getAttributes().size());
|
|
|
|
- ASSERT_STREQ("id", ls::std::core::STLUtils::getListElementAt(statesChildren, 4)->getAttributes().front()->getName().c_str());
|
|
|
|
- ASSERT_STREQ("E", ls::std::core::STLUtils::getListElementAt(statesChildren, 4)->getAttributes().front()->getValue().c_str());
|
|
|
|
- ASSERT_TRUE(ls::std::core::STLUtils::getListElementAt(statesChildren, 4)->getChildren().empty());
|
|
|
|
|
|
+ ASSERT_STREQ("connectionId", STLUtils::getListElementAt(attributes, 0)->getName().c_str());
|
|
|
|
+ ASSERT_STREQ("DE", STLUtils::getListElementAt(attributes, 0)->getValue().c_str());
|
|
|
|
+ ASSERT_STREQ("condition", STLUtils::getListElementAt(attributes, 1)->getName().c_str());
|
|
|
|
+ ASSERT_STREQ("false", STLUtils::getListElementAt(attributes, 1)->getValue().c_str());
|
|
|
|
+ ASSERT_STREQ("id", STLUtils::getListElementAt(attributes, 2)->getName().c_str());
|
|
|
|
+ ASSERT_STREQ("E", STLUtils::getListElementAt(attributes, 2)->getValue().c_str());
|
|
|
|
+
|
|
|
|
+ ASSERT_STREQ("state", STLUtils::getListElementAt(statesChildren, 4)->getName().c_str());
|
|
|
|
+ ASSERT_EQ(1, STLUtils::getListElementAt(statesChildren, 4)->getAttributes().size());
|
|
|
|
+ ASSERT_STREQ("id", STLUtils::getListElementAt(statesChildren, 4)->getAttributes().front()->getName().c_str());
|
|
|
|
+ ASSERT_STREQ("E", STLUtils::getListElementAt(statesChildren, 4)->getAttributes().front()->getValue().c_str());
|
|
|
|
+ ASSERT_TRUE(STLUtils::getListElementAt(statesChildren, 4)->getChildren().empty());
|
|
|
|
|
|
// current state
|
|
// current state
|
|
|
|
|
|
- ASSERT_STREQ("currentState", ls::std::core::STLUtils::getListElementAt(children, 1)->getName().c_str());
|
|
|
|
- ASSERT_STREQ("A", ls::std::core::STLUtils::getListElementAt(children, 1)->getValue().c_str());
|
|
|
|
- ASSERT_TRUE(ls::std::core::STLUtils::getListElementAt(children, 1)->getChildren().empty());
|
|
|
|
- ASSERT_TRUE(ls::std::core::STLUtils::getListElementAt(children, 1)->getAttributes().empty());
|
|
|
|
|
|
+ ASSERT_STREQ("currentState", STLUtils::getListElementAt(children, 1)->getName().c_str());
|
|
|
|
+ ASSERT_STREQ("A", STLUtils::getListElementAt(children, 1)->getValue().c_str());
|
|
|
|
+ ASSERT_TRUE(STLUtils::getListElementAt(children, 1)->getChildren().empty());
|
|
|
|
+ ASSERT_TRUE(STLUtils::getListElementAt(children, 1)->getAttributes().empty());
|
|
|
|
|
|
// memory
|
|
// memory
|
|
|
|
|
|
- memoryChildren = ls::std::core::STLUtils::getListElementAt(children, 2)->getChildren();
|
|
|
|
|
|
+ memoryChildren = STLUtils::getListElementAt(children, 2)->getChildren();
|
|
ASSERT_EQ(3, memoryChildren.size());
|
|
ASSERT_EQ(3, memoryChildren.size());
|
|
|
|
|
|
- ASSERT_STREQ("location", ls::std::core::STLUtils::getListElementAt(memoryChildren, 0)->getName().c_str());
|
|
|
|
- ASSERT_STREQ("A", ls::std::core::STLUtils::getListElementAt(memoryChildren, 0)->getValue().c_str());
|
|
|
|
- ASSERT_TRUE(ls::std::core::STLUtils::getListElementAt(memoryChildren, 0)->getChildren().empty());
|
|
|
|
- ASSERT_TRUE(ls::std::core::STLUtils::getListElementAt(memoryChildren, 0)->getAttributes().empty());
|
|
|
|
|
|
+ ASSERT_STREQ("location", STLUtils::getListElementAt(memoryChildren, 0)->getName().c_str());
|
|
|
|
+ ASSERT_STREQ("A", STLUtils::getListElementAt(memoryChildren, 0)->getValue().c_str());
|
|
|
|
+ ASSERT_TRUE(STLUtils::getListElementAt(memoryChildren, 0)->getChildren().empty());
|
|
|
|
+ ASSERT_TRUE(STLUtils::getListElementAt(memoryChildren, 0)->getAttributes().empty());
|
|
|
|
|
|
- ASSERT_STREQ("location", ls::std::core::STLUtils::getListElementAt(memoryChildren, 1)->getName().c_str());
|
|
|
|
- ASSERT_STREQ("B", ls::std::core::STLUtils::getListElementAt(memoryChildren, 1)->getValue().c_str());
|
|
|
|
- ASSERT_TRUE(ls::std::core::STLUtils::getListElementAt(memoryChildren, 1)->getChildren().empty());
|
|
|
|
- ASSERT_TRUE(ls::std::core::STLUtils::getListElementAt(memoryChildren, 1)->getAttributes().empty());
|
|
|
|
|
|
+ ASSERT_STREQ("location", STLUtils::getListElementAt(memoryChildren, 1)->getName().c_str());
|
|
|
|
+ ASSERT_STREQ("B", STLUtils::getListElementAt(memoryChildren, 1)->getValue().c_str());
|
|
|
|
+ ASSERT_TRUE(STLUtils::getListElementAt(memoryChildren, 1)->getChildren().empty());
|
|
|
|
+ ASSERT_TRUE(STLUtils::getListElementAt(memoryChildren, 1)->getAttributes().empty());
|
|
|
|
|
|
- ASSERT_STREQ("location", ls::std::core::STLUtils::getListElementAt(memoryChildren, 2)->getName().c_str());
|
|
|
|
- ASSERT_STREQ("C", ls::std::core::STLUtils::getListElementAt(memoryChildren, 2)->getValue().c_str());
|
|
|
|
- ASSERT_TRUE(ls::std::core::STLUtils::getListElementAt(memoryChildren, 2)->getChildren().empty());
|
|
|
|
- ASSERT_TRUE(ls::std::core::STLUtils::getListElementAt(memoryChildren, 2)->getAttributes().empty());
|
|
|
|
|
|
+ ASSERT_STREQ("location", STLUtils::getListElementAt(memoryChildren, 2)->getName().c_str());
|
|
|
|
+ ASSERT_STREQ("C", STLUtils::getListElementAt(memoryChildren, 2)->getValue().c_str());
|
|
|
|
+ ASSERT_TRUE(STLUtils::getListElementAt(memoryChildren, 2)->getChildren().empty());
|
|
|
|
+ ASSERT_TRUE(STLUtils::getListElementAt(memoryChildren, 2)->getAttributes().empty());
|
|
}
|
|
}
|
|
|
|
|
|
TEST_F(XmlParserTest, getDocument)
|
|
TEST_F(XmlParserTest, getDocument)
|
|
{
|
|
{
|
|
- ::std::string xmlPath = ls_std_test::TestHelper::getResourcesFolderLocation() + "state_machine_test.xml";
|
|
|
|
- ls::std::io::XmlParser xmlParser{::std::make_shared<ls::std::io::XmlDocument>()};
|
|
|
|
|
|
+ string xmlPath = TestHelper::getResourcesFolderLocation() + "state_machine_test.xml";
|
|
|
|
+ XmlParser xmlParser{make_shared<XmlDocument>()};
|
|
|
|
|
|
ASSERT_TRUE(xmlParser.getDocument() != nullptr);
|
|
ASSERT_TRUE(xmlParser.getDocument() != nullptr);
|
|
}
|
|
}
|
|
|
|
|
|
TEST_F(XmlParserTest, setDocument)
|
|
TEST_F(XmlParserTest, setDocument)
|
|
{
|
|
{
|
|
- ::std::string xmlPath = ls_std_test::TestHelper::getResourcesFolderLocation() + "state_machine_test.xml";
|
|
|
|
- ::std::shared_ptr<ls::std::io::XmlDocument> document = ::std::make_shared<ls::std::io::XmlDocument>();
|
|
|
|
- ls::std::io::XmlParser xmlParser{document};
|
|
|
|
|
|
+ string xmlPath = TestHelper::getResourcesFolderLocation() + "state_machine_test.xml";
|
|
|
|
+ shared_ptr<XmlDocument> document = make_shared<XmlDocument>();
|
|
|
|
+ XmlParser xmlParser{document};
|
|
ASSERT_TRUE(xmlParser.getDocument() == document);
|
|
ASSERT_TRUE(xmlParser.getDocument() == document);
|
|
|
|
|
|
- document = ::std::make_shared<ls::std::io::XmlDocument>();
|
|
|
|
|
|
+ document = make_shared<XmlDocument>();
|
|
xmlParser.setDocument(document);
|
|
xmlParser.setDocument(document);
|
|
ASSERT_TRUE(xmlParser.getDocument() == document);
|
|
ASSERT_TRUE(xmlParser.getDocument() == document);
|
|
}
|
|
}
|
|
|
|
|
|
TEST_F(XmlParserTest, setDocument_no_reference)
|
|
TEST_F(XmlParserTest, setDocument_no_reference)
|
|
{
|
|
{
|
|
- ::std::shared_ptr<ls::std::io::XmlDocument> document = ::std::make_shared<ls::std::io::XmlDocument>();
|
|
|
|
- ls::std::io::XmlParser xmlParser{document};
|
|
|
|
|
|
+ shared_ptr<XmlDocument> document = make_shared<XmlDocument>();
|
|
|
|
+ XmlParser xmlParser{document};
|
|
|
|
|
|
EXPECT_THROW({
|
|
EXPECT_THROW({
|
|
try
|
|
try
|
|
{
|
|
{
|
|
xmlParser.setDocument(nullptr);
|
|
xmlParser.setDocument(nullptr);
|
|
}
|
|
}
|
|
- catch (const ls::std::core::IllegalArgumentException &_exception)
|
|
|
|
|
|
+ catch (const IllegalArgumentException &_exception)
|
|
{
|
|
{
|
|
throw;
|
|
throw;
|
|
}
|
|
}
|
|
- }, ls::std::core::IllegalArgumentException);
|
|
|
|
|
|
+ }, IllegalArgumentException);
|
|
}
|
|
}
|
|
}
|
|
}
|