From: Senthil Kumaran <senthil@uthcode.com>
Date: Sat, 27 Oct 2012 10:48:40 +0000 (-0700)
Subject: Add some tests in 2.7 for Issue #16250
X-Git-Tag: v2.7.5~109^2~195
X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=f8d370e30dde8ed17834f6eac8d026c6395e7101;p=python

Add some tests in 2.7 for Issue #16250
---

diff --git a/Lib/test/test_urllib.py b/Lib/test/test_urllib.py
index 91aeb2f116..3a273f873b 100644
--- a/Lib/test/test_urllib.py
+++ b/Lib/test/test_urllib.py
@@ -222,6 +222,27 @@ Content-Type: text/html; charset=iso-8859-1
         finally:
             self.unfakehttp()
 
+    def test_missing_localfile(self):
+        self.assertRaises(IOError, urllib.urlopen,
+                'file://localhost/a/missing/file.py')
+        fd, tmp_file = tempfile.mkstemp()
+        tmp_fileurl = 'file://localhost/' + tmp_file.replace(os.path.sep, '/')
+        try:
+            self.assertTrue(os.path.exists(tmp_file))
+            fp = urllib.urlopen(tmp_fileurl)
+        finally:
+            os.close(fd)
+            fp.close()
+        os.unlink(tmp_file)
+
+        self.assertFalse(os.path.exists(tmp_file))
+        self.assertRaises(IOError, urllib.urlopen, tmp_fileurl)
+
+    def test_ftp_nonexisting(self):
+        self.assertRaises(IOError, urllib.urlopen,
+                'ftp://localhost/not/existing/file.py')
+
+
     def test_userpass_inurl(self):
         self.fakehttp('Hello!')
         try: