Exemple #1
0
    def test_node_GeneralRest(self):
        ServiceFactory.clear()

        root = TemplateNode()
        self.assertIsNotNone(root)
        self.assertIsNotNone(root.children)
        self.assertEqual(len(root.children), 0)

        node = TemplateSRAIXNode()
        self.assertIsNotNone(node)
        node._default = "unknown"

        node._host = TemplateWordNode("hostname")
        node._method = TemplateWordNode("POST")
        node._query = TemplateWordNode('"userid":"1234567890"')
        node._header = TemplateWordNode('"Content-Type":"application/json"')
        node._body = TemplateWordNode("Hello")

        self.assertEqual("hostname", node._host.word)

        root.append(node)
        self.assertEqual(len(root.children), 1)

        with self.assertRaises(Exception):
            node.resolve_to_string(self._client_context)

        self.assertEqual(
            '[SRAIX (host=hostname, default=unknown, method=POST, ' +
            'query={"userid":"1234567890"}, header={"Content-Type":"application/json"}, '
            + 'body=Hello)]', node.to_string())
Exemple #2
0
    def test_node_PublishedBot(self):
        root = TemplateNode()
        self.assertIsNotNone(root)
        self.assertIsNotNone(root.children)
        self.assertEqual(len(root.children), 0)

        node = TemplateSRAIXNode()
        self.assertIsNotNone(node)
        node._botName = "testbot"
        node._default = "unknown"

        node._locale = TemplateWordNode("ja-JP")
        node._time = TemplateWordNode("2019-01-01T00:00:00+09:00")
        node._userId = TemplateWordNode("1234567890")
        node._topic = TemplateWordNode("*")
        node._deleteVariable = TemplateWordNode("false")
        node._metadata = TemplateWordNode("1234567890")
        node._config = TemplateWordNode('{"config":{"logLevel":"debug"}}')
        node.append(TemplateWordNode("Hello"))

        self.assertEqual("testbot", node.botName)

        root.append(node)
        self.assertEqual(len(root.children), 1)

        with self.assertRaises(Exception):
            node.resolve_to_string(self._client_context)

        self.assertEqual(
            '[SRAIX (botName=testbot, default=unknown, locale=ja-JP, ' +
            'time=2019-01-01T00:00:00+09:00, userId=1234567890, topic=*, ' +
            'deleteVariable=false, metadata=1234567890, ' +
            'config={"config":{"logLevel":"debug"}})]', node.to_string())
Exemple #3
0
    def test_to_xml_PublishedBot(self):
        root = TemplateNode()

        node = TemplateSRAIXNode()
        node._botName = "testbot"
        node._default = "unknown"
        root.append(node)

        node._locale = TemplateWordNode("ja-JP")
        node._time = TemplateWordNode("2019-01-01T00:00:00+09:00")
        node._userId = TemplateWordNode("1234567890")
        node._topic = TemplateWordNode("*")
        node._deleteVariable = TemplateWordNode("false")
        node._metadata = TemplateWordNode("1234567890")
        node._config = TemplateWordNode('{"config":{"logLevel":"debug"}}')
        node.append(TemplateWordNode("Hello"))

        with self.assertRaises(Exception):
            node.resolve_to_string(self._client_context)

        xml = root.xml_tree(self._client_context)
        self.assertIsNotNone(xml)
        xml_str = ET.tostring(xml, "utf-8").decode("utf-8")
        self.assertEqual(
            '<template><sraix botName="testbot" default="unknown">' +
            '<locale>ja-JP</locale><time>2019-01-01T00:00:00+09:00</time><userId>1234567890</userId>'
            +
            '<topic>*</topic><deleteVariable>false</deleteVariable><metadata>1234567890</metadata>'
            +
            '<config>{"config":{"logLevel":"debug"}}</config>Hello</sraix></template>',
            xml_str)
Exemple #4
0
    def test_to_xml_CustomService_only_service(self):
        root = TemplateNode()
        node = TemplateSRAIXNode()
        node.service = "api"
        node.append(TemplateWordNode("Hello"))
        root.append(node)

        with self.assertRaises(Exception):
            node.resolve_to_string(self._client_context)

        xml = root.xml_tree(self._client_context)
        self.assertIsNotNone(xml)
        xml_str = ET.tostring(xml, "utf-8").decode("utf-8")
        self.assertEqual(
            '<template><sraix service="api">Hello</sraix></template>', xml_str)
Exemple #5
0
    def test_to_xml_GeneralRest_only_host(self):
        root = TemplateNode()
        node = TemplateSRAIXNode()
        node._host = TemplateWordNode("hostname")
        root.append(node)

        with self.assertRaises(Exception):
            node.resolve_to_string(self._client_context)

        xml = root.xml_tree(self._client_context)
        self.assertIsNotNone(xml)
        xml_str = ET.tostring(xml, "utf-8").decode("utf-8")
        self.assertEqual(
            '<template><sraix><host>hostname</host></sraix></template>',
            xml_str)
    def test_to_xml_PublishedBot_only_botid(self):
        root = TemplateNode()
        node = TemplateSRAIXNode()
        node._botId = "publishedBot"
        node.append(TemplateWordNode("Hello"))
        root.append(node)

        with self.assertRaises(Exception):
            node.resolve_to_string(self._client_context)

        xml = root.xml_tree(self._client_context)
        self.assertIsNotNone(xml)
        xml_str = ET.tostring(xml, "utf-8").decode("utf-8")
        self.assertEqual(
            '<template><sraix botId="publishedBot">Hello</sraix></template>',
            xml_str)
Exemple #7
0
    def test_to_xml_no_service(self):
        root = TemplateNode()

        node = TemplateSRAIXNode()

        root.append(node)
        node.append(TemplateWordNode("Hello"))

        result = node.resolve_to_string(self._client_context)
        self.assertEqual('', result)
Exemple #8
0
    def test_node_CustomService(self):
        root = TemplateNode()
        self.assertIsNotNone(root)
        self.assertIsNotNone(root.children)
        self.assertEqual(len(root.children), 0)

        node = TemplateSRAIXNode()
        self.assertIsNotNone(node)
        node.service = "api"
        node._default = "unknown"

        self.assertEqual("api", node.service)

        root.append(node)
        self.assertEqual(len(root.children), 1)

        with self.assertRaises(Exception):
            node.resolve_to_string(self._client_context)

        self.assertEqual("[SRAIX (service=api, default=unknown)]",
                         node.to_string())
Exemple #9
0
    def test_to_xml_GeneralRest(self):
        root = TemplateNode()

        node = TemplateSRAIXNode()
        node._default = "unknown"
        root.append(node)

        node._host = TemplateWordNode("hostname")
        node._method = TemplateWordNode("POST")
        node._query = TemplateWordNode('"userid":"1234567890"')
        node._header = TemplateWordNode('"Content-Type":"application/json"')
        node._body = TemplateWordNode("Hello")

        with self.assertRaises(Exception):
            node.resolve_to_string(self._client_context)

        xml = root.xml_tree(self._client_context)
        self.assertIsNotNone(xml)
        xml_str = ET.tostring(xml, "utf-8").decode("utf-8")
        self.assertEqual(
            '<template><sraix default="unknown"><host>hostname</host><method>POST</method><query>"userid":"1234567890"</query>'
            +
            '<header>"Content-Type":"application/json"</header><body>Hello</body>'
            + '</sraix></template>', xml_str)