Fixing - Issue7026 - RuntimeError: dictionary changed size during iteration. Patch by flox

This commit is contained in:
Senthil Kumaran 2010-01-08 18:41:40 +00:00
parent 3194d1454c
commit 3ddc435af6
107 changed files with 794 additions and 436 deletions

View file

@ -6,6 +6,7 @@ import unittest
from test import test_support
import os
import mimetools
import random
import tempfile
import StringIO
@ -101,7 +102,7 @@ class ProxyTests(unittest.TestCase):
# Records changes to env vars
self.env = test_support.EnvironmentVarGuard()
# Delete all proxy related env vars
for k, v in os.environ.iteritems():
for k in os.environ.keys():
if 'proxy' in k.lower():
self.env.unset(k)
@ -409,6 +410,13 @@ class QuotingTests(unittest.TestCase):
self.assertEqual(urllib.quote_plus('alpha+beta gamma', '+'),
'alpha+beta+gamma')
def test_quote_leak(self):
# bug 5596 - highlight the refleak in the internal _safemaps cache
safe = ''.join(chr(random.randrange(128)) for i in '123456')
text = 'abcdefghijklmnopqrstuvwxyz'
result = urllib.quote(text, safe=safe)
self.assertEqual(result, text)
class UnquotingTests(unittest.TestCase):
"""Tests for unquote() and unquote_plus()