From 0dc50bdf80e4e958c8ca4874fdd8fe1b086f9d22 Mon Sep 17 00:00:00 2001 From: Novus Nota <68142933+novusnota@users.noreply.github.com> Date: Sun, 24 Sep 2023 12:58:58 +0200 Subject: [PATCH] feat: GitHub Action for testing on push/PR --- .github/FUNDING.yml | 1 - .github/workflows/check_and_test.yml | 35 ++++++++++++++++++++++++++++ test/client/jsonrpc_test.dart | 3 ++- 3 files changed, 37 insertions(+), 2 deletions(-) create mode 100644 .github/workflows/check_and_test.yml diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml index 9de1258..b4b562b 100644 --- a/.github/FUNDING.yml +++ b/.github/FUNDING.yml @@ -1,5 +1,4 @@ # These are supported funding model platforms -github: [novusnota] ko_fi: novusnota # for crypto, check out DONATE.md diff --git a/.github/workflows/check_and_test.yml b/.github/workflows/check_and_test.yml new file mode 100644 index 0000000..8b3b98d --- /dev/null +++ b/.github/workflows/check_and_test.yml @@ -0,0 +1,35 @@ +name: ✅ Check and test + +on: + push: + branches: [ main ] + pull_request: + branches: [ main ] + +concurrency: + group: ci-${{github.actor}}-${{github.head_ref || github.run_number}}-${{github.ref}}-check-and-test + cancel-in-progress: true + +jobs: + check-and-test: + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-latest, macos-latest, windows-latest] + steps: + - uses: actions/checkout@v3 + - uses: dart-lang/setup-dart@v1 + with: + sdk: stable + + - name: Install dependencies + run: dart pub get + + - name: Verify formatting + run: dart format --output=none --set-exit-if-changed . + + - name: Analyze project source + run: dart analyze --fatal-infos + + - name: Run tests + run: dart test \ No newline at end of file diff --git a/test/client/jsonrpc_test.dart b/test/client/jsonrpc_test.dart index 35ac289..c51280b 100644 --- a/test/client/jsonrpc_test.dart +++ b/test/client/jsonrpc_test.dart @@ -1,8 +1,9 @@ +@Skip('Can fail due to errors on the toncenter side, skipping for now.') @TestOn('vm') import 'dart:io' show File; import 'package:tonutils/tonutils.dart' show InternalAddress, TonJsonRpc, TiInt; -import 'package:test/test.dart' show TestOn, group, test; // expect +import 'package:test/test.dart' show Skip, TestOn, group, test; // expect void main() { var apiKeyMainnet =