Example #1
0
 def setUp(self):
     self.etree = ElementTree()
     self.etree.parse(StringIO(RESPONSE))
     self.msr = MultiStatusResponse(self.etree.getroot())
Example #2
0
 def setUp(self):
     self.etree = ElementTree()
     self.etree.parse(StringIO(RESPONSE))
     self.msr = MultiStatusResponse(self.etree.getroot())
Example #3
0
class MultiStatusResponseTestCase(unittest.TestCase):
    """Test the MultiStatusResponse class."""
    def setUp(self):
        self.etree = ElementTree()
        self.etree.parse(StringIO(RESPONSE))
        self.msr = MultiStatusResponse(self.etree.getroot())

    def test_init(self):
        """Test initializing the MultiStatusResponse."""
        assert self.msr == 200

    def test_repr(self):
        """Test MultiStatusResponse.__repr__."""
        assert repr(self.msr) == "<MultiStatusResponse: 200>"

    def test_getitem(self):
        """Test MultiStatusResponse.__getitem__."""
        assert self.msr["getetag"].text == "6ca7-364-475e65375ce80"
        assert self.msr["{DC:}author"].text == "Me"
        with pytest.raises(KeyError):
            self.msr['non-existant']

    def test_keys(self):
        """Test MultiStatusResponse.keys."""
        expect = ['getetag', '{DC:}created', '{DC:}resource', '{DC:}author']
        expect.sort()
        keys = list(self.msr.keys())
        keys.sort()
        assert keys == expect

    def test_iter(self):
        """Test MultiStatusResponse.__iter__."""
        expect = ['getetag', '{DC:}created', '{DC:}resource', '{DC:}author']
        expect.sort()
        keys = list(self.msr)
        keys.sort()
        assert keys == expect

    def test_iterkeys(self):
        """Test MultiStatusResponse.iterkeys."""
        expect = ['getetag', '{DC:}created', '{DC:}resource', '{DC:}author']
        expect.sort()
        keys = list(self.msr.keys())
        keys.sort()
        assert keys == expect

    def test_items(self):
        """Test MultiStatusResponse.items."""
        expect = [('getetag', '6ca7-364-475e65375ce80'),
                  ('{DC:}created', None), ('{DC:}resource', None),
                  ('{DC:}author', 'Me')]
        expect.sort()
        items = list((k, v.text) for (k, v) in self.msr.items())
        items.sort()
        assert items == expect

    def test_iteritems(self):
        """Test MultiStatusResponse.iteritems."""
        expect = [('getetag', '6ca7-364-475e65375ce80'),
                  ('{DC:}created', None), ('{DC:}resource', None),
                  ('{DC:}author', 'Me')]
        expect.sort()
        items = list((k, v.text) for (k, v) in self.msr.items())
        items.sort()
        assert items == expect

    def test_get(self):
        """Test MultiStatusResponse.get."""
        assert self.msr.get("{DC:}author").text == "Me"
        assert self.msr.get("author", namespace="DC:").text == "Me"
        assert self.msr.get("non-existant", "You") == "You"

    def test_statusline(self):
        """Test MultiStatusResponse.statusline property."""
        assert self.msr.statusline == "HTTP/1.1 200 OK"

    def test_href(self):
        """Test MultiStatusResponse.href property."""
        assert self.msr.href == \
            "/3/38/38f/38fa476aa97a4b2baeb41a481fdca00b"

    def test_namespaces(self):
        """Test MultiStatusResponse.namespaces property."""
        expect = set(["DC:", "DAV:"])
        self.msr.keys = lambda b: ["foo", "bar", "{DC:}x", "{DAV:}y"]
        assert self.msr.namespaces == expect
Example #4
0
class MultiStatusResponseTestCase(unittest.TestCase):
    """Test the MultiStatusResponse class."""
    def setUp(self):
        self.etree = ElementTree()
        self.etree.parse(StringIO(RESPONSE))
        self.msr = MultiStatusResponse(self.etree.getroot())

    def test_init(self):
        """Test initializing the MultiStatusResponse."""
        self.assertEqual(self.msr, 200)

    def test_repr(self):
        """Test MultiStatusResponse.__repr__."""
        self.assertEqual(repr(self.msr), "<MultiStatusResponse: 200>")

    def test_getitem(self):
        """Test MultiStatusResponse.__getitem__."""
        self.assertEqual(self.msr["getetag"].text, "6ca7-364-475e65375ce80")
        self.assertEqual(self.msr["{DC:}author"].text, "Me")
        self.assertRaises(KeyError, lambda: self.msr['non-existant'])

    def test_keys(self):
        """Test MultiStatusResponse.keys."""
        expect = ['getetag', '{DC:}created', '{DC:}resource', '{DC:}author']
        expect.sort()
        keys = self.msr.keys()
        keys.sort()
        self.assertEqual(keys, expect)

    def test_iter(self):
        """Test MultiStatusResponse.__iter__."""
        expect = ['getetag', '{DC:}created', '{DC:}resource', '{DC:}author']
        expect.sort()
        keys = list(self.msr)
        keys.sort()
        self.assertEqual(keys, expect)

    def test_iterkeys(self):
        """Test MultiStatusResponse.iterkeys."""
        expect = ['getetag', '{DC:}created', '{DC:}resource', '{DC:}author']
        expect.sort()
        keys = list(self.msr.iterkeys())
        keys.sort()
        self.assertEqual(keys, expect)

    def test_items(self):
        """Test MultiStatusResponse.items."""
        expect = [('getetag', '6ca7-364-475e65375ce80'),
                  ('{DC:}created', None),
                  ('{DC:}resource', None),
                  ('{DC:}author', 'Me')]
        expect.sort()
        items = list((k, v.text) for (k, v) in self.msr.items())
        items.sort()
        self.assertEqual(items, expect)

    def test_iteritems(self):
        """Test MultiStatusResponse.iteritems."""
        expect = [('getetag', '6ca7-364-475e65375ce80'),
                  ('{DC:}created', None),
                  ('{DC:}resource', None),
                  ('{DC:}author', 'Me')]
        expect.sort()
        items = list((k, v.text) for (k, v) in self.msr.iteritems())
        items.sort()
        self.assertEqual(items, expect)

    def test_get(self):
        """Test MultiStatusResponse.get."""
        self.assertEqual(self.msr.get("{DC:}author").text, "Me")
        self.assertEqual(self.msr.get("author", namespace="DC:").text, "Me")
        self.assertEqual(self.msr.get("non-existant", "You"), "You")

    def test_statusline(self):
        """Test MultiStatusResponse.statusline property."""
        self.assertEqual(self.msr.statusline, "HTTP/1.1 200 OK")

    def test_href(self):
        """Test MultiStatusResponse.href property."""
        self.assertEqual(self.msr.href,
                         "/3/38/38f/38fa476aa97a4b2baeb41a481fdca00b")

    def test_namespaces(self):
        """Test MultiStatusResponse.namespaces property."""
        expect = set(["DC:", "DAV:"])
        self.msr.iterkeys = lambda b: ["foo", "bar", "{DC:}x", "{DAV:}y"]
        self.assertEqual(self.msr.namespaces, expect)