Skip to content

Release 6.0.0 (#140) #345

Release 6.0.0 (#140)

Release 6.0.0 (#140) #345

Workflow file for this run

name: unit tests
on:
push:
branches-ignore:
- main
jobs:
analyze:
name: Analyze
runs-on: ubuntu-latest
env:
TEST_TOKEN: ${{ secrets.TEST_TOKEN }}
steps:
- name: Setup Dart Action
uses: dart-lang/setup-dart@v1
- name: Checkout
uses: actions/[email protected]
- name: Cache
uses: actions/cache@v2
with:
path: ~/.pub-cache
key: ${{ runner.os }}-pubspec-${{ hashFiles('**/pubspec.lock') }}
restore-keys: |
${{ runner.os }}-pubspec-
- name: Install dependencies
run: dart pub get
- name: Analyze project source
run: dart analyze
format:
name: Format
runs-on: ubuntu-latest
env:
TEST_TOKEN: ${{ secrets.TEST_TOKEN }}
steps:
- name: Setup Dart Action
uses: dart-lang/setup-dart@v1
- name: Checkout
uses: actions/[email protected]
- name: Cache
uses: actions/cache@v2
with:
path: ~/.pub-cache
key: ${{ runner.os }}-pubspec-${{ hashFiles('**/pubspec.lock') }}
restore-keys: |
${{ runner.os }}-pubspec-
- name: Install dependencies
run: dart pub get
- name: Format
run: dart format --set-exit-if-changed -l 100 ./lib
tests:
needs: [ format, analyze ]
name: Tests
runs-on: ubuntu-latest
env:
TEST_TOKEN: ${{ secrets.TEST_TOKEN }}
steps:
- name: Setup Dart Action
uses: dart-lang/setup-dart@v1
- name: Install lcov
run: sudo apt-get install -y lcov
- name: Checkout
uses: actions/[email protected]
- name: Cache
uses: actions/cache@v2
with:
path: ~/.pub-cache
key: ${{ runner.os }}-pubspec-${{ hashFiles('**/pubspec.lock') }}
restore-keys: |
${{ runner.os }}-pubspec-
- name: Install dependencies
run: dart pub get
- name: Unit tests
run: dart run test --coverage="coverage" test/unit/**
- name: Integration tests
run: dart run test --coverage="coverage" test/integration/**
- name: Format coverage
run: dart run coverage:format_coverage --lcov --in=coverage --out=coverage/coverage.lcov --packages=.dart_tool/package_config.json --report-on=lib
- name: Generate coverage
run: genhtml coverage/coverage.lcov -o coverage/coverage_gen
- name: Extract branch name
shell: bash
run: echo "##[set-output name=branch;]$(echo ${GITHUB_REF#refs/heads/})"
id: extract_branch
- name: Deploy code coverage
uses: easingthemes/[email protected]
env:
SSH_PRIVATE_KEY: ${{ secrets.DEPLOY_SSH_SERVER_KEY }}
ARGS: '-rltDzvO --rsync-path="mkdir -p ${{ secrets.DEPLOY_REMOTE_TARGET }}/coverage/nyxx_commands/${{ steps.extract_branch.outputs.branch }}/ && rsync"'
SOURCE: "coverage/coverage_gen/"
REMOTE_HOST: ${{ secrets.DEPLOY_REMOTE_HOST }}
REMOTE_USER: ${{ secrets.DEPLOY_REMOTE_USER }}
TARGET: "${{ secrets.DEPLOY_REMOTE_TARGET }}/coverage/nyxx_commands/${{ steps.extract_branch.outputs.branch }}/"