From 6a4a4a33cae05c4e33dbf25dc0774277c0d4a867 Mon Sep 17 00:00:00 2001 From: samus_ Date: Fri, 2 Jan 2009 16:28:05 +0000 Subject: [PATCH] created test for body_or_str (forgot to add the file to the repo at r601) --HG-- extra : convert_revision : svn%3Ab85faa78-f9eb-468e-a121-7cced6da292c%40604 --- .../trunk/scrapy/tests/test_utils_response.py | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 scrapy/trunk/scrapy/tests/test_utils_response.py diff --git a/scrapy/trunk/scrapy/tests/test_utils_response.py b/scrapy/trunk/scrapy/tests/test_utils_response.py new file mode 100644 index 000000000..feec740ad --- /dev/null +++ b/scrapy/trunk/scrapy/tests/test_utils_response.py @@ -0,0 +1,28 @@ +import unittest +from scrapy.http.response import Response +from scrapy.utils.response import body_or_str + +class ResponseUtilsTest(unittest.TestCase): + dummy_response = Response(domain='example.org', url='http://example.org/', body='dummy_response') + + def test_input(self): + self.assertTrue(isinstance(body_or_str(self.dummy_response), basestring)) + self.assertTrue(isinstance(body_or_str('text'), basestring)) + self.assertRaises(Exception, body_or_str, 2) + + def test_extraction(self): + self.assertEqual(body_or_str(self.dummy_response), 'dummy_response') + self.assertEqual(body_or_str('text'), 'text') + + def test_encoding(self): + self.assertTrue(isinstance(body_or_str(self.dummy_response, unicode=False), str)) + self.assertTrue(isinstance(body_or_str(self.dummy_response, unicode=True), unicode)) + + self.assertTrue(isinstance(body_or_str('text', unicode=False), str)) + self.assertTrue(isinstance(body_or_str('text', unicode=True), unicode)) + + self.assertTrue(isinstance(body_or_str(u'text', unicode=False), str)) + self.assertTrue(isinstance(body_or_str(u'text', unicode=True), unicode)) + +if __name__ == "__main__": + unittest.main()