finish release notes, add more test
This commit is contained in:
@ -70,6 +70,14 @@ async def test_or_filters():
|
||||
assert len(books) == 4
|
||||
assert not any([x.title == "The Tower of Fools" for x in books])
|
||||
|
||||
books = (
|
||||
await Book.objects.select_related("author")
|
||||
.filter((Book.author.name == "J.R.R. Tolkien") | (Book.year < 1995))
|
||||
.all()
|
||||
)
|
||||
assert len(books) == 4
|
||||
assert not any([x.title == "The Tower of Fools" for x in books])
|
||||
|
||||
books = (
|
||||
await Book.objects.select_related("author")
|
||||
.filter(ormar.or_(year__gt=1960, year__lt=1940))
|
||||
@ -110,6 +118,26 @@ async def test_or_filters():
|
||||
assert books[0].title == "The Silmarillion"
|
||||
assert books[1].title == "The Witcher"
|
||||
|
||||
books = (
|
||||
await Book.objects.select_related("author")
|
||||
.filter(
|
||||
(
|
||||
(
|
||||
(Book.year > 1960) & (Book.author.name == "J.R.R. Tolkien")
|
||||
| (
|
||||
(Book.year < 2000)
|
||||
& (Book.author.name == "Andrzej Sapkowski")
|
||||
)
|
||||
)
|
||||
& (Book.title.startswith("The"))
|
||||
),
|
||||
)
|
||||
.all()
|
||||
)
|
||||
assert len(books) == 2
|
||||
assert books[0].title == "The Silmarillion"
|
||||
assert books[1].title == "The Witcher"
|
||||
|
||||
books = (
|
||||
await Book.objects.select_related("author")
|
||||
.filter(
|
||||
|
||||
@ -122,11 +122,21 @@ async def test_sort_order_on_main_model():
|
||||
assert songs[1].name == "Song 2"
|
||||
assert songs[2].name == "Song 1"
|
||||
|
||||
songs = await Song.objects.order_by(Song.sort_order.desc()).all()
|
||||
assert songs[0].name == "Song 3"
|
||||
assert songs[1].name == "Song 2"
|
||||
assert songs[2].name == "Song 1"
|
||||
|
||||
songs = await Song.objects.order_by("sort_order").all()
|
||||
assert songs[0].name == "Song 1"
|
||||
assert songs[1].name == "Song 2"
|
||||
assert songs[2].name == "Song 3"
|
||||
|
||||
songs = await Song.objects.order_by(Song.sort_order.asc()).all()
|
||||
assert songs[0].name == "Song 1"
|
||||
assert songs[1].name == "Song 2"
|
||||
assert songs[2].name == "Song 3"
|
||||
|
||||
songs = await Song.objects.order_by("name").all()
|
||||
assert songs[0].name == "Song 1"
|
||||
assert songs[1].name == "Song 2"
|
||||
@ -145,6 +155,14 @@ async def test_sort_order_on_main_model():
|
||||
assert songs[2].name == "Song 2"
|
||||
assert songs[3].name == "Song 3"
|
||||
|
||||
songs = await Song.objects.order_by(
|
||||
[Song.sort_order.asc(), Song.name.asc()]
|
||||
).all()
|
||||
assert songs[0].name == "Song 1"
|
||||
assert songs[1].name == "Song 4"
|
||||
assert songs[2].name == "Song 2"
|
||||
assert songs[3].name == "Song 3"
|
||||
|
||||
|
||||
@pytest.mark.asyncio
|
||||
async def test_sort_order_on_related_model():
|
||||
|
||||
Reference in New Issue
Block a user