Fixed too broad exception clauses in the project
This commit is contained in:
parent
9e9703183f
commit
ddedc1ee92
@ -133,7 +133,7 @@ class BaseField(object):
|
|||||||
if (self.name not in instance._data or
|
if (self.name not in instance._data or
|
||||||
instance._data[self.name] != value):
|
instance._data[self.name] != value):
|
||||||
instance._mark_as_changed(self.name)
|
instance._mark_as_changed(self.name)
|
||||||
except:
|
except Exception:
|
||||||
# Values cant be compared eg: naive and tz datetimes
|
# Values cant be compared eg: naive and tz datetimes
|
||||||
# So mark it as changed
|
# So mark it as changed
|
||||||
instance._mark_as_changed(self.name)
|
instance._mark_as_changed(self.name)
|
||||||
@ -440,7 +440,7 @@ class ObjectIdField(BaseField):
|
|||||||
try:
|
try:
|
||||||
if not isinstance(value, ObjectId):
|
if not isinstance(value, ObjectId):
|
||||||
value = ObjectId(value)
|
value = ObjectId(value)
|
||||||
except:
|
except Exception:
|
||||||
pass
|
pass
|
||||||
return value
|
return value
|
||||||
|
|
||||||
@ -459,7 +459,7 @@ class ObjectIdField(BaseField):
|
|||||||
def validate(self, value):
|
def validate(self, value):
|
||||||
try:
|
try:
|
||||||
ObjectId(unicode(value))
|
ObjectId(unicode(value))
|
||||||
except:
|
except Exception:
|
||||||
self.error('Invalid Object ID')
|
self.error('Invalid Object ID')
|
||||||
|
|
||||||
|
|
||||||
@ -511,7 +511,7 @@ class GeoJsonBaseField(BaseField):
|
|||||||
# Quick and dirty validator
|
# Quick and dirty validator
|
||||||
try:
|
try:
|
||||||
value[0][0][0]
|
value[0][0][0]
|
||||||
except:
|
except (TypeError, IndexError):
|
||||||
return "Invalid Polygon must contain at least one valid linestring"
|
return "Invalid Polygon must contain at least one valid linestring"
|
||||||
|
|
||||||
errors = []
|
errors = []
|
||||||
@ -535,7 +535,7 @@ class GeoJsonBaseField(BaseField):
|
|||||||
# Quick and dirty validator
|
# Quick and dirty validator
|
||||||
try:
|
try:
|
||||||
value[0][0]
|
value[0][0]
|
||||||
except:
|
except (TypeError, IndexError):
|
||||||
return "Invalid LineString must contain at least one valid point"
|
return "Invalid LineString must contain at least one valid point"
|
||||||
|
|
||||||
errors = []
|
errors = []
|
||||||
@ -566,7 +566,7 @@ class GeoJsonBaseField(BaseField):
|
|||||||
# Quick and dirty validator
|
# Quick and dirty validator
|
||||||
try:
|
try:
|
||||||
value[0][0]
|
value[0][0]
|
||||||
except:
|
except (TypeError, IndexError):
|
||||||
return "Invalid MultiPoint must contain at least one valid point"
|
return "Invalid MultiPoint must contain at least one valid point"
|
||||||
|
|
||||||
errors = []
|
errors = []
|
||||||
@ -585,7 +585,7 @@ class GeoJsonBaseField(BaseField):
|
|||||||
# Quick and dirty validator
|
# Quick and dirty validator
|
||||||
try:
|
try:
|
||||||
value[0][0][0]
|
value[0][0][0]
|
||||||
except:
|
except (TypeError, IndexError):
|
||||||
return "Invalid MultiLineString must contain at least one valid linestring"
|
return "Invalid MultiLineString must contain at least one valid linestring"
|
||||||
|
|
||||||
errors = []
|
errors = []
|
||||||
@ -607,7 +607,7 @@ class GeoJsonBaseField(BaseField):
|
|||||||
# Quick and dirty validator
|
# Quick and dirty validator
|
||||||
try:
|
try:
|
||||||
value[0][0][0][0]
|
value[0][0][0][0]
|
||||||
except:
|
except (TypeError, IndexError):
|
||||||
return "Invalid MultiPolygon must contain at least one valid Polygon"
|
return "Invalid MultiPolygon must contain at least one valid Polygon"
|
||||||
|
|
||||||
errors = []
|
errors = []
|
||||||
|
@ -981,7 +981,7 @@ class MapReduceDocument(object):
|
|||||||
if not isinstance(self.key, id_field_type):
|
if not isinstance(self.key, id_field_type):
|
||||||
try:
|
try:
|
||||||
self.key = id_field_type(self.key)
|
self.key = id_field_type(self.key)
|
||||||
except:
|
except Exception:
|
||||||
raise Exception("Could not cast key as %s" %
|
raise Exception("Could not cast key as %s" %
|
||||||
id_field_type.__name__)
|
id_field_type.__name__)
|
||||||
|
|
||||||
|
@ -65,7 +65,7 @@ class StringField(BaseField):
|
|||||||
return value
|
return value
|
||||||
try:
|
try:
|
||||||
value = value.decode('utf-8')
|
value = value.decode('utf-8')
|
||||||
except:
|
except Exception:
|
||||||
pass
|
pass
|
||||||
return value
|
return value
|
||||||
|
|
||||||
@ -194,7 +194,7 @@ class IntField(BaseField):
|
|||||||
def validate(self, value):
|
def validate(self, value):
|
||||||
try:
|
try:
|
||||||
value = int(value)
|
value = int(value)
|
||||||
except:
|
except Exception:
|
||||||
self.error('%s could not be converted to int' % value)
|
self.error('%s could not be converted to int' % value)
|
||||||
|
|
||||||
if self.min_value is not None and value < self.min_value:
|
if self.min_value is not None and value < self.min_value:
|
||||||
@ -228,7 +228,7 @@ class LongField(BaseField):
|
|||||||
def validate(self, value):
|
def validate(self, value):
|
||||||
try:
|
try:
|
||||||
value = long(value)
|
value = long(value)
|
||||||
except:
|
except Exception:
|
||||||
self.error('%s could not be converted to long' % value)
|
self.error('%s could not be converted to long' % value)
|
||||||
|
|
||||||
if self.min_value is not None and value < self.min_value:
|
if self.min_value is not None and value < self.min_value:
|
||||||
@ -508,7 +508,7 @@ class ComplexDateTimeField(StringField):
|
|||||||
original_value = value
|
original_value = value
|
||||||
try:
|
try:
|
||||||
return self._convert_from_string(value)
|
return self._convert_from_string(value)
|
||||||
except:
|
except Exception:
|
||||||
return original_value
|
return original_value
|
||||||
|
|
||||||
def to_mongo(self, value, **kwargs):
|
def to_mongo(self, value, **kwargs):
|
||||||
@ -1370,7 +1370,7 @@ class GridFSProxy(object):
|
|||||||
if self.gridout is None:
|
if self.gridout is None:
|
||||||
self.gridout = self.fs.get(self.grid_id)
|
self.gridout = self.fs.get(self.grid_id)
|
||||||
return self.gridout
|
return self.gridout
|
||||||
except:
|
except Exception:
|
||||||
# File has been deleted
|
# File has been deleted
|
||||||
return None
|
return None
|
||||||
|
|
||||||
@ -1408,7 +1408,7 @@ class GridFSProxy(object):
|
|||||||
else:
|
else:
|
||||||
try:
|
try:
|
||||||
return gridout.read(size)
|
return gridout.read(size)
|
||||||
except:
|
except Exception:
|
||||||
return ""
|
return ""
|
||||||
|
|
||||||
def delete(self):
|
def delete(self):
|
||||||
@ -1473,7 +1473,7 @@ class FileField(BaseField):
|
|||||||
if grid_file:
|
if grid_file:
|
||||||
try:
|
try:
|
||||||
grid_file.delete()
|
grid_file.delete()
|
||||||
except:
|
except Exception:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
# Create a new proxy object as we don't already have one
|
# Create a new proxy object as we don't already have one
|
||||||
@ -1841,7 +1841,7 @@ class UUIDField(BaseField):
|
|||||||
if not isinstance(value, basestring):
|
if not isinstance(value, basestring):
|
||||||
value = unicode(value)
|
value = unicode(value)
|
||||||
return uuid.UUID(value)
|
return uuid.UUID(value)
|
||||||
except:
|
except Exception:
|
||||||
return original_value
|
return original_value
|
||||||
return value
|
return value
|
||||||
|
|
||||||
|
@ -1705,7 +1705,7 @@ class BaseQuerySet(object):
|
|||||||
key = key.replace('__', '.')
|
key = key.replace('__', '.')
|
||||||
try:
|
try:
|
||||||
key = self._document._translate_field_name(key)
|
key = self._document._translate_field_name(key)
|
||||||
except:
|
except Exception:
|
||||||
pass
|
pass
|
||||||
key_list.append((key, direction))
|
key_list.append((key, direction))
|
||||||
|
|
||||||
|
@ -364,20 +364,24 @@ def _infer_geometry(value):
|
|||||||
"type and coordinates keys")
|
"type and coordinates keys")
|
||||||
elif isinstance(value, (list, set)):
|
elif isinstance(value, (list, set)):
|
||||||
# TODO: shouldn't we test value[0][0][0][0] to see if it is MultiPolygon?
|
# TODO: shouldn't we test value[0][0][0][0] to see if it is MultiPolygon?
|
||||||
|
# TODO: should both TypeError and IndexError be alike interpreted?
|
||||||
|
|
||||||
try:
|
try:
|
||||||
value[0][0][0]
|
value[0][0][0]
|
||||||
return {"$geometry": {"type": "Polygon", "coordinates": value}}
|
return {"$geometry": {"type": "Polygon", "coordinates": value}}
|
||||||
except:
|
except (TypeError, IndexError):
|
||||||
pass
|
pass
|
||||||
|
|
||||||
try:
|
try:
|
||||||
value[0][0]
|
value[0][0]
|
||||||
return {"$geometry": {"type": "LineString", "coordinates": value}}
|
return {"$geometry": {"type": "LineString", "coordinates": value}}
|
||||||
except:
|
except (TypeError, IndexError):
|
||||||
pass
|
pass
|
||||||
|
|
||||||
try:
|
try:
|
||||||
value[0]
|
value[0]
|
||||||
return {"$geometry": {"type": "Point", "coordinates": value}}
|
return {"$geometry": {"type": "Point", "coordinates": value}}
|
||||||
except:
|
except (TypeError, IndexError):
|
||||||
pass
|
pass
|
||||||
|
|
||||||
raise InvalidQueryError("Invalid $geometry data. Can be either a dictionary "
|
raise InvalidQueryError("Invalid $geometry data. Can be either a dictionary "
|
||||||
|
9
setup.py
9
setup.py
@ -10,11 +10,12 @@ except ImportError:
|
|||||||
|
|
||||||
DESCRIPTION = 'MongoEngine is a Python Object-Document ' + \
|
DESCRIPTION = 'MongoEngine is a Python Object-Document ' + \
|
||||||
'Mapper for working with MongoDB.'
|
'Mapper for working with MongoDB.'
|
||||||
LONG_DESCRIPTION = None
|
|
||||||
try:
|
try:
|
||||||
LONG_DESCRIPTION = open('README.rst').read()
|
with open('README.rst') as fin:
|
||||||
except:
|
LONG_DESCRIPTION = fin.read()
|
||||||
pass
|
except Exception:
|
||||||
|
LONG_DESCRIPTION = None
|
||||||
|
|
||||||
|
|
||||||
def get_version(version_tuple):
|
def get_version(version_tuple):
|
||||||
|
@ -411,7 +411,7 @@ class InheritanceTest(unittest.TestCase):
|
|||||||
try:
|
try:
|
||||||
class MyDocument(DateCreatedDocument, DateUpdatedDocument):
|
class MyDocument(DateCreatedDocument, DateUpdatedDocument):
|
||||||
pass
|
pass
|
||||||
except:
|
except Exception:
|
||||||
self.assertTrue(False, "Couldn't create MyDocument class")
|
self.assertTrue(False, "Couldn't create MyDocument class")
|
||||||
|
|
||||||
def test_abstract_documents(self):
|
def test_abstract_documents(self):
|
||||||
|
Loading…
x
Reference in New Issue
Block a user