예제 #1
0
    def test_resolve_with_no_defaults(self):
        root = TemplateNode()
        self.assertIsNotNone(root)
        self.assertIsNotNone(root.children)
        self.assertEqual(len(root.children), 0)

        node = TemplateResponseNode(index=1)
        self.assertIsNotNone(node)
        self.assertEqual(1, node.index)

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

        conversation = Conversation("testid", self._bot)

        question = Question.create_from_text(self._bot.brain.tokenizer,
                                             "Hello1 question")
        question.current_sentence()._response = "Hello1 response"
        conversation.record_dialog(question)

        question = Question.create_from_text(self._bot.brain.tokenizer,
                                             "Hello quesiton2")
        question.current_sentence()._response = "Hello2 response"
        conversation.record_dialog(question)

        self._bot._conversations["testid"] = conversation

        response = root.resolve(self._bot, "testid")
        self.assertIsNotNone(response)
        self.assertEqual(response, "Hello1 response")
예제 #2
0
    def test_resolve_with_defaults(self):
        root = TemplateNode()
        self.assertIsNotNone(root)
        self.assertIsNotNone(root.children)
        self.assertEqual(len(root.children), 0)

        node = TemplateResponseNode()
        self.assertIsNotNone(node)
        self.assertIsInstance(node.index, TemplateNode)

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

        conversation = Conversation(self._client_context)

        question = Question.create_from_text(self._client_context,
                                             "Hello1 question")
        question.current_sentence()._response = "Hello1 response"
        conversation.record_dialog(question)

        question = Question.create_from_text(self._client_context,
                                             "Hello quesiton2")
        question.current_sentence()._response = "Hello2 response"
        conversation.record_dialog(question)

        self._client_context.bot._conversation_mgr._conversations[
            "testid"] = conversation

        response = root.resolve(self._client_context)
        self.assertIsNotNone(response)
        self.assertEqual(response, "Hello1 response")
예제 #3
0
    def test_to_xml_defaults(self):
        root = TemplateNode()
        node = TemplateResponseNode()
        root.append(node)

        xml = root.xml_tree(self._bot, self._clientid)
        self.assertIsNotNone(xml)
        xml_str = ET.tostring(xml, "utf-8").decode("utf-8")
        self.assertEqual("<template><response /></template>", xml_str)
예제 #4
0
    def test_to_xml_no_defaults(self):
        root = TemplateNode()
        node = TemplateResponseNode(index=3)
        root.append(node)

        xml = root.xml_tree(self._client_context)
        self.assertIsNotNone(xml)
        xml_str = ET.tostring(xml, "utf-8").decode("utf-8")
        self.assertEqual('<template><response index="3" /></template>', xml_str)
예제 #5
0
    def test_to_xml_no_defaults(self):
        root = TemplateNode()
        node = TemplateResponseNode(position=2, index=3)
        root.append(node)

        xml = root.xml_tree(self.bot, self.clientid)
        self.assertIsNotNone(xml)
        xml_str = ET.tostring(xml, "utf-8").decode("utf-8")
        self.assertEqual(
            '<template><response index="3" position="2" /></template>',
            xml_str)
예제 #6
0
    def test_node_no_defaults(self):
        root = TemplateNode()
        self.assertIsNotNone(root)
        self.assertIsNotNone(root.children)
        self.assertEqual(len(root.children), 0)

        node = TemplateResponseNode(position=3, index=2)
        self.assertIsNotNone(node)

        root.append(node)
        self.assertEqual(len(root.children), 1)
        self.assertEqual(2, node.index)
        self.assertEqual(3, node.position)
예제 #7
0
    def test_node(self):
        root = TemplateNode()
        self.assertIsNotNone(root)
        self.assertIsNotNone(root.children)
        self.assertEqual(len(root.children), 0)

        node = TemplateResponseNode()
        self.assertIsNotNone(node)

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

        conversation = Conversation("testid", self.bot)
        question = Question.create_from_text("Hello world")
        question.current_sentence()._response = "Hello Matey"
        conversation._questions.append(question)
        self.bot._conversations["testid"] = conversation

        response = root.resolve(self.bot, "testid")
        self.assertIsNotNone(response)
        self.assertEqual(response, "Hello Matey")
예제 #8
0
 def test_to_str_no_defaults(self):
     node = TemplateResponseNode(index=2)
     self.assertEquals("RESPONSE index=2", node.to_string())
예제 #9
0
 def test_to_str_defaults(self):
     node = TemplateResponseNode()
     self.assertEquals("RESPONSE", node.to_string())
예제 #10
0
 def __init__(self):
     TemplateResponseNode.__init__(self)
예제 #11
0
 def test_to_str_no_defaults(self):
     node = TemplateResponseNode(index=2)
     self.assertEqual("[RESPONSE[WORD]2]", node.to_string())
예제 #12
0
 def test_to_str_no_defaults(self):
     node = TemplateResponseNode(index=2)
     self.assertEquals("RESPONSE index=2", node.to_string())
예제 #13
0
 def test_to_str_defaults(self):
     node = TemplateResponseNode()
     self.assertEquals("RESPONSE", node.to_string())
예제 #14
0
 def __init__(self):
     TemplateResponseNode.__init__(self)