add detect and decode

cv2_segfault_repro_1
scito 1 year ago
parent 7c672f8791
commit 9b1f22fe23

@ -43,15 +43,27 @@ qreader_available: bool = extract_otp_secrets.qreader_available
# @pytest.mark.skipif(sys.platform.startswith("win") or not qreader_available or sys.implementation.name == 'pypy' or sys.version_info >= (3, 10), reason="Quickfix")
def test_cv2_segfault() -> None:
# Act
def test_cv2_segfault(qr_mode: str) -> None:
print(f'QRmode: {qr_mode}')
print('cv2.imread')
img = cv2.imread('tests/data/test_googleauth_export.png')
print('zbar.decode')
zbar.decode(img)
qr_mode_2 = QRMode[qr_mode]
print(f'detect and decode for qr_mode {qr_mode_2}')
if qr_mode_2 in [QRMode.QREADER, QRMode.DEEP_QREADER]:
QReader().detect_and_decode(img, qr_mode == QRMode.DEEP_QREADER)
elif qr_mode_2 == QRMode.CV2:
cv2.QRCodeDetector().detectAndDecode(img)
elif qr_mode_2 == QRMode.WECHAT:
cv2.wechat_qrcode.WeChatQRCode().detectAndDecode(img)
elif qr_mode_2 == QRMode.ZBAR:
zbar.decode(img)
print('extract_otp_secrets.main')
extract_otp_secrets.main(['tests/data/test_googleauth_export.png'])
extract_otp_secrets.main(['--qr', qr_mode, 'tests/data/test_googleauth_export.png'])
print('Done')

Loading…
Cancel
Save