def setUp(self): self.etree = ElementTree() self.etree.parse(StringIO(RESPONSE)) self.msr = MultiStatusResponse(self.etree.getroot())
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
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)