Commit 3a3a23da authored by Jan Kiene's avatar Jan Kiene
Browse files

record "format" and "category" properties before encoder is run

this ensures that these are recorded even if one of the binaries fails
parent 02958130
Loading
Loading
Loading
Loading
+10 −6
Original line number Diff line number Diff line
@@ -343,6 +343,14 @@ def run_test(
    if testv_base.endswith(".pcm"):
        testv_base = testv_base[:-4]

    if sim_opts != "":
        testcase_props["category"] = CAT_JBM
    if eid_opts != "":
        testcase_props["category"] = CAT_PLC

    for k, v in testcase_props.items():
        dut_encoder_frontend.record_property(k, v)

    assert bitstream_file == "bit"
    # in the parameter file, only "bit" is used as bitstream file name
    # -> construct bitstream filename
@@ -390,8 +398,7 @@ def run_test(
            # avoid double recording of the encoder diff
            if encoder_only:
                result_props = parse_properties(cmp_result_msg, False, [MAX_ENC_DIFF])
                testcase_props.update(result_props)
                for k, v in testcase_props.items():
                for k, v in result_props.items():
                    dut_encoder_frontend.record_property(k, v)

    if encoder_only:
@@ -430,7 +437,6 @@ def run_test(
            rootdir,
            decoder_only,
        )
        testcase_props["category"] = CAT_JBM

    # check for eid-xor command line
    if eid_opts != "":
@@ -458,7 +464,6 @@ def run_test(
            rootdir,
            decoder_only,
        )
        testcase_props["category"] = CAT_PLC

    # evaluate decoder options
    dec_split = dec_opts.split()
@@ -673,8 +678,7 @@ def run_test(
            result_props = parse_properties(
                reason, output_differs, props_to_record, suffix
            )
            testcase_props.update(result_props)
            for k, v in testcase_props.items():
            for k, v in result_props.items():
                dut_decoder_frontend.record_property(k, v)

        metadata_differs = False
+27 −10
Original line number Diff line number Diff line
@@ -48,7 +48,15 @@ from tests.conftest import (
    get_split_idx,
)
from ..cmp_stats_files import cmp_stats_files
from ..constants import CAT_BITRATE_SWITCHING, CAT_DTX, CAT_NORMAL, CAT_PLC, TESTV_DIR, MAX_ENC_FILE_LENGTH_DIFF, MAX_ENC_STATS_DIFF
from ..constants import (
    CAT_BITRATE_SWITCHING,
    CAT_DTX,
    CAT_NORMAL,
    CAT_PLC,
    TESTV_DIR,
    MAX_ENC_FILE_LENGTH_DIFF,
    MAX_ENC_STATS_DIFF,
)
from tests.testconfig import use_ltv

from tests.renderer.utils import check_and_makedir, binauralize_input_and_output
@@ -131,6 +139,7 @@ def test_pca_enc(
    cut_testv = True
    cut_gain = "1.0"
    plc_pattern = None
    testcase_props = {"format": "SBA", "category": CAT_NORMAL}

    if "ltv" in tag:
        tag = f"ltv{sampling_rate}_FOA"
@@ -142,6 +151,8 @@ def test_pca_enc(
        assert 0

    input_config = SBA_FORMAT[abs(int(sba_order))]
    for k, v in testcase_props.items():
        dut_encoder_frontend.record_property(k, v)

    if not decoder_only:
        sba_enc(
@@ -190,7 +201,6 @@ def test_pca_enc(
            gain_flag,
            keep_files,
            decoder_only,
            testcase_props,
            cut_gain=cut_gain,
            cut_testv=cut_testv,
            plc_pattern=plc_pattern,
@@ -297,6 +307,9 @@ def test_sba_enc_system(
    except ValueError:
        testcase_props["category"] = CAT_BITRATE_SWITCHING

    for k, v in testcase_props.items():
        dut_encoder_frontend.record_property(k, v)

    if not decoder_only:
        ref_stats_file, dut_stats_file = sba_enc(
            dut_encoder_frontend,
@@ -380,7 +393,6 @@ def test_sba_enc_system(
            gain_flag,
            keep_files,
            decoder_only,
            testcase_props,
            cut_gain=cut_gain,
            cut_testv=cut_testv,
            plc_pattern=plc_pattern,
@@ -447,6 +459,8 @@ def test_spar_hoa2_enc_system(
        assert 0

    input_config = SBA_FORMAT[abs(int(sba_order))]
    for k, v in testcase_props.items():
        dut_encoder_frontend.record_property(k, v)

    if not decoder_only:
        ref_stats_file, dut_stats_file = sba_enc(
@@ -531,7 +545,6 @@ def test_spar_hoa2_enc_system(
            gain_flag,
            keep_files,
            decoder_only,
            testcase_props,
            cut_gain=cut_gain,
            cut_testv=cut_testv,
            plc_pattern=plc_pattern,
@@ -598,6 +611,8 @@ def test_spar_hoa3_enc_system(
        assert 0

    input_config = SBA_FORMAT[abs(int(sba_order))]
    for k, v in testcase_props.items():
        dut_encoder_frontend.record_property(k, v)

    if not decoder_only:
        ref_stats_file, dut_stats_file = sba_enc(
@@ -676,7 +691,6 @@ def test_spar_hoa3_enc_system(
            gain_flag,
            keep_files,
            decoder_only,
            testcase_props,
            cut_gain=cut_gain,
            cut_testv=cut_testv,
            plc_pattern=plc_pattern,
@@ -764,6 +778,9 @@ def test_sba_enc_BWforce_system(
    except ValueError:
        testcase_props["category"] = CAT_BITRATE_SWITCHING

    for k, v in testcase_props.items():
        dut_encoder_frontend.record_property(k, v)

    if not decoder_only:
        ref_stats_file, dut_stats_file = sba_enc(
            dut_encoder_frontend,
@@ -847,7 +864,6 @@ def test_sba_enc_BWforce_system(
            gain_flag,
            keep_files,
            decoder_only,
            testcase_props,
            cut_gain=cut_gain,
            cut_testv=cut_testv,
            plc_pattern=plc_pattern,
@@ -950,6 +966,11 @@ def test_sba_plc_system(
        int(bitrate)
    except ValueError:
        testcase_props["category"] = CAT_BITRATE_SWITCHING
    if plc_pattern is not None:
        testcase_props["category"] = CAT_PLC

    for k, v in testcase_props.items():
        dut_encoder_frontend.record_property(k, v)

    if not decoder_only:
        sba_enc(
@@ -998,7 +1019,6 @@ def test_sba_plc_system(
            gain_flag,
            keep_files,
            decoder_only,
            testcase_props,
            cut_gain=cut_gain,
            cut_testv=cut_testv,
            plc_pattern=plc_pattern,
@@ -1176,7 +1196,6 @@ def sba_dec(
    gain_flag,
    keep_files,
    decoder_only,
    testcase_props
    cut_gain="1.0",
    cut_testv=False,
    plc_pattern=None,
@@ -1220,7 +1239,6 @@ def sba_dec(

    plc_file = None
    if plc_pattern is not None:
        testcase_props["category"] = CAT_PLC
        plc_file = f"{TESTV_DIR}/{plc_pattern}.g192"

    if sid == 1:
@@ -1361,7 +1379,6 @@ def sba_dec(
            output_differs_parts, reason_parts, prop_suffix
        ):
            props = parse_properties(reason, output_differs, props_to_record, suffix)
            props.update(testcase_props)
            for k, v in props.items():
                dut_decoder_frontend.record_property(k, v)