# -*- coding: utf-8 -*- import system_tests from system_tests import CaseMeta, path, check_no_ASAN_UBSAN_errors class TestVerboseExtractXmpSidecarToStdout(metaclass=CaseMeta): """ Regression test for 'verbose extracting XMP sidecar to stdout' bug described in: https://github.com/Exiv2/exiv2/issues/1934 """ url = "https://github.com/Exiv2/exiv2/issues/1934" filename = path("$data_path/issue_1934_poc4.jpg") commands = ["$exiv2 --verbose --extract X- $filename"] stdout = [""" Value 1 Value 1 """] stderr = [""] retval = [0] class TestVerboseModifyRegAddExtractXmpSidecarToStdout(metaclass=CaseMeta): """ Regression test for 'verbose with modify register and add when extracting XMP sidecar to stdout' bug described in: https://github.com/Exiv2/exiv2/issues/1934 """ url = "https://github.com/Exiv2/exiv2/issues/1934" filename = path("$data_path/issue_1934_poc4.jpg") commands = ["""$exiv2 --verbose --Modify "reg TempGroup tempgroup/" --Modify "add Xmp.TempGroup.val Value 1" --extract X- $filename"""] stdout = [""" Value 1 Value 1 """] stderr = [""] retval = [0] class TestVerboseModifySetExtractXmpSidecarToStdout(metaclass=CaseMeta): """ Regression test for 'verbose modify set when extracting XMP sidecar to stdout' bug described in: https://github.com/Exiv2/exiv2/issues/1934 """ url = "https://github.com/Exiv2/exiv2/issues/1934" filename = path("$data_path/issue_1934_poc4.jpg") commands = ["""$exiv2 --verbose --Modify "set Xmp.dc.subject Value 2" --extract X- $filename"""] stdout = [""" Value 1 Value 2 Value 1 """] stderr = [""] retval = [0] class TestVerboseModifyDelExtractXmpSidecarToStdout(metaclass=CaseMeta): """ Regression test for 'verbose modify delete when extracting XMP sidecar to stdout' bug described in: https://github.com/Exiv2/exiv2/issues/1934 """ url = "https://github.com/Exiv2/exiv2/issues/1934" filename = path("$data_path/issue_1934_poc4.jpg") commands = ["""$exiv2 --verbose --Modify "del Xmp.dc.subject" --extract X- $filename"""] stdout = [""" Value 1 """] stderr = [""] retval = [0] class TestVerboseExtractRawMetadataToStdout(metaclass=CaseMeta): """ Regression test for 'verbose extracting raw metadata to stdout' bug described in: https://github.com/Exiv2/exiv2/issues/1934 """ url = "https://github.com/Exiv2/exiv2/issues/1934" filenameJPG = path("$data_path/issue_1934_poc4.jpg") filenameEXV = path("$tmp_path/issue_1934_poc4.exv") filenameRefEXV = path("$data_path/issue_1934_poc4_ref.exv") commands = ["$exiv2 --verbose --extract XXeix- $filenameJPG > $filenameEXV", "cmp $filenameEXV $filenameRefEXV"] stderr = [""]*2 retval = [0]*2 compare_stdout = check_no_ASAN_UBSAN_errors class TestVerboseExtractThumbnailToStdout(metaclass=CaseMeta): """ Regression test for 'verbose extracting the thumbnail to stdout' bug described in: https://github.com/Exiv2/exiv2/issues/1934 """ url = "https://github.com/Exiv2/exiv2/issues/1934" filenameJPG = path("$data_path/issue_1934_poc4.jpg") filenameThumbnail = path("$tmp_path/issue_1934_poc4-thumb.jpg") filenameRefThumbnail = path("$data_path/issue_1934_poc4-thumb_ref.jpg") commands = ["$exiv2 --verbose --extract t- $filenameJPG > $filenameThumbnail", "cmp $filenameThumbnail $filenameRefThumbnail"] stderr = [""]*2 retval = [0]*2 compare_stdout = check_no_ASAN_UBSAN_errors class TestVerboseExtractICCProfileToStdout(metaclass=CaseMeta): """ Regression test for 'verbose extracting the ICC profile to stdout' bug described in: https://github.com/Exiv2/exiv2/issues/1934 """ url = "https://github.com/Exiv2/exiv2/issues/1934" filenameJPG = path("$data_path/issue_1934_poc4.jpg") filenameICC = path("$tmp_path/issue_1934_poc4.icc") filenameRefICC = path("$data_path/issue_1934_poc4_ref.icc") commands = ["$exiv2 --verbose --extract C- $filenameJPG > $filenameICC", "cmp $filenameICC $filenameRefICC"] stderr = [""]*2 retval = [0]*2 compare_stdout = check_no_ASAN_UBSAN_errors class TestVerboseExtractCommentToStdout(metaclass=CaseMeta): """ Regression test for 'verbose extracting the comment to stdout' bug described in: https://github.com/Exiv2/exiv2/issues/1934 """ url = "https://github.com/Exiv2/exiv2/issues/1934" filenameJPG = path("$data_path/issue_1934_poc4.jpg") filenameComment = path("$tmp_path/issue_1934_poc4_comment.txt") filenameRefComment = path("$data_path/issue_1934_poc4_comment_ref.txt") commands = ["$exiv2 --verbose --extract c- $filenameJPG > $filenameComment", "cmp $filenameComment $filenameRefComment"] stderr = [""]*2 retval = [0]*2 compare_stdout = check_no_ASAN_UBSAN_errors