def test_to_string_pattern(self): node1 = PatternRegexNode({}, "^LEGION$") self.assertEqual(node1.to_string(verbose=False), "REGEX pattern=[^LEGION$]") self.assertEqual(node1.to_string(verbose=True), "REGEX [*] [P(0)^(0)#(0)C(0)_(0)*(0)To(0)Th(0)Te(0)] pattern=[^LEGION$]") node2 = PatternRegexNode({}, "^LEGION$", userid="testid") self.assertEqual(node2.to_string(verbose=False), "REGEX pattern=[^LEGION$]") self.assertEqual(node2.to_string(verbose=True), "REGEX [testid] [P(0)^(0)#(0)C(0)_(0)*(0)To(0)Th(0)Te(0)] pattern=[^LEGION$]")
def test_to_string_template(self): node1 = PatternRegexNode({"template": "LEGION"}, "") self.assertEqual(node1.to_string(verbose=False), "REGEX template=[LEGION]") self.assertEqual(node1.to_string(verbose=True), "REGEX [*] [P(0)^(0)#(0)C(0)_(0)*(0)To(0)Th(0)Te(0)] template=[LEGION]") node2 = PatternRegexNode({"template": "LEGION"}, "", userid="testid") self.assertEqual(node2.to_string(verbose=False), "REGEX template=[LEGION]") self.assertEqual(node2.to_string(verbose=True), "REGEX [testid] [P(0)^(0)#(0)C(0)_(0)*(0)To(0)Th(0)Te(0)] template=[LEGION]")
def test_to_string_form(self): node1 = PatternRegexNode({"form": "今[はわ]何時"}, "") self.assertEqual(node1.to_string(verbose=False), "REGEX form=[今[はわ]何時]") self.assertEqual(node1.to_string(verbose=True), "REGEX [*] [P(0)^(0)#(0)C(0)_(0)*(0)To(0)Th(0)Te(0)] form=[今[はわ]何時]") node2 = PatternRegexNode({"form": "今[はわ]何時"}, "", userid="testid") self.assertEqual(node2.to_string(verbose=False), "REGEX form=[今[はわ]何時]") self.assertEqual(node2.to_string(verbose=True), "REGEX [testid] [P(0)^(0)#(0)C(0)_(0)*(0)To(0)Th(0)Te(0)] form=[今[はわ]何時]")
def test_init_template(self): node = PatternRegexNode({"template": "LEGION"}, "") self.assertIsNotNone(node) self.assertFalse(node.is_root()) self.assertFalse(node.is_priority()) self.assertFalse(node.is_wildcard()) self.assertFalse(node.is_zero_or_more()) self.assertFalse(node.is_one_or_more()) self.assertFalse(node.is_set()) self.assertFalse(node.is_bot()) self.assertTrue(node.is_regex()) self.assertFalse(node.is_template()) self.assertFalse(node.is_that()) self.assertFalse(node.is_topic()) self.assertFalse(node.is_wildcard()) self.assertIsNotNone(node.children) self.assertFalse(node.has_children()) self.assertTrue( node.equivalent(PatternRegexNode({"template": "LEGION"}, ""))) self.assertEqual( node.to_string(), "REGEX [P(0)^(0)#(0)C(0)_(0)*(0)To(0)Th(0)Te(0)] template=[LEGION]" ) self.assertEqual('<regex template="LEGION"></regex>\n', node.to_xml(self._bot, self._clientid))
def test_init_pattern(self): node = PatternRegexNode({}, "^LEGION$") self.assertIsNotNone(node) self.assertFalse(node.is_root()) self.assertFalse(node.is_priority()) self.assertFalse(node.is_wildcard()) self.assertFalse(node.is_zero_or_more()) self.assertFalse(node.is_one_or_more()) self.assertFalse(node.is_set()) self.assertFalse(node.is_bot()) self.assertTrue(node.is_regex()) self.assertFalse(node.is_template()) self.assertFalse(node.is_that()) self.assertFalse(node.is_topic()) self.assertFalse(node.is_wildcard()) self.assertIsNotNone(node.children) self.assertFalse(node.has_children()) self.assertTrue(node.equivalent(PatternRegexNode({}, "^LEGION$"))) self.assertEqual( node.to_string(), "REGEX [P(0)^(0)#(0)C(0)_(0)*(0)To(0)Th(0)Te(0)] pattern=[^LEGION$]" )