dulwich-users team mailing list archive
-
dulwich-users team
-
Mailing list archive
-
Message #00161
[PATCH 5/8] test_web: Simplify assertions about Content-Type.
From: Dave Borowitz <dborowitz@xxxxxxxxxx>
Change-Id: I377dd8a02a93aa7ffe534ae5452a306677d5fc83
---
dulwich/tests/test_web.py | 25 ++++++++++++++-----------
1 files changed, 14 insertions(+), 11 deletions(-)
diff --git a/dulwich/tests/test_web.py b/dulwich/tests/test_web.py
index f82ee38..64ccab2 100644
--- a/dulwich/tests/test_web.py
+++ b/dulwich/tests/test_web.py
@@ -55,7 +55,7 @@ from utils import make_object
class WebTestCase(TestCase):
- """Base TestCase that sets up some useful instance vars."""
+ """Base TestCase with useful instance vars and utility functions."""
def setUp(self):
super(WebTestCase, self).setUp()
@@ -74,6 +74,9 @@ class WebTestCase(TestCase):
def _handlers(self):
return None
+ def assertContentTypeEquals(self, expected):
+ self.assertTrue(('Content-Type', expected) in self._headers)
+
class DumbHandlersTestCase(WebTestCase):
@@ -83,10 +86,10 @@ class DumbHandlersTestCase(WebTestCase):
def test_send_file(self):
f = StringIO('foobar')
- output = ''.join(send_file(self._req, f, 'text/plain'))
+ output = ''.join(send_file(self._req, f, 'some/thing'))
self.assertEquals('foobar', output)
self.assertEquals(HTTP_OK, self._status)
- self.assertTrue(('Content-Type', 'text/plain') in self._headers)
+ self.assertContentTypeEquals('some/thing')
self.assertTrue(f.closed)
def test_send_file_buffered(self):
@@ -94,24 +97,25 @@ class DumbHandlersTestCase(WebTestCase):
xs = 'x' * bufsize
f = StringIO(2 * xs)
self.assertEquals([xs, xs],
- list(send_file(self._req, f, 'text/plain')))
+ list(send_file(self._req, f, 'some/thing')))
self.assertEquals(HTTP_OK, self._status)
- self.assertTrue(('Content-Type', 'text/plain') in self._headers)
+ self.assertContentTypeEquals('some/thing')
self.assertTrue(f.closed)
def test_send_file_error(self):
class TestFile(object):
- def __init__(self):
+ def __init__(self, exc_class):
self.closed = False
+ self._exc_class = exc_class
def read(self, size=-1):
- raise IOError
+ raise self._exc_class()
def close(self):
self.closed = True
- f = TestFile()
- list(send_file(self._req, f, 'text/plain'))
+ f = TestFile(IOError)
+ list(send_file(self._req, f, 'some/thing'))
self.assertEquals(HTTP_ERROR, self._status)
self.assertTrue(f.closed)
@@ -182,8 +186,7 @@ class SmartHandlersTestCase(WebTestCase):
# Ensure all output was written via the write callback.
self.assertEqual('', handler_output)
self.assertEqual('handled input: foo', write_output)
- response_type = 'application/x-git-upload-pack-response'
- self.assertTrue(('Content-Type', response_type) in self._headers)
+ self.assertContentTypeEquals('application/x-git-upload-pack-response')
self.assertFalse(self._handler.advertise_refs)
self.assertTrue(self._handler.stateless_rpc)
--
1.7.1
References