diff --git a/mongoengine/base/datastructures.py b/mongoengine/base/datastructures.py index 5e90a2e5..7b66d01b 100644 --- a/mongoengine/base/datastructures.py +++ b/mongoengine/base/datastructures.py @@ -127,7 +127,7 @@ class BaseList(list): return value def __iter__(self): - for i in xrange(self.__len__()): + for i in range(self.__len__()): yield self[i] def __setitem__(self, key, value, *args, **kwargs): diff --git a/mongoengine/dereference.py b/mongoengine/dereference.py index 7552fd12..c59b0df8 100644 --- a/mongoengine/dereference.py +++ b/mongoengine/dereference.py @@ -88,14 +88,14 @@ class DeReference(object): return reference_map # Determine the iterator to use - if not hasattr(items, 'items'): - iterator = enumerate(items) + if isinstance(items, dict): + iterator = items.values() else: - iterator = items.iteritems() + iterator = items # Recursively find dbreferences depth += 1 - for k, item in iterator: + for item in iterator: if isinstance(item, (Document, EmbeddedDocument)): for field_name, field in item._fields.iteritems(): v = item._data.get(field_name, None) @@ -216,7 +216,7 @@ class DeReference(object): if k in self.object_map and not is_list: data[k] = self.object_map[k] elif isinstance(v, (Document, EmbeddedDocument)): - for field_name, field in v._fields.iteritems(): + for field_name in v._fields: v = data[k]._data.get(field_name, None) if isinstance(v, DBRef): data[k]._data[field_name] = self.object_map.get( diff --git a/mongoengine/queryset/queryset.py b/mongoengine/queryset/queryset.py index dc7f4d29..b3b86999 100644 --- a/mongoengine/queryset/queryset.py +++ b/mongoengine/queryset/queryset.py @@ -112,7 +112,7 @@ class QuerySet(BaseQuerySet): # Pull in ITER_CHUNK_SIZE docs from the database and store them in # the result cache. try: - for i in xrange(ITER_CHUNK_SIZE): + for _ in range(ITER_CHUNK_SIZE): self._result_cache.append(self.next()) except StopIteration: # Getting this exception means there are no more docs in the @@ -164,11 +164,12 @@ class QuerySetNoCache(BaseQuerySet): return '.. queryset mid-iteration ..' data = [] - for i in xrange(REPR_OUTPUT_SIZE + 1): + for _ in range(REPR_OUTPUT_SIZE + 1): try: data.append(self.next()) except StopIteration: break + if len(data) > REPR_OUTPUT_SIZE: data[-1] = '...(remaining elements truncated)...' diff --git a/tests/document/indexes.py b/tests/document/indexes.py index 75314bb0..af93e7db 100644 --- a/tests/document/indexes.py +++ b/tests/document/indexes.py @@ -556,8 +556,8 @@ class IndexesTest(unittest.TestCase): BlogPost.drop_collection() - for i in xrange(0, 10): - tags = [("tag %i" % n) for n in xrange(0, i % 2)] + for i in range(0, 10): + tags = [("tag %i" % n) for n in range(0, i % 2)] BlogPost(tags=tags).save() self.assertEqual(BlogPost.objects.count(), 10) diff --git a/tests/document/instance.py b/tests/document/instance.py index a34b8360..c73f1058 100644 --- a/tests/document/instance.py +++ b/tests/document/instance.py @@ -283,7 +283,7 @@ class InstanceTest(unittest.TestCase): list_stats = [] - for i in xrange(10): + for i in range(10): s = Stats() s.save() list_stats.append(s) diff --git a/tests/fields/fields.py b/tests/fields/fields.py index 2df60eed..a22a2561 100644 --- a/tests/fields/fields.py +++ b/tests/fields/fields.py @@ -689,7 +689,7 @@ class FieldTest(unittest.TestCase): LogEntry.drop_collection() # create 60 log entries - for i in xrange(1950, 2010): + for i in range(1950, 2010): d = datetime.datetime(i, 01, 01, 00, 00, 01) LogEntry(date=d).save() @@ -763,7 +763,7 @@ class FieldTest(unittest.TestCase): # Pre UTC microseconds above 1000 is wonky - with default datetimefields # log.date has an invalid microsecond value so I can't construct # a date to compare. - for i in xrange(1001, 3113, 33): + for i in range(1001, 3113, 33): d1 = datetime.datetime(1969, 12, 31, 23, 59, 59, i) log.date = d1 log.save() @@ -773,7 +773,7 @@ class FieldTest(unittest.TestCase): self.assertEqual(log, log1) # Test string padding - microsecond = map(int, [math.pow(10, x) for x in xrange(6)]) + microsecond = map(int, [math.pow(10, x) for x in range(6)]) mm = dd = hh = ii = ss = [1, 10] for values in itertools.product([2014], mm, dd, hh, ii, ss, microsecond): @@ -806,7 +806,7 @@ class FieldTest(unittest.TestCase): LogEntry.drop_collection() # create 60 log entries - for i in xrange(1950, 2010): + for i in range(1950, 2010): d = datetime.datetime(i, 01, 01, 00, 00, 01, 999) LogEntry(date=d).save() @@ -3130,7 +3130,7 @@ class FieldTest(unittest.TestCase): self.db['mongoengine.counters'].drop() Person.drop_collection() - for x in xrange(10): + for x in range(10): Person(name="Person %s" % x).save() c = self.db['mongoengine.counters'].find_one({'_id': 'person.id'}) @@ -3154,7 +3154,7 @@ class FieldTest(unittest.TestCase): self.db['mongoengine.counters'].drop() Person.drop_collection() - for x in xrange(10): + for x in range(10): Person(name="Person %s" % x).save() self.assertEqual(Person.id.get_next_value(), 11) @@ -3169,7 +3169,7 @@ class FieldTest(unittest.TestCase): self.db['mongoengine.counters'].drop() Person.drop_collection() - for x in xrange(10): + for x in range(10): Person(name="Person %s" % x).save() self.assertEqual(Person.id.get_next_value(), '11') @@ -3185,7 +3185,7 @@ class FieldTest(unittest.TestCase): self.db['mongoengine.counters'].drop() Person.drop_collection() - for x in xrange(10): + for x in range(10): Person(name="Person %s" % x).save() c = self.db['mongoengine.counters'].find_one({'_id': 'jelly.id'}) @@ -3210,7 +3210,7 @@ class FieldTest(unittest.TestCase): self.db['mongoengine.counters'].drop() Person.drop_collection() - for x in xrange(10): + for x in range(10): Person(name="Person %s" % x).save() c = self.db['mongoengine.counters'].find_one({'_id': 'person.id'}) @@ -3272,7 +3272,7 @@ class FieldTest(unittest.TestCase): Animal.drop_collection() Person.drop_collection() - for x in xrange(10): + for x in range(10): Animal(name="Animal %s" % x).save() Person(name="Person %s" % x).save() @@ -3302,7 +3302,7 @@ class FieldTest(unittest.TestCase): self.db['mongoengine.counters'].drop() Person.drop_collection() - for x in xrange(10): + for x in range(10): p = Person(name="Person %s" % x) p.save() diff --git a/tests/queryset/queryset.py b/tests/queryset/queryset.py index 863f779d..58a9de4a 100644 --- a/tests/queryset/queryset.py +++ b/tests/queryset/queryset.py @@ -174,7 +174,7 @@ class QuerySetTest(unittest.TestCase): # Test larger slice __repr__ self.Person.objects.delete() - for i in xrange(55): + for i in range(55): self.Person(name='A%s' % i, age=i).save() self.assertEqual(self.Person.objects.count(), 55) @@ -802,7 +802,7 @@ class QuerySetTest(unittest.TestCase): post2 = Post(comments=[comment2, comment2]) blogs = [] - for i in xrange(1, 100): + for i in range(1, 100): blogs.append(Blog(title="post %s" % i, posts=[post1, post2])) Blog.objects.insert(blogs, load_bulk=False) @@ -1022,7 +1022,7 @@ class QuerySetTest(unittest.TestCase): Doc.drop_collection() - for i in xrange(1000): + for i in range(1000): Doc(number=i).save() docs = Doc.objects.order_by('number') @@ -1176,7 +1176,7 @@ class QuerySetTest(unittest.TestCase): qs = list(qs) expected = list(expected) self.assertEqual(len(qs), len(expected)) - for i in xrange(len(qs)): + for i in range(len(qs)): self.assertEqual(qs[i], expected[i]) def test_ordering(self): @@ -1710,7 +1710,7 @@ class QuerySetTest(unittest.TestCase): Log.drop_collection() - for i in xrange(10): + for i in range(10): Log().save() Log.objects()[3:5].delete() @@ -2810,10 +2810,10 @@ class QuerySetTest(unittest.TestCase): Test.drop_collection() - for i in xrange(50): + for i in range(50): Test(val=1).save() - for i in xrange(20): + for i in range(20): Test(val=2).save() freqs = Test.objects.item_frequencies( @@ -3603,7 +3603,7 @@ class QuerySetTest(unittest.TestCase): Post.drop_collection() - for i in xrange(10): + for i in range(10): Post(title="Post %s" % i).save() self.assertEqual(5, Post.objects.limit(5).skip(5).count(with_limit_and_skip=True)) @@ -3618,7 +3618,7 @@ class QuerySetTest(unittest.TestCase): pass MyDoc.drop_collection() - for i in xrange(0, 10): + for i in range(0, 10): MyDoc().save() self.assertEqual(MyDoc.objects.count(), 10) @@ -3674,7 +3674,7 @@ class QuerySetTest(unittest.TestCase): Number.drop_collection() - for i in xrange(1, 101): + for i in range(1, 101): t = Number(n=i) t.save() @@ -4081,7 +4081,7 @@ class QuerySetTest(unittest.TestCase): # Test larger slice __repr__ self.Person.objects.delete() - for i in xrange(55): + for i in range(55): self.Person(name='A%s' % i, age=i).save() self.assertEqual(self.Person.objects.scalar('name').count(), 55) @@ -4463,7 +4463,7 @@ class QuerySetTest(unittest.TestCase): name = StringField() Person.drop_collection() - for i in xrange(100): + for i in range(100): Person(name="No: %s" % i).save() with query_counter() as q: @@ -4494,7 +4494,7 @@ class QuerySetTest(unittest.TestCase): name = StringField() Person.drop_collection() - for i in xrange(100): + for i in range(100): Person(name="No: %s" % i).save() with query_counter() as q: @@ -4538,7 +4538,7 @@ class QuerySetTest(unittest.TestCase): fields = DictField() Noddy.drop_collection() - for i in xrange(100): + for i in range(100): noddy = Noddy() for j in range(20): noddy.fields["key" + str(j)] = "value " + str(j) @@ -4739,7 +4739,7 @@ class QuerySetTest(unittest.TestCase): name = StringField() Person.drop_collection() - for i in xrange(100): + for i in range(100): Person(name="No: %s" % i).save() with query_counter() as q: @@ -4863,10 +4863,10 @@ class QuerySetTest(unittest.TestCase): ]) def test_delete_count(self): - [self.Person(name="User {0}".format(i), age=i * 10).save() for i in xrange(1, 4)] + [self.Person(name="User {0}".format(i), age=i * 10).save() for i in range(1, 4)] self.assertEqual(self.Person.objects().delete(), 3) # test ordinary QuerySey delete count - [self.Person(name="User {0}".format(i), age=i * 10).save() for i in xrange(1, 4)] + [self.Person(name="User {0}".format(i), age=i * 10).save() for i in range(1, 4)] self.assertEqual(self.Person.objects().skip(1).delete(), 2) # test Document delete with existing documents @@ -4925,7 +4925,7 @@ class QuerySetTest(unittest.TestCase): class Data(Document): pass - for i in xrange(300): + for i in range(300): Data().save() records = Data.objects.limit(250) @@ -4957,7 +4957,7 @@ class QuerySetTest(unittest.TestCase): class Data(Document): pass - for i in xrange(300): + for i in range(300): Data().save() qs = Data.objects.limit(250) diff --git a/tests/queryset/visitor.py b/tests/queryset/visitor.py index 7e5fcf19..ee2ef59a 100644 --- a/tests/queryset/visitor.py +++ b/tests/queryset/visitor.py @@ -185,7 +185,7 @@ class QTest(unittest.TestCase): x = IntField() TestDoc.drop_collection() - for i in xrange(1, 101): + for i in range(1, 101): t = TestDoc(x=i) t.save() diff --git a/tests/test_context_managers.py b/tests/test_context_managers.py index e4397ed3..0f6bf815 100644 --- a/tests/test_context_managers.py +++ b/tests/test_context_managers.py @@ -77,7 +77,7 @@ class ContextManagersTest(unittest.TestCase): User.drop_collection() Group.drop_collection() - for i in xrange(1, 51): + for i in range(1, 51): User(name='user %s' % i).save() user = User.objects.first() @@ -115,7 +115,7 @@ class ContextManagersTest(unittest.TestCase): User.drop_collection() Group.drop_collection() - for i in xrange(1, 51): + for i in range(1, 51): User(name='user %s' % i).save() user = User.objects.first() @@ -193,7 +193,7 @@ class ContextManagersTest(unittest.TestCase): with query_counter() as q: self.assertEqual(0, q) - for i in xrange(1, 51): + for i in range(1, 51): db.test.find({}).count() self.assertEqual(50, q) diff --git a/tests/test_dereference.py b/tests/test_dereference.py index 300bce6b..998aabd5 100644 --- a/tests/test_dereference.py +++ b/tests/test_dereference.py @@ -30,7 +30,7 @@ class FieldTest(unittest.TestCase): User.drop_collection() Group.drop_collection() - for i in xrange(1, 51): + for i in range(1, 51): user = User(name='user %s' % i) user.save() @@ -88,7 +88,7 @@ class FieldTest(unittest.TestCase): User.drop_collection() Group.drop_collection() - for i in xrange(1, 51): + for i in range(1, 51): user = User(name='user %s' % i) user.save() @@ -160,7 +160,7 @@ class FieldTest(unittest.TestCase): User.drop_collection() Group.drop_collection() - for i in xrange(1, 26): + for i in range(1, 26): user = User(name='user %s' % i) user.save() @@ -438,7 +438,7 @@ class FieldTest(unittest.TestCase): Group.drop_collection() members = [] - for i in xrange(1, 51): + for i in range(1, 51): a = UserA(name='User A %s' % i) a.save() @@ -529,7 +529,7 @@ class FieldTest(unittest.TestCase): Group.drop_collection() members = [] - for i in xrange(1, 51): + for i in range(1, 51): a = UserA(name='User A %s' % i) a.save() @@ -612,7 +612,7 @@ class FieldTest(unittest.TestCase): Group.drop_collection() members = [] - for i in xrange(1, 51): + for i in range(1, 51): user = User(name='user %s' % i) user.save() members.append(user) @@ -685,7 +685,7 @@ class FieldTest(unittest.TestCase): Group.drop_collection() members = [] - for i in xrange(1, 51): + for i in range(1, 51): a = UserA(name='User A %s' % i) a.save() @@ -781,7 +781,7 @@ class FieldTest(unittest.TestCase): Group.drop_collection() members = [] - for i in xrange(1, 51): + for i in range(1, 51): a = UserA(name='User A %s' % i) a.save() @@ -864,7 +864,7 @@ class FieldTest(unittest.TestCase): Group.drop_collection() members = [] - for i in xrange(1, 51): + for i in range(1, 51): a = UserA(name='User A %s' % i) a.save() @@ -1101,7 +1101,7 @@ class FieldTest(unittest.TestCase): User.drop_collection() Group.drop_collection() - for i in xrange(1, 51): + for i in range(1, 51): User(name='user %s' % i).save() Group(name="Test", members=User.objects).save() @@ -1130,7 +1130,7 @@ class FieldTest(unittest.TestCase): User.drop_collection() Group.drop_collection() - for i in xrange(1, 51): + for i in range(1, 51): User(name='user %s' % i).save() Group(name="Test", members=User.objects).save() @@ -1167,7 +1167,7 @@ class FieldTest(unittest.TestCase): Group.drop_collection() members = [] - for i in xrange(1, 51): + for i in range(1, 51): a = UserA(name='User A %s' % i).save() b = UserB(name='User B %s' % i).save() c = UserC(name='User C %s' % i).save()