diff --git a/test/unit_tests/coordinate_transformer_test.py b/test/unit_tests/coordinate_transformer_test.py index 0e4201c..cb62da3 100644 --- a/test/unit_tests/coordinate_transformer_test.py +++ b/test/unit_tests/coordinate_transformer_test.py @@ -115,6 +115,9 @@ def coordinate_test_page_image(coordinate_test_pdf): @pytest.mark.parametrize("corner", ["top_left", "bottom_left"]) @pytest.mark.parametrize("coordinate_system", ["fpdf"]) def test_fpdf_coordinate_transformer(position_metadata_in_given_system, position_metadata_in_reference_system): + """We use FPDF's coordinate system as the reference system (arbitrarily). Hence, FPDFCoordinateTransformer + actually does not do anything. This test merely documents the fact, that FPDF is the reference system. + """ transformer = FPDFCoordinateTransformer() assert transformer.forward(position_metadata_in_given_system) == position_metadata_in_reference_system assert transformer.backward(position_metadata_in_reference_system) == position_metadata_in_given_system @@ -128,6 +131,12 @@ def test_fpdf_coordinate_transformer(position_metadata_in_given_system, position @pytest.mark.parametrize("corner", ["top_left", "bottom_left"]) @pytest.mark.parametrize("coordinate_system", ["fitz"]) def test_fitz_coordinate_transformer(position_metadata_in_given_system, position_metadata_in_reference_system): + """How I inferred the transformation: + + - extract images from coordinate_test_fpdf with ParsablePDFImageExtractor (see test_parsable_pdf_image_extractor) + - Compare position_metadata_in_given_system (fitz) with position_metadata_in_reference_system (fpdf) + - Observe that they are identical + """ transformer = FitzCoordinateTransformer() assert transformer.forward(position_metadata_in_given_system) == position_metadata_in_reference_system assert transformer.backward(position_metadata_in_reference_system) == position_metadata_in_given_system @@ -141,6 +150,13 @@ def test_fitz_coordinate_transformer(position_metadata_in_given_system, position @pytest.mark.parametrize("corner", ["top_left", "bottom_left"]) @pytest.mark.parametrize("coordinate_system", ["pdfnet"]) def test_pdfnet_coordinate_transformer(position_metadata_in_given_system, position_metadata_in_reference_system): + """How I inferred the transformation: + + - save coordinate_test_fpdf to disk as file f + - draw boxes for position_metadata_in_reference_system in f with draw_metadata_box + - save annotated pdf as file g + - look at discrepancy between the black square and the red box in g + """ transformer = PDFNetCoordinateTransformer() assert transformer.forward(position_metadata_in_reference_system) == position_metadata_in_given_system