Removed many uses of bare "except:", which were either going to a) silence real issues, or b) were impossible to hit.

This commit is contained in:
Alex Gaynor 2012-09-07 15:06:23 -04:00
parent 257c4011cb
commit 335a9f9cf1
10 changed files with 31 additions and 48 deletions

View File

@ -4,6 +4,7 @@ HR-specific Form helpers
"""
from __future__ import absolute_import, unicode_literals
import datetime
import re
from django.contrib.localflavor.hr.hr_choices import (
@ -91,17 +92,16 @@ class HRJMBGField(Field):
dd = int(matches.group('dd'))
mm = int(matches.group('mm'))
yyy = int(matches.group('yyy'))
import datetime
try:
datetime.date(yyy,mm,dd)
except:
datetime.date(yyy, mm, dd)
except ValueError:
raise ValidationError(self.error_messages['date'])
# Validate checksum.
k = matches.group('k')
checksum = 0
for i,j in zip(range(7,1,-1),range(6)):
checksum+=i*(int(value[j])+int(value[13-i]))
for i, j in zip(range(7, 1, -1), range(6)):
checksum += i * (int(value[j]) + int(value[13 - i]))
m = 11 - checksum % 11
if m == 10:
raise ValidationError(self.error_messages['invalid'])

View File

@ -4,6 +4,8 @@ Romanian specific form helpers.
"""
from __future__ import absolute_import, unicode_literals
import datetime
from django.contrib.localflavor.ro.ro_counties import COUNTIES_CHOICES
from django.core.validators import EMPTY_VALUES
from django.forms import ValidationError, Field, RegexField, Select
@ -69,10 +71,9 @@ class ROCNPField(RegexField):
if value in EMPTY_VALUES:
return ''
# check birthdate digits
import datetime
try:
datetime.date(int(value[1:3]),int(value[3:5]),int(value[5:7]))
except:
datetime.date(int(value[1:3]), int(value[3:5]), int(value[5:7]))
except ValueError:
raise ValidationError(self.error_messages['invalid'])
# checksum
key = '279146358279'
@ -118,7 +119,7 @@ class ROCountyField(Field):
# search for county name
normalized_CC = []
for entry in COUNTIES_CHOICES:
normalized_CC.append((entry[0],entry[1].upper()))
normalized_CC.append((entry[0], entry[1].upper()))
for entry in normalized_CC:
if entry[1] == value:
return entry[0]
@ -153,8 +154,8 @@ class ROIBANField(RegexField):
value = super(ROIBANField, self).clean(value)
if value in EMPTY_VALUES:
return ''
value = value.replace('-','')
value = value.replace(' ','')
value = value.replace('-', '')
value = value.replace(' ', '')
value = value.upper()
if value[0:2] != 'RO':
raise ValidationError(self.error_messages['invalid'])
@ -185,10 +186,10 @@ class ROPhoneNumberField(RegexField):
value = super(ROPhoneNumberField, self).clean(value)
if value in EMPTY_VALUES:
return ''
value = value.replace('-','')
value = value.replace('(','')
value = value.replace(')','')
value = value.replace(' ','')
value = value.replace('-', '')
value = value.replace('(', '')
value = value.replace(')', '')
value = value.replace(' ', '')
if len(value) != 10:
raise ValidationError(self.error_messages['invalid'])
return value
@ -202,4 +203,3 @@ class ROPostalCodeField(RegexField):
def __init__(self, max_length=6, min_length=6, *args, **kwargs):
super(ROPostalCodeField, self).__init__(r'^[0-9][0-8][0-9]{4}$',
max_length, min_length, *args, **kwargs)

View File

@ -141,7 +141,7 @@ class CacheClass(BaseMemcachedCache):
)
try:
import memcache
except:
except ImportError:
raise InvalidCacheBackendError(
"Memcached cache backend requires either the 'memcache' or 'cmemcache' library"
)

View File

@ -21,7 +21,7 @@ class EmailBackend(BaseEmailBackend):
stream_created = self.open()
for message in email_messages:
self.stream.write('%s\n' % message.message().as_string())
self.stream.write('-'*79)
self.stream.write('-' * 79)
self.stream.write('\n')
self.stream.flush() # flush after each message
if stream_created:

View File

@ -412,7 +412,4 @@ def _sqlite_format_dtdelta(dt, conn, days, secs, usecs):
return str(dt)
def _sqlite_regexp(re_pattern, re_string):
try:
return bool(re.search(re_pattern, re_string))
except:
return False

View File

@ -68,11 +68,10 @@ class MultiPartParser(object):
if not boundary or not cgi.valid_boundary(boundary):
raise MultiPartParserError('Invalid boundary in multipart: %s' % boundary)
# Content-Length should contain the length of the body we are about
# to receive.
try:
content_length = int(META.get('HTTP_CONTENT_LENGTH', META.get('CONTENT_LENGTH',0)))
content_length = int(META.get('HTTP_CONTENT_LENGTH', META.get('CONTENT_LENGTH', 0)))
except (ValueError, TypeError):
content_length = 0
@ -178,7 +177,7 @@ class MultiPartParser(object):
content_type = meta_data.get('content-type', ('',))[0].strip()
try:
charset = meta_data.get('content-type', (0,{}))[1].get('charset', None)
charset = meta_data.get('content-type', (0, {}))[1].get('charset', None)
except:
charset = None

View File

@ -100,7 +100,7 @@ class FileUploadTests(TestCase):
try:
os.unlink(file1.name)
except:
except OSError:
pass
self.assertEqual(response.status_code, 200)

View File

@ -17,10 +17,8 @@ class HandlerTests(unittest.TestCase):
# Try running the handler, it will fail in load_middleware
handler = WSGIHandler()
self.assertEqual(handler.initLock.locked(), False)
try:
with self.assertRaises(Exception):
handler(None, None)
except:
pass
self.assertEqual(handler.initLock.locked(), False)
# Reset settings
settings.MIDDLEWARE_CLASSES = old_middleware_classes

View File

@ -1677,10 +1677,7 @@ class CloneTests(TestCase):
list(n_list)
# Use the note queryset in a query, and evalute
# that query in a way that involves cloning.
try:
self.assertEqual(ExtraInfo.objects.filter(note__in=n_list)[0].info, 'good')
except:
self.fail('Query should be clonable')
class EmptyQuerySetTests(TestCase):

View File

@ -1,7 +1,6 @@
from __future__ import absolute_import
from django.core.exceptions import ImproperlyConfigured
from django.db import connection, connections, transaction, DEFAULT_DB_ALIAS
from django.db import connection, connections, transaction, DEFAULT_DB_ALIAS, DatabaseError
from django.db.transaction import commit_on_success, commit_manually, TransactionManagementError
from django.test import TransactionTestCase, skipUnlessDBFeature
from django.test.utils import override_settings
@ -151,21 +150,14 @@ class TestTransactionClosing(TransactionTestCase):
# Create a user
create_system_user()
try:
# The second call to create_system_user should fail for violating a unique constraint
# (it's trying to re-create the same user)
with self.assertRaises(DatabaseError):
# The second call to create_system_user should fail for violating
# a unique constraint (it's trying to re-create the same user)
create_system_user()
except:
pass
else:
raise ImproperlyConfigured('Unique constraint not enforced on django.contrib.auth.models.User')
try:
# Try to read the database. If the last transaction was indeed closed,
# this should cause no problems
_ = User.objects.all()[0]
except:
self.fail("A transaction consisting of a failed operation was not closed.")
User.objects.all()[0]
@override_settings(DEBUG=True)
def test_failing_query_transaction_closed_debug(self):