When no margin detected, reserve a bit more space for comments
This commit is contained in:
1 parent
e7094d850e
commit
78a7b7679c
17 files changed
+357
-28
No files matched your search
@@ -9,11 +9,29 @@ import pymupdf
|
||||
from copienator import CliError, EvaluationWorkspace, atomic_write_json, read_json
|
||||
from copienator.commands import correction, resolve_manual
|
||||
from copienator.answer_origins import origins_for, save_origins
|
||||
from copienator.annotation_layout import save_parts, answer_parts, layout_for, page_parts
|
||||
from copienator.annotation_data import load_annotation_data
|
||||
from copienator_gui.app import has_manual_conflicts
|
||||
|
||||
|
||||
class ManualResolutionStateTests(unittest.TestCase):
|
||||
def test_merge_preserves_low_margin_and_page_order(self):
|
||||
for pipe_first in (False, True):
|
||||
with self.subTest(pipe_first=pipe_first), tempfile.TemporaryDirectory() as temporary:
|
||||
workspace = self.fixture(Path(temporary), '->')
|
||||
workspace.manual_resolutions_file.write_text(
|
||||
'Copie01 A -> |B\n' if pipe_first else 'Copie01 A -> B|\n')
|
||||
copies = workspace.copies_dir / 'Copie01'
|
||||
for label, status in (('A', 'low'), ('B', 'normal')):
|
||||
pdf = copies / f'{label}.pdf'
|
||||
save_parts(pdf, [{'margin_status': status} for _ in page_parts(pdf)])
|
||||
resolve_manual.resolve_manual(workspace)
|
||||
target = resolve_manual.get_actual_pdf(workspace.copies_dir, '01', 'B')
|
||||
self.assertEqual(layout_for(target)['margin_left'], 400)
|
||||
statuses = [part['margin_status'] for part in answer_parts(target)]
|
||||
self.assertEqual(statuses[0], 'low' if pipe_first else 'normal')
|
||||
self.assertEqual(statuses[-1], 'normal' if pipe_first else 'low')
|
||||
|
||||
def test_automatic_additional_content_records_origin_but_wrong_label_does_not(self):
|
||||
for kind in ("additional-answer", "wrong-label"):
|
||||
with self.subTest(kind=kind), tempfile.TemporaryDirectory() as temporary:
|
||||
|
||||
Reference in new issue
Block a user