---
# Runs Tests on Pushes to `master` and Pull Requests
name: Tests
on:
  push:
    branches:
      - master
    paths:
      - 'CMakeLists.txt'
      - '**.c'
      - '**.h'
  pull_request:
    paths:
      - 'CMakeLists.txt'
      - '**.c'
      - '**.h'
env:
  DISABLE_TELEMETRY: 1
concurrency:
  group: tests-${{ github.ref }}
  cancel-in-progress: true
jobs:
  unit-tests-legacy:
    name: Unit Tests (legacy)
    runs-on: ubuntu-latest
    steps:
      - name: Checkout
        uses: actions/checkout@v3
        with:
          submodules: recursive
      - name: Prepare environment
        run: |
          ./packaging/installer/install-required-packages.sh --dont-wait --non-interactive netdata-all
          sudo apt-get install -y libjson-c-dev libyaml-dev libipmimonitoring-dev libcups2-dev libsnappy-dev \
                                  libprotobuf-dev libprotoc-dev libssl-dev protobuf-compiler \
                                  libnetfilter-acct-dev
      - name: Run ./tests/run-unit-tests.sh
        env:
          CFLAGS: "-O1 -DNETDATA_INTERNAL_CHECKS=1 -DNETDATA_VERIFY_LOCKS=1"
        run: |
          ./tests/run-unit-tests.sh
