예제 #1
0
    def test_matches_widlcard(self):
        var = XmlVar(wildcard=True, name="foo", qname="foo")
        self.assertTrue(var.matches("*"))
        self.assertTrue(var.matches("a"))

        var = XmlVar(wildcard=True,
                     name="foo",
                     qname="foo",
                     namespaces=["tns"])
        self.assertFalse(var.matches("a"))
        self.assertTrue(var.matches("{tns}a"))

        var = XmlVar(wildcard=True,
                     name="foo",
                     qname="foo",
                     namespaces=["##any"])
        self.assertTrue(var.matches("a"))
        self.assertTrue(var.matches("{tns}a"))

        var = XmlVar(wildcard=True, name="foo", qname="foo", namespaces=[""])
        self.assertTrue(var.matches("a"))
        self.assertFalse(var.matches("{tns}a"))

        var = XmlVar(wildcard=True,
                     name="foo",
                     qname="foo",
                     namespaces=["!tns"])
        self.assertTrue(var.matches("{foo}a"))
        self.assertFalse(var.matches("{tns}a"))
예제 #2
0
    def test_find_choice(self):
        choices = [
            XmlVar(element=True, name="a", qname="{a}a"),
            XmlVar(element=True, name="b", qname="b"),
        ]
        var = XmlVar(elements=True, name="foo", qname="foo", choices=choices)

        self.assertFalse(var.matches("a"))
        self.assertIsNone(var.find_choice("a"))

        self.assertEqual(choices[0], var.find_choice("{a}a"))
        self.assertTrue(var.matches("{a}a"))

        self.assertEqual(choices[1], var.find_choice("b"))
        self.assertTrue(var.matches("b"))
예제 #3
0
 def test_matches(self):
     var = XmlVar(name="foo", qname="foo")
     self.assertTrue(var.matches("*"))
     self.assertTrue(var.matches(var.qname))
     self.assertFalse(var.matches("bar"))
예제 #4
0
 def test_matches(self):
     var = XmlVar(name="foo", qname=QName("foo"))
     self.assertTrue(var.matches(QNames.ALL))
     self.assertTrue(var.matches(var.qname))
     self.assertFalse(var.matches(QName("bar")))