Julius Unverfehrt eb18ae8719 Pull request #5: Tests&Fixes
Merge in RR/image-prediction from tests to master

Squashed commit of the following:

commit 1776e3083c97025e699d579f936dd0cc6e1fe152
Author: Julius Unverfehrt <julius.unverfehrt@iqser.com>
Date:   Mon Mar 21 13:54:27 2022 +0100

    blacckkkyykykykyk

commit 4c9e6c38bdcea7d81008bf9dfcfcdd19d199da6a
Author: Julius Unverfehrt <julius.unverfehrt@iqser.com>
Date:   Mon Mar 21 13:53:40 2022 +0100

    add predicting as subprocess, add workaround for keras not working if the model was loaded in different process

commit 530de2ff8979c70aa22f06edf297864787e0cc79
Author: Julius Unverfehrt <julius.unverfehrt@iqser.com>
Date:   Mon Mar 21 13:36:23 2022 +0100

    refactor

commit 130d0e8b23e0375a6fd240ac8aa00492c341a716
Author: Julius Unverfehrt <julius.unverfehrt@iqser.com>
Date:   Mon Mar 21 13:34:54 2022 +0100

    add minimal not working example for keras bug in multiprocess process

commit 2589598b052f680fd702df4f60d56a55778474a9
Author: Julius Unverfehrt <julius.unverfehrt@iqser.com>
Date:   Mon Mar 21 11:13:45 2022 +0100

    test

commit eb6f211f02bc184e7f92d6b4d53c91da34ab9f2f
Author: Julius Unverfehrt <julius.unverfehrt@iqser.com>
Date:   Mon Mar 21 11:07:32 2022 +0100

    hardcoded test

commit 3e9bfac5cf9b2e09340e2c2c5b24a800925bcd60
Author: Julius Unverfehrt <julius.unverfehrt@iqser.com>
Date:   Mon Mar 21 11:01:21 2022 +0100

    test

commit 3d9c4d8856522cc2a22b2a7b9ea64d34629eb2c1
Author: Julius Unverfehrt <julius.unverfehrt@iqser.com>
Date:   Mon Mar 21 10:57:03 2022 +0100

    change test

commit 58ca784d6c56fd63734062d0c40b6b39550cf7d7
Author: Julius Unverfehrt <julius.unverfehrt@iqser.com>
Date:   Mon Mar 21 10:21:38 2022 +0100

    fix test

commit 6faad5ad5b6ef59bb5ef701b57d4c4addd17de0e
Author: Julius Unverfehrt <julius.unverfehrt@iqser.com>
Date:   Mon Mar 21 10:00:28 2022 +0100

    add predictor test

commit 3fbca0ac23821568a8afa904a8fb33ab0679f129
Author: Julius Unverfehrt <julius.unverfehrt@iqser.com>
Date:   Fri Mar 18 13:04:13 2022 +0100

    refactor folder structure

commit 90e3058c7124394a9f229d50278e57194f3d875d
Author: Julius Unverfehrt <julius.unverfehrt@iqser.com>
Date:   Fri Mar 18 12:58:02 2022 +0100

    add response test

commit 2a2deffd0b461ec5161009b3923623152f4c8f44
Author: Julius Unverfehrt <julius.unverfehrt@iqser.com>
Date:   Fri Mar 18 12:56:32 2022 +0100

    add test infrastructure
2022-03-23 11:49:05 +01:00

27 lines
1.0 KiB
Python

def test_predict_pdf_works(predictor, test_pdf):
# FIXME ugly test since there are '\n's in the dict with unknown heritage
predictions, metadata = predictor.predict_pdf(test_pdf)
predictions = [p for p in predictions][0]
assert predictions["class"] == "formula"
probabilities = predictions["probabilities"]
# Floating point precision problem for output so test only that keys exist not the values
assert all(key in probabilities for key in ("formula", "other", "signature", "logo"))
metadata = list(metadata)
metadata = dict(**metadata[0])
metadata.pop("document_filename") # temp filename cannot be tested
assert metadata == {
"px_width": 389.0,
"px_height": 389.0,
"width": 194.49999000000003,
"height": 194.49998999999997,
"x1": 320.861,
"x2": 515.36099,
"y1": 347.699,
"y2": 542.19899,
"page_width": 595.2800000000001,
"page_height": 841.89,
"page_rotation": 0,
"page_idx": 1,
"n_pages": 3,
}