fix tests

This commit is contained in:
SvyatoslavArtymovych 2023-05-30 16:45:32 +03:00
parent 74314948d1
commit 2ed7583a54
3 changed files with 23 additions and 12 deletions

View File

@ -11,7 +11,7 @@ def create_collections_breadcrumb(
bread_crumbs += [
s.BreadCrumb(
type=s.BreadCrumbType.Collection,
url=url_for("book.collection_view", book_id=collection.version.book_id),
url="",
label=collection.label,
)
]
@ -66,15 +66,26 @@ def create_breadcrumbs(
)
]
if collection_id:
collections_crumbs = []
collection: m.Collection = db.session.get(m.Collection, collection_id)
create_collections_breadcrumb(collections_crumbs, collection)
collections_crumbs.reverse()
crumples += collections_crumbs
section: m.Section = None
if section_id:
section: m.Section = db.session.get(m.Section, section_id)
if collection_id and not section:
collections_crumbs = []
collection: m.Collection = db.session.get(m.Collection, collection_id)
if not collection.is_root:
create_collections_breadcrumb(collections_crumbs, collection)
collections_crumbs.reverse()
crumples += collections_crumbs
if section:
collections_crumbs = []
collection: m.Collection = db.session.get(m.Collection, section.collection_id)
if not collection.is_root:
create_collections_breadcrumb(collections_crumbs, collection)
collections_crumbs.reverse()
crumples += collections_crumbs
crumples += [
s.BreadCrumb(
type=s.BreadCrumbType.Section,

View File

@ -458,7 +458,7 @@ def test_crud_subcollection(client: FlaskClient, runner: FlaskCliRunner):
label="Test SubCollection #1 Label"
).first()
assert sub_collection
assert sub_collection.is_leaf
assert not sub_collection.is_leaf
assert sub_collection.parent_id == collection.id
m.Collection(

View File

@ -6,13 +6,13 @@ from app import models as m, db
def test_breadcrumbs(runner: FlaskCliRunner, app):
runner.invoke(args=["db-populate"])
with app.app_context(), app.test_request_context():
res = create_breadcrumbs(1, (1,), 1)
res = create_breadcrumbs(book_id=1, collection_id=1, section_id=1)
assert len(res) == 4
book: m.Book = db.session.get(m.Book, 1)
assert book
assert book.owner.username in res[0].label
assert res[1].label == book.label
with app.app_context(), app.test_request_context():
res = create_breadcrumbs(1, (), 1)
res = create_breadcrumbs(book_id=1, section_id=1)
assert res
assert len(res) == 2
assert len(res) == 4