Update unit tests

This commit is contained in:
Agustin Barto 2020-03-17 21:49:17 -03:00
parent 8913a74a86
commit bc77322c2f

View File

@ -4739,33 +4739,33 @@ class TestQueryset(unittest.TestCase):
bars = list(Bar.objects.read_concern(None)) bars = list(Bar.objects.read_concern(None))
assert bars == [bar] assert bars == [bar]
bars = Bar.objects.read_concern(ReadConcern(level="local")) bars = Bar.objects.read_concern({"level": "local"})
assert bars._read_concern == ReadConcern(level="local") assert bars._read_concern.document == {"level": "local"}
assert bars._cursor.collection.read_concern == ReadConcern(level="local") assert bars._cursor.collection.read_concern.document == {"level": "local"}
# Make sure that `.read_concern(...)` does accept string values. # Make sure that `.read_concern(...)` does not accept string values.
with pytest.raises(TypeError): with pytest.raises(TypeError):
Bar.objects.read_concern("local") Bar.objects.read_concern("local")
def assert_read_concern(qs, expected_read_concern): def assert_read_concern(qs, expected_read_concern):
assert qs._read_concern == expected_read_concern assert qs._read_concern.document == expected_read_concern
assert qs._cursor.collection.read_concern == expected_read_concern assert qs._cursor.collection.read_concern.document == expected_read_concern
# Make sure read concern is respected after a `.skip(...)`. # Make sure read concern is respected after a `.skip(...)`.
bars = Bar.objects.skip(1).read_concern(ReadConcern("majority")) bars = Bar.objects.skip(1).read_concern({"level": "local"})
assert_read_concern(bars, ReadConcern("majority")) assert_read_concern(bars, {"level": "local"})
# Make sure read concern is respected after a `.limit(...)`. # Make sure read concern is respected after a `.limit(...)`.
bars = Bar.objects.limit(1).read_concern(ReadConcern("majority")) bars = Bar.objects.limit(1).read_concern({"level": "local"})
assert_read_concern(bars, ReadConcern("majority")) assert_read_concern(bars, {"level": "local"})
# Make sure read concern is respected after an `.order_by(...)`. # Make sure read concern is respected after an `.order_by(...)`.
bars = Bar.objects.order_by("txt").read_concern(ReadConcern("majority")) bars = Bar.objects.order_by("txt").read_concern({"level": "local"})
assert_read_concern(bars, ReadConcern("majority")) assert_read_concern(bars, {"level": "local"})
# Make sure read concern is respected after a `.hint(...)`. # Make sure read concern is respected after a `.hint(...)`.
bars = Bar.objects.hint([("txt", 1)]).read_concern(ReadConcern("majority")) bars = Bar.objects.hint([("txt", 1)]).read_concern({"level": "majority"})
assert_read_concern(bars, ReadConcern("majority")) assert_read_concern(bars, {"level": "majority"})
def test_json_simple(self): def test_json_simple(self):
class Embedded(EmbeddedDocument): class Embedded(EmbeddedDocument):