Skip to content

Commit

Permalink
TST: Add test for layout extraction mode (#2390)
Browse files Browse the repository at this point in the history
  • Loading branch information
MartinThoma authored Jan 3, 2024
1 parent 4423267 commit 89baa2c
Show file tree
Hide file tree
Showing 2 changed files with 56 additions and 0 deletions.
44 changes: 44 additions & 0 deletions resources/multicolumn-lorem-ipsum.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
Two-Column Document with Lorem Ipsum

Your Name
January 3, 2024

Abstract pellentesque ante. Phasellus adipiscing semper elit.
Proin fermentum massa ac quam. Sed diam turpis,
This is a sample document with two columns filled molestie vitae, placerat a, molestie nec, leo. Maece-
with Lorem Ipsum text. nas lacinia. Nam ipsum ligula, eleifend at, accumsan
Lorem ipsum dolor sit amet, consectetuer adip- nec, suscipit a, ipsum. Morbi blandit ligula feugiat
iscing elit. Ut purus elit, vestibulum ut, placerat magna. Nunc eleifend consequat lorem. Sed lacinia
ac, adipiscing vitae, felis. Curabitur dictum gravida nulla vitae enim. Pellentesque tincidunt purus vel
mauris. Nam arcu libero, nonummy eget, con- magna. Integer non enim. Praesent euismod nunc
sectetuer id, vulputate a, magna. Donec vehicula eu purus. Donec bibendum quam in tellus. Nullam
augue eu neque. Pellentesque habitant morbi tris- cursus pulvinar lectus. Donec et mi. Nam vulpu-
tique senectus et netus et malesuada fames ac turpis tate metus eu enim. Vestibulum pellentesque felis eu
egestas. Mauris ut leo. Cras viverra metus rhon- massa.
cus sem. Nulla et lectus vestibulum urna fringilla Quisque ullamcorper placerat ipsum. Cras nibh.
ultrices. Phasellus eu tellus sit amet tortor gravida Morbi vel justo vitae lacus tincidunt ultrices. Lorem
placerat. Integer sapien est, iaculis in, pretium quis, ipsum dolor sit amet, consectetuer adipiscing elit. In
viverra ac, nunc. Praesent eget sem vel leo ultri- hachabitasseplateadictumst. Integertempusconva-
ces bibendum. Aenean faucibus. Morbi dolor nulla, llis augue. Etiam facilisis. Nunc elementum fermen-
malesuada eu, pulvinar at, mollis ac, nulla. Cur- tum wisi. Aenean placerat. Ut imperdiet, enim sed
abitur auctor semper nulla. Donec varius orci eget gravida sollicitudin, felis odio placerat quam, ac pul-
risus. Duis nibh mi, congue eu, accumsan eleifend, vinar elit purus eget enim. Nunc vitae tortor. Proin
sagittis quis, diam. Duis eget orci sit amet orci dig- tempus nibh sit amet nisl. Vivamus quis tortor vitae
nissim rutrum. risus porta vehicula.
Nam dui ligula, fringilla a, euismod sodales, sollic-
itudin vel, wisi. Morbi auctor lorem non justo. Nam Fusce mauris. Vestibulum luctus nibh at lectus.
lacus libero, pretium at, lobortis vitae, ultricies et, Sed bibendum, nulla a faucibus semper, leo velit ul-
tellus. Donec aliquet, tortor sed accumsan biben- tricies tellus, ac venenatis arcu wisi vel nisl. Vestibu-
dum, erat ligula aliquet magna, vitae ornare odio lum diam. Aliquam pellentesque, augue quis sagittis
metus a mi. Morbi ac orci et nisl hendrerit mollis. posuere, turpis lacus congue quam, in hendrerit risus
Suspendisse ut massa. Cras nec ante. Pellentesque eros eget felis. Maecenas eget erat in sapien mattis
a nulla. Cum sociis natoque penatibus et magnis dis porttitor. Vestibulum porttitor. Nulla facilisi. Sed
parturient montes, nascetur ridiculus mus. Aliquam a turpis eu lacus commodo facilisis. Morbi fringilla,
tincidunturna. Nullaullamcorpervestibulumturpis. wisi in dignissim interdum, justo lectus sagittis dui,
Pellentesque cursus luctus mauris. et vehicula libero dui cursus dui. Mauris tempor
Nulla malesuada porttitor diam. Donec felis erat, ligula sed lacus. Duis cursus enim ut augue. Cras
congue non, volutpat at, tincidunt tristique, libero. ac magna. Cras nulla. Nulla egestas. Curabitur a
Vivamus viverra fermentum felis. Donec nonummy leo. Quisque egestas wisi eget nunc. Nam feugiat


1
12 changes: 12 additions & 0 deletions tests/test_workflows.py
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@
TESTS_ROOT = Path(__file__).parent.resolve()
PROJECT_ROOT = TESTS_ROOT.parent
RESOURCE_ROOT = PROJECT_ROOT / "resources"
SAMPLE_ROOT = PROJECT_ROOT / "sample-files"

sys.path.append(str(PROJECT_ROOT))

Expand Down Expand Up @@ -1039,3 +1040,14 @@ def test_cr_with_cm_operation():
)
# currently threre is still a white space on last line missing
# so we can not do a full comparison.


@pytest.mark.samples()
@pytest.mark.xfail(reason="#2388 implements this")
def test_text_extraction_layout_mode():
pdf_path = SAMPLE_ROOT / "026-latex-multicolumn/multicolumn.pdf"
reader = PdfReader(pdf_path)
actual = reader.pages[0].extract_text(extraction_mode="layout")
with open(RESOURCE_ROOT / "multicolumn-lorem-ipsum.txt") as fp:
expected = fp.read()
assert actual.strip() == expected.strip()

0 comments on commit 89baa2c

Please sign in to comment.