Changed tests to only urlparse one, which was enough, addressed Ezio's comment
on Invalid url check statement and versionchanged string in docs.
diff --git a/Lib/urlparse.py b/Lib/urlparse.py
index 1a81518..f1e54d3 100644
--- a/Lib/urlparse.py
+++ b/Lib/urlparse.py
@@ -176,10 +176,9 @@
url = url[i+1:]
if url[:2] == '//':
netloc, url = _splitnetloc(url, 2)
- if '[' in netloc :
- if not ']' in netloc: raise ValueError("Invalid IPv6 URL")
- if ']' in netloc:
- if not '[' in netloc: raise ValueError("Invalid IPv6 URL")
+ if (('[' in netloc and ']' not in netloc) or
+ (']' in netloc and '[' not in netloc)):
+ raise ValueError("Invalid IPv6 URL")
if allow_fragments and '#' in url:
url, fragment = url.split('#', 1)
if '?' in url:
@@ -195,10 +194,9 @@
if url[:2] == '//':
netloc, url = _splitnetloc(url, 2)
- if '[' in netloc:
- if not ']' in netloc: raise ValueError("Invalid IPv6 URL")
- if ']' in netloc:
- if not '[' in netloc: raise ValueError("Invalid IPv6 URL")
+ if (('[' in netloc and ']' not in netloc) or
+ (']' in netloc and '[' not in netloc)):
+ raise ValueError("Invalid IPv6 URL")
if allow_fragments and scheme in uses_fragment and '#' in url:
url, fragment = url.split('#', 1)
if scheme in uses_query and '?' in url: