Skip to content

Commit

Permalink
Prohibit +/-infinity as timeout values
Browse files Browse the repository at this point in the history
  • Loading branch information
ajdavis committed Oct 6, 2012
1 parent 1da312e commit 28a7ed9
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 1 deletion.
2 changes: 1 addition & 1 deletion pymongo/common.py
Original file line number Original file line Diff line number Diff line change
Expand Up @@ -93,7 +93,7 @@ def validate_positive_float(option, value):
value = float(value) value = float(value)
except (ValueError, TypeError): except (ValueError, TypeError):
raise err raise err
if value <= 0: if not 0 < value < float('inf'):
raise err raise err


return value return value
Expand Down
2 changes: 2 additions & 0 deletions test/test_uri_parser.py
Original file line number Original file line Diff line number Diff line change
Expand Up @@ -84,6 +84,8 @@ def test_split_options(self):
self.assertRaises(ConfigurationError, split_options, 'socketTimeoutMS=0.0') self.assertRaises(ConfigurationError, split_options, 'socketTimeoutMS=0.0')
self.assertRaises(ConfigurationError, split_options, 'connectTimeoutMS=foo') self.assertRaises(ConfigurationError, split_options, 'connectTimeoutMS=foo')
self.assertRaises(ConfigurationError, split_options, 'connectTimeoutMS=0.0') self.assertRaises(ConfigurationError, split_options, 'connectTimeoutMS=0.0')
self.assertRaises(ConfigurationError, split_options, 'connectTimeoutMS=inf')
self.assertRaises(ConfigurationError, split_options, 'connectTimeoutMS=-inf')
self.assertTrue(split_options('socketTimeoutMS=300')) self.assertTrue(split_options('socketTimeoutMS=300'))
self.assertTrue(split_options('connectTimeoutMS=300')) self.assertTrue(split_options('connectTimeoutMS=300'))
self.assertEqual({'sockettimeoutms': 0.3}, split_options('socketTimeoutMS=300')) self.assertEqual({'sockettimeoutms': 0.3}, split_options('socketTimeoutMS=300'))
Expand Down

0 comments on commit 28a7ed9

Please sign in to comment.