Merge in RR/cv-analysis from add-pdf2image-module to master
Squashed commit of the following:
commit 13355e2dd006fae9ee05c2d00acbbc8b38fd1e8e
Merge: eaf4627 edbda58
Author: Julius Unverfehrt <julius.unverfehrt@iqser.com>
Date: Tue Aug 2 13:35:27 2022 +0200
Merge branch 'master' of ssh://git.iqser.com:2222/rr/cv-analysis into add-pdf2image-module
commit eaf462768787642889d496203034d017c4ec959b
Author: Julius Unverfehrt <julius.unverfehrt@iqser.com>
Date: Tue Aug 2 13:26:58 2022 +0200
update build scripts
commit d429c713f4e5e74afca81c2354e8125bf389b865
Author: Julius Unverfehrt <julius.unverfehrt@iqser.com>
Date: Tue Aug 2 13:11:07 2022 +0200
purge target
commit 349b81c5db724bf70d6f31b58ded2b5414216bfe
Author: Julius Unverfehrt <julius.unverfehrt@iqser.com>
Date: Tue Aug 2 13:07:58 2022 +0200
Revert "extinguish target"
This reverts commit d2bd4cefde0648d2487839b0344509b984435273.
commit d2bd4cefde0648d2487839b0344509b984435273
Author: Julius Unverfehrt <julius.unverfehrt@iqser.com>
Date: Tue Aug 2 12:57:50 2022 +0200
extinguish target
commit 5f6cc713db31e3e16c8e7f13a59804c86b5d77d7
Author: Julius Unverfehrt <julius.unverfehrt@iqser.com>
Date: Tue Aug 2 11:58:52 2022 +0200
refactor
commit 576019378a39b580b816d9eb7957774f1faf48b9
Author: Julius Unverfehrt <julius.unverfehrt@iqser.com>
Date: Tue Aug 2 11:52:04 2022 +0200
add test for adjustesd server analysis pipeline logic
commit bdf0121929d6941cbba565055f37df7970925c79
Author: Julius Unverfehrt <julius.unverfehrt@iqser.com>
Date: Tue Aug 2 11:30:17 2022 +0200
update analysis pipline logic to use imported pdf2image
commit f7cef98d5e6d7b95517bbd047dd3e958acebb3d8
Author: Julius Unverfehrt <julius.unverfehrt@iqser.com>
Date: Tue Aug 2 11:04:34 2022 +0200
add pdf2image as git submodule
41 lines
1.1 KiB
Python
41 lines
1.1 KiB
Python
import fitz
|
|
import numpy as np
|
|
import pytest
|
|
|
|
from cv_analysis.server.pipeline import make_analysis_pipeline
|
|
from cv_analysis.utils.structures import Rectangle
|
|
|
|
|
|
def analysis_fn_mock(image: np.ndarray):
|
|
bbox = (0, 0, 42, 42)
|
|
return [Rectangle.from_xyxy(bbox)]
|
|
|
|
|
|
@pytest.fixture
|
|
def empty_pdf(n_pages):
|
|
doc = fitz.open()
|
|
for n in range(n_pages):
|
|
doc.new_page()
|
|
return doc.write()
|
|
|
|
|
|
@pytest.fixture
|
|
def expected_formatted_analysis_result(n_pages):
|
|
return [
|
|
{
|
|
"pageNumber": page_number,
|
|
"rotation": 0,
|
|
"width": 595.0,
|
|
"height": 842.0,
|
|
"bboxes": [{"x1": 0.0, "y1": 0.0, "x2": 15.12, "y2": 15.12, "width": 15.12, "height": 15.12}],
|
|
}
|
|
for page_number in range(n_pages)
|
|
]
|
|
|
|
|
|
@pytest.mark.parametrize("n_pages", [1, 2])
|
|
def test_analysis_pipeline(empty_pdf, expected_formatted_analysis_result):
|
|
analysis_pipeline = make_analysis_pipeline(analysis_fn_mock)
|
|
results = analysis_pipeline(empty_pdf)
|
|
assert list(results) == expected_formatted_analysis_result
|