diff --git a/.github/workflows/coverage.yaml b/.github/workflows/coverage.yaml new file mode 100644 index 00000000..4be53bb4 --- /dev/null +++ b/.github/workflows/coverage.yaml @@ -0,0 +1,34 @@ +name: Coverage + +on: + push: + branches: [ master ] + +jobs: + coverage: + runs-on: ubuntu-latest + steps: + - + name: checkout + uses: actions/checkout@v2 + - + name: packages + run: apt-get update && apt-get install -y libmosquitto1 libmosquitto1-dev + - + name: build + run: cmake -Dcoverage=ON -DBUILD_TESTING . && make + - + name: test regular + run: cd src/lib/ebus/test && ./test_symbol && ./test_filereader && ./test_data && ./test_message + - + name: test contrib + run: cd src/lib/ebus/contrib/test && ./test_contrib + - + name: test coverage + run: ./test_coverage.sh + - + name: prepare result + run: find . -type f -name '*.gcno' -exec bash -c "(f={}; ls -l \$f; cd \${f%/*}; gcov -pb \${f##*/})" \; + - + name: push result + run: bash <(curl -s https://codecov.io/bash) -X gcov diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 265108b4..00000000 --- a/.travis.yml +++ /dev/null @@ -1,22 +0,0 @@ -dist: trusty -language: cpp -addons: - apt: - sources: - - ubuntu-toolchain-r-test - packages: - - g++-4.8 - - php5-cli -before_install: - - sudo apt-get -qq update - - sudo apt-get install -y libmosquitto0 libmosquitto0-dev - - export CXX=g++-4.8 -script: - - ./autogen.sh --enable-coverage && make all test - - (cd src/lib/ebus/test && ./test_symbol && ./test_filereader && ./test_data && ./test_message) - - (cd src/lib/ebus/contrib/test && ./test_contrib) - - ./src/ebusd/ebusd --help - - ./test_coverage.sh -after_success: - - find . -type f -name '*.gcno' -exec bash -c "(f={}; ls -l \$f; cd \${f%/*}; gcov-4.8 -pb \${f##*/})" \; - - bash <(curl -s https://codecov.io/bash) -X gcov diff --git a/test_coverage.sh b/test_coverage.sh index 8f25bc19..cd2c0f88 100755 --- a/test_coverage.sh +++ b/test_coverage.sh @@ -335,7 +335,7 @@ curl -s "http://localhost:8878/data/?verbose=1" >/dev/null curl -s "http://localhost:8878/data/?indexed=1&numeric=1" >/dev/null curl -s "http://localhost:8878/data/?full" >/dev/null curl -s "http://localhost:8878/data/mc.5/installparam?poll=1&user=test&secret=testpass" >/dev/null -curl -T .travis.yml http://localhost:8878/data/ +curl -T test_coverage.sh http://localhost:8878/data/ echo `date` "commands done" kill $lstpid verify=`./src/tools/ebusctl -p 8877 info|egrep "^address 04:"`