Hi
I am having trouble mocking querysets which contains slice. Example
qs = Thread.objects.filter(some_filter).order_by(some_order')[:app_settings.SEARCH_LIMIT]
And in my test I have:
Thread.objects.assert_has_calls([
mock.call.filter('some_filter'),
mock.call.filter().order_by('some_order'),
mock.call.filter().order_by().__getitem__(slice(None, 1000, None))
])
But this isn't working. Message is:
Expected: [call.filter('filter'), call.filter().order_by('-post_counter'), ('filter().order_by', (), {})]
Actual: [call.filter('filter'),
call.filter().order_by('-post_counter'),
call.filter().order_by().__getitem__(slice(None, 1000, None))]
Why?
Python 2.7.5, Django 1.7b4