diff options
author | ville <ville@localhost> | 2009-11-16 19:47:41 +0000 |
---|---|---|
committer | ville <ville@localhost> | 2009-11-16 19:47:41 +0000 |
commit | 4431291683e2899d535932d29c727326e0f32c67 (patch) | |
tree | b44f915dc66b60096858eff4c9274efd8f8821f1 | |
parent | eea0ee419d13f277e83aeef8cbf5983f1b780040 (diff) | |
download | markup-validator-4431291683e2899d535932d29c727326e0f32c67.zip markup-validator-4431291683e2899d535932d29c727326e0f32c67.tar.gz markup-validator-4431291683e2899d535932d29c727326e0f32c67.tar.bz2 |
Improve unsuccessful request handling.
-rw-r--r-- | misc/testsuite/lib/TestCase.py | 6 | ||||
-rw-r--r-- | misc/testsuite/lib/ValidatorsAPIs.py | 31 |
2 files changed, 22 insertions, 15 deletions
diff --git a/misc/testsuite/lib/TestCase.py b/misc/testsuite/lib/TestCase.py index 15af48e..654f965 100644 --- a/misc/testsuite/lib/TestCase.py +++ b/misc/testsuite/lib/TestCase.py @@ -50,7 +50,9 @@ class ValidatorTestCase(unittest.TestCase): We first remove irrelevant result keys in the validation results, and compare that to the expected results """ - results = self.checker.parse_response(self.checker.call_check(self.docURI)) + (res, err) = self.checker.call_check(self.docURI) + self.assertEqual(err, None) + results = self.checker.parse_response(res) results_filtered = dict() for result_key in self.expectResults.iterkeys(): if results.has_key(result_key): @@ -242,4 +244,4 @@ class ValidatorTestSuite_UT(unittest.TestCase): if __name__ == '__main__': - unittest.main()
\ No newline at end of file + unittest.main() diff --git a/misc/testsuite/lib/ValidatorsAPIs.py b/misc/testsuite/lib/ValidatorsAPIs.py index 9b53fdb..0cf8138 100644 --- a/misc/testsuite/lib/ValidatorsAPIs.py +++ b/misc/testsuite/lib/ValidatorsAPIs.py @@ -31,9 +31,9 @@ class W3CValidatorHTTP: final_checker_URI = self.check_URI % {"URI": data } try: response = urllib2.urlopen(final_checker_URI) - return response - except (urllib2.HTTPError, urllib2.URLError): - return None + except (urllib2.HTTPError, urllib2.URLError) as exc: + return (None, str(exc) + ": " + final_checker_URI) + return (response, None) def parse_response(self, response): """Parse a W3C Markup Validator Response via its HTTP headers""" @@ -61,34 +61,39 @@ class W3CValidatorHTTP_test(unittest.TestCase): def test_contact_default(self): """Test Contacting the default validator instance""" default_checker = W3CValidatorHTTP() - checked = default_checker.call_check("http://www.w3.org") - self.assertNotEqual(checked, None) + (res, err) = default_checker.call_check("http://www.w3.org") + self.assertEqual(err, None) + self.assertNotEqual(res, None) def test_contact_vwo(self): """Test Contacting the main W3C validator instance""" default_checker = W3CValidatorHTTP("http://validator.w3.org/check?uri=%(URI)s") - checked = default_checker.call_check("http://www.w3.org") - self.assertNotEqual(checked, None) + (res, err) = default_checker.call_check("http://www.w3.org") + self.assertEqual(err, None) + self.assertNotEqual(res, None) def test_parse_response(self): """Test parsing response from default validator instance""" default_checker = W3CValidatorHTTP() - checked = default_checker.call_check("http://www.w3.org") - results = default_checker.parse_response(checked) + (res, err) = default_checker.call_check("http://www.w3.org") + self.assertEqual(err, None) + results = default_checker.parse_response(res) self.assert_(isinstance(results,dict)) def test_parse_response_invalid(self): """Test parsing response for a known invalid resource""" default_checker = W3CValidatorHTTP() - checked = default_checker.call_check("http://qa-dev.w3.org/wmvs/HEAD/dev/tests/xhtml1-bogus-element.html") - results = default_checker.parse_response(checked) + (res, err) = default_checker.call_check("http://qa-dev.w3.org/wmvs/HEAD/dev/tests/xhtml1-bogus-element.html") + self.assertEqual(err, None) + results = default_checker.parse_response(res) self.assertNotEquals(results["NumErrors"], 0) def test_parse_response_valid(self): """Test parsing response for a known valid HTML resource""" default_checker = W3CValidatorHTTP() - checked = default_checker.call_check("http://qa-dev.w3.org/wmvs/HEAD/dev/tests/html20.html") - results = default_checker.parse_response(checked) + (res, err) = default_checker.call_check("http://qa-dev.w3.org/wmvs/HEAD/dev/tests/html20.html") + self.assertEqual(err, None) + results = default_checker.parse_response(res) self.assertNotEquals([results["NumErrors"], results["Validity"]], [0, "Valid"]) if __name__ == '__main__': |