add tests to increase code coverage
This commit is contained in:
parent
5bdd35464b
commit
70088704e2
@ -334,7 +334,7 @@ class FieldTest(MongoDBTestCase):
|
|||||||
def test_string_validation(self):
|
def test_string_validation(self):
|
||||||
"""Ensure that invalid values cannot be assigned to string fields."""
|
"""Ensure that invalid values cannot be assigned to string fields."""
|
||||||
class Person(Document):
|
class Person(Document):
|
||||||
name = StringField(max_length=20)
|
name = StringField(max_length=20, min_length=5)
|
||||||
userid = StringField(r'[0-9a-z_]+$')
|
userid = StringField(r'[0-9a-z_]+$')
|
||||||
|
|
||||||
person = Person(name=34)
|
person = Person(name=34)
|
||||||
@ -352,6 +352,10 @@ class FieldTest(MongoDBTestCase):
|
|||||||
person = Person(name='Name that is more than twenty characters')
|
person = Person(name='Name that is more than twenty characters')
|
||||||
self.assertRaises(ValidationError, person.validate)
|
self.assertRaises(ValidationError, person.validate)
|
||||||
|
|
||||||
|
# Test max length validation on name
|
||||||
|
person = Person(name='aa')
|
||||||
|
self.assertRaises(ValidationError, person.validate)
|
||||||
|
|
||||||
person.name = 'Shorter name'
|
person.name = 'Shorter name'
|
||||||
person.validate()
|
person.validate()
|
||||||
|
|
||||||
@ -437,6 +441,10 @@ class FieldTest(MongoDBTestCase):
|
|||||||
doc.age = 'ten'
|
doc.age = 'ten'
|
||||||
self.assertRaises(ValidationError, doc.validate)
|
self.assertRaises(ValidationError, doc.validate)
|
||||||
|
|
||||||
|
# Test max_value validation
|
||||||
|
doc.value = 200
|
||||||
|
self.assertRaises(ValidationError, doc.validate)
|
||||||
|
|
||||||
def test_float_validation(self):
|
def test_float_validation(self):
|
||||||
"""Ensure that invalid values cannot be assigned to float fields.
|
"""Ensure that invalid values cannot be assigned to float fields.
|
||||||
"""
|
"""
|
||||||
|
@ -429,6 +429,10 @@ class GeoQueriesTest(MongoDBTestCase):
|
|||||||
roads = Road.objects.filter(line__geo_within=polygon).count()
|
roads = Road.objects.filter(line__geo_within=polygon).count()
|
||||||
self.assertEqual(1, roads)
|
self.assertEqual(1, roads)
|
||||||
|
|
||||||
|
sphere = [[-1, 42,], 2]
|
||||||
|
roads = Road.objects.filter(line__geo_within_sphere=sphere).count()
|
||||||
|
self.assertEqual(0, roads)
|
||||||
|
|
||||||
roads = Road.objects.filter(line__geo_within={"$geometry": polygon}).count()
|
roads = Road.objects.filter(line__geo_within={"$geometry": polygon}).count()
|
||||||
self.assertEqual(1, roads)
|
self.assertEqual(1, roads)
|
||||||
|
|
||||||
|
@ -1882,6 +1882,12 @@ class QuerySetTest(unittest.TestCase):
|
|||||||
post.reload()
|
post.reload()
|
||||||
self.assertTrue('mongo' in post.tags)
|
self.assertTrue('mongo' in post.tags)
|
||||||
|
|
||||||
|
# Push with arrays
|
||||||
|
BlogPost.objects.update(push__tags=['python', 'scala'])
|
||||||
|
post.reload()
|
||||||
|
self.assertTrue('python' in post.tags)
|
||||||
|
self.assertTrue('scala' in post.tags)
|
||||||
|
|
||||||
BlogPost.objects.update_one(push_all__tags=['db', 'nosql'])
|
BlogPost.objects.update_one(push_all__tags=['db', 'nosql'])
|
||||||
post.reload()
|
post.reload()
|
||||||
self.assertTrue('db' in post.tags and 'nosql' in post.tags)
|
self.assertTrue('db' in post.tags and 'nosql' in post.tags)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user