[Python-checkins] cpython (merge 3.3 -> default): merge from 3.3

senthil.kumaran python-checkins at python.org
Sat Sep 7 23:13:22 CEST 2013


http://hg.python.org/cpython/rev/12aaf64feca2
changeset:   85596:12aaf64feca2
parent:      85594:678e3c0d2d99
parent:      85595:a723adeb1f47
user:        Senthil Kumaran <senthil at uthcode.com>
date:        Sat Sep 07 14:09:48 2013 -0700
summary:
  merge from 3.3

Fix License URL display and add test to check for license url presence.
Fixes issue #18206 Patch contributed by  Berker Peksag and py.user

files:
  Lib/site.py           |   6 ++++++
  Lib/test/test_site.py |  26 +++++++++++++++++++++++++-
  2 files changed, 31 insertions(+), 1 deletions(-)


diff --git a/Lib/site.py b/Lib/site.py
--- a/Lib/site.py
+++ b/Lib/site.py
@@ -361,8 +361,14 @@
     Thanks to CWI, CNRI, BeOpen.com, Zope Corporation and a cast of thousands
     for supporting Python development.  See www.python.org for more information.""")
     here = os.path.dirname(os.__file__)
+<<<<<<< local
     builtins.license = _sitebuiltins._Printer(
         "license", "See http://www.python.org/%.3s/license.html" % sys.version,
+=======
+    builtins.license = _Printer(
+        "license",
+        "See http://www.python.org/download/releases/%.5s/license/" % sys.version,
+>>>>>>> other
         ["LICENSE.txt", "LICENSE"],
         [os.path.join(here, os.pardir), here, os.curdir])
 
diff --git a/Lib/test/test_site.py b/Lib/test/test_site.py
--- a/Lib/test/test_site.py
+++ b/Lib/test/test_site.py
@@ -5,6 +5,7 @@
 
 """
 import unittest
+import test.support
 from test.support import run_unittest, TESTFN, EnvironmentVarGuard
 from test.support import captured_stderr
 import builtins
@@ -373,9 +374,10 @@
         self.assertTrue(hasattr(builtins, "exit"))
 
     def test_setting_copyright(self):
-        # 'copyright' and 'credits' should be in builtins
+        # 'copyright', 'credits', and 'license' should be in builtins
         self.assertTrue(hasattr(builtins, "copyright"))
         self.assertTrue(hasattr(builtins, "credits"))
+        self.assertTrue(hasattr(builtins, "license"))
 
     def test_setting_help(self):
         # 'help' should be set in builtins
@@ -402,5 +404,27 @@
                 self.fail("sitecustomize not imported automatically")
 
 
+class LicenseURL(unittest.TestCase):
+    """Test accessibility of the license."""
+
+    @unittest.skipUnless(str(license).startswith('See http://'),
+                         'license is available as a file')
+    def test_license_page(self):
+        """urlopen should return the license page"""
+        pat = r'^See (http://www\.python\.org/download/releases/[^/]+/license/)$'
+        mo = re.search(pat, str(license))
+        self.assertIsNotNone(mo, msg='can\'t find appropriate url in license')
+        if mo is not None:
+            url = mo.group(1)
+            with test.support.transient_internet(url):
+                import urllib.request, urllib.error
+                try:
+                    with urllib.request.urlopen(url) as data:
+                        code = data.getcode()
+                except urllib.error.HTTPError as e:
+                    code = e.code
+                self.assertEqual(code, 200, msg=url)
+
+
 if __name__ == "__main__":
     unittest.main()

-- 
Repository URL: http://hg.python.org/cpython


More information about the Python-checkins mailing list