Commit 179c6ff7 authored by Jan Kiene's avatar Jan Kiene
Browse files

add basop-compat smoke test

parent e921cfca
Loading
Loading
Loading
Loading
+36 −23
Original line number Diff line number Diff line
@@ -402,36 +402,16 @@ build-codec-windows-msbuild:
# ---------------------------------------------------------------

# test that runs all modes with 1s input signals
codec-smoke-test:
.smoke-test-template:
  extends:
    - .test-job-linux-needs-testv-dir
    - .rules-merge-request-to-main
  timeout: "20 minutes"
  tags:
    - ivas-linux-fast
  stage: test
  needs:
    [
      "build-codec-linux-cmake",
      "build-codec-linux-make",
      "build-codec-instrumented-linux",
      "build-codec-sanitizers-linux",
    ]
  script:
  before_script:
    - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/print-common-info.sh
    # LTV update needed as ltv ISM metadata files are used
    - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/update-ltv-repo.sh

    # for MRs to basop-ci-branch-pc, we want to test with the BASOP float reference build
    # per default, the smoke test builds the current repo again with WMOPS activated to catch unbalanced instrumentation macros
    # TODO: make manual for basop-CI merges
    - if [ "$CI_MERGE_REQUEST_TARGET_BRANCH_NAME" = "basop-ci-branch" ]; then
    -   bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/float/build-binaries-from-basop-repo.sh ivas-float-update
    -   bash ci/smoke_test.sh coverage
    - else
    -   bash ci/smoke_test.sh
    - fi

  after_script:
    ### analyze for failures
    - if ! [ -s smoke_test_output.txt ] || ! [ -s smoke_test_output_jbm.txt ] || ! [ -s smoke_test_output_hrtf.txt ]; then echo "Error in smoke test"; exit 1; fi
    - ret_val=0
@@ -449,6 +429,39 @@ codec-smoke-test:
      - smoke_test_output_hrtf.txt
    expose_as: "Smoke test results"

codec-smoke-test-float:
  extends:
    - .smoke-test-template
    - .rules-merge-request-to-main
  timeout: "20 minutes"
  stage: test
  needs:
    [
      "build-codec-linux-cmake",
      "build-codec-linux-make",
      "build-codec-instrumented-linux",
      "build-codec-sanitizers-linux",
    ]
  script:
    - bash ci/smoke_test.sh

codec-smoke-test-basop-compat:
  extends:
    - .smoke-test-template
  rules:
    - if: $CI_PIPELINE_SOURCE == 'merge_request_event' && $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == "main"
      when: manual
    - if: $CI_PIPELINE_SOURCE == 'push'
      when: never
  timeout: "20 minutes"
  stage: basop-compat
  allow_failure: true
  script:
    # get basop code and build binaries
    - bash "${CI_PROJECT_DIR}"/ivas-codec-ci/snippets/float/build-binaries-from-basop-repo.sh ivas-float-update
    # the "coverage" argument actually means "do not build again with instrumentation, but use the existing binaries"
    - bash ci/smoke_test.sh coverage

# code selftest testvectors with memory-sanitizer binaries
codec-msan:
  extends: