Skip to content

Commit 917f9c3

Browse files
committed
ldapurl: Replace asserts with proper checks
1 parent 3e11046 commit 917f9c3

File tree

1 file changed

+22
-12
lines changed

1 file changed

+22
-12
lines changed

Lib/ldapurl.py

Lines changed: 22 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -149,8 +149,13 @@ def __setitem__(self, name, value):
149149
Either LDAPUrlExtension instance, (critical,exvalue)
150150
or string'ed exvalue
151151
"""
152-
assert isinstance(value, LDAPUrlExtension)
153-
assert name == value.extype
152+
if not isinstance(value, LDAPUrlExtension):
153+
raise TypeError("value must be LDAPUrlExtension, not "
154+
+ type(value).__name__)
155+
if name != value.extype:
156+
raise ValueError(
157+
"key {!r} does not match extension type {!r}".format(
158+
name, value.extype))
154159
self._data[name] = value
155160

156161
def __getitem__(self, name):
@@ -177,9 +182,8 @@ def __repr__(self):
177182
)
178183

179184
def __eq__(self,other):
180-
assert isinstance(other, self.__class__), TypeError(
181-
"other has to be instance of %s" % (self.__class__)
182-
)
185+
if not isinstance(other, self.__class__):
186+
return NotImplemented
183187
return self._data == other._data
184188

185189
def parse(self,extListStr):
@@ -374,17 +378,23 @@ def htmlHREF(self,urlPrefix='',hrefText=None,hrefTarget=None):
374378
hrefTarget
375379
string added as link target attribute
376380
"""
377-
assert type(urlPrefix)==StringType, "urlPrefix must be StringType"
381+
if not isinstance(urlPrefix, str):
382+
raise TypeError("urlPrefix must be str, not "
383+
+ type(urlPrefix).__name__)
378384
if hrefText is None:
379-
hrefText = self.unparse()
380-
assert type(hrefText)==StringType, "hrefText must be StringType"
385+
hrefText = self.unparse()
386+
if not isinstance(hrefText, str):
387+
raise TypeError("hrefText must be str, not "
388+
+ type(hrefText).__name__)
381389
if hrefTarget is None:
382-
target = ''
390+
target = ''
383391
else:
384-
assert type(hrefTarget)==StringType, "hrefTarget must be StringType"
385-
target = ' target="%s"' % hrefTarget
392+
if not isinstance(hrefTarget, str):
393+
raise TypeError("hrefTarget must be str, not "
394+
+ type(hrefTarget).__name__)
395+
target = ' target="%s"' % hrefTarget
386396
return '<a%s href="%s%s">%s</a>' % (
387-
target,urlPrefix,self.unparse(),hrefText
397+
target, urlPrefix, self.unparse(), hrefText
388398
)
389399

390400
def __str__(self):

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy