Skip to content

Add Workflows #8

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 39 commits into from
Jun 27, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
39 commits
Select commit Hold shift + click to select a range
a1ad7a3
add dependabot yaml file
AlaaElattar Nov 26, 2023
088b0b3
add workflow for tests
AlaaElattar Nov 26, 2023
9629acb
update version of dart
AlaaElattar Nov 26, 2023
9eb5e2b
fix dart version
AlaaElattar Nov 26, 2023
c4659bb
remove format checking
AlaaElattar Nov 26, 2023
85167df
add melos
AlaaElattar Nov 26, 2023
08128dd
add analyze
AlaaElattar Nov 26, 2023
564d31a
add melos
AlaaElattar Nov 26, 2023
2ef11a6
use dart analyze instead
AlaaElattar Nov 26, 2023
a640ae6
add melos bootstrap
AlaaElattar Nov 26, 2023
246cee2
make dependabot daily
AlaaElattar Nov 26, 2023
b491a0c
add coverage workflow
AlaaElattar Nov 26, 2023
dabc721
rename workflow to build
AlaaElattar Nov 26, 2023
6579a64
fix workflow
AlaaElattar Nov 26, 2023
396993a
remove --no-pub --coverage
AlaaElattar Nov 26, 2023
ee3f8d3
update failed workflow
AlaaElattar Nov 26, 2023
760ae6e
remove analyze
AlaaElattar Nov 26, 2023
5b2e4c9
add flutter
AlaaElattar Nov 26, 2023
b13a93a
add tests workflow
AlaaElattar Nov 26, 2023
363a031
update melos.yaml
AlaaElattar Nov 26, 2023
1c190cc
fix workflow
AlaaElattar Nov 26, 2023
e733570
remove pwd
AlaaElattar Nov 26, 2023
f984c58
update workflow
AlaaElattar Nov 26, 2023
a4c1b7f
add link to badge
AlaaElattar Nov 26, 2023
77cae0d
update melos.yaml
AlaaElattar Nov 26, 2023
8390a71
update badge automatically
AlaaElattar Nov 26, 2023
d7aa669
remove coverage from gitignore
AlaaElattar Nov 26, 2023
bf44d03
add coverage file
AlaaElattar Nov 26, 2023
3a6511d
update coverage badge
AlaaElattar Nov 26, 2023
fae73d7
add coverage in gitignore
AlaaElattar Nov 26, 2023
af270a4
rename analyze to linting
AlaaElattar Nov 27, 2023
da0dcc7
Merge branch 'main' of https://github.com/codescalers/tfgrid-sdk-dart…
AlaaElattar Jun 27, 2024
ca77596
fix lint workflow
AlaaElattar Jun 27, 2024
a238575
make all workflows work on pull requests against main branch
AlaaElattar Jun 27, 2024
b303a95
add coverage to gitignore
AlaaElattar Jun 27, 2024
45e8af7
remove unnecssary logic from coverage workflow
AlaaElattar Jun 27, 2024
40a917b
fix coverage workflow
AlaaElattar Jun 27, 2024
cd753b8
Delete coverage directory
AlaaElattar Jun 27, 2024
762e84d
fix renaming && remove tests workflow && add conditions checking success
AlaaElattar Jun 27, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions .github/dependabot.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
version: 2
enable-beta-ecosystems: true
updates:
- package-ecosystem: "pub"
directory: "/"
schedule:
interval: "daily"
30 changes: 30 additions & 0 deletions .github/workflows/analyze.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
name: Analyze

on:
pull_request:
branches:
- main
push:
branches:
- main

jobs:
build:
runs-on: ubuntu-latest

steps:
- name: Set up Repository
uses: actions/checkout@v2

- name: Setup Dart SDK
uses: dart-lang/setup-dart@v1.6.0
with:
sdk: "stable"
- name: Install Melos
run: dart pub global activate melos

- name: Install dependencies
run: dart pub global run melos bootstrap

- name: Analyze
run: dart analyze .
59 changes: 59 additions & 0 deletions .github/workflows/coverage.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
name: Upload Coverage

on:
pull_request:
branches:
- main
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

same here add on pushing on the main branch.

push:
branches:
- main

jobs:
build:
runs-on: ubuntu-latest

steps:
- name: Set up Repository
uses: actions/checkout@v2

- name: List Files
run: ls -R

- name: Setup Dart SDK
uses: dart-lang/setup-dart@v1.6.0
with:
sdk: "stable"
- name: Setup Flutter
uses: subosito/flutter-action@v2
with:
flutter-version: "3.16.0"

- name: Install Melos
run: dart pub global activate melos

- name: Install dependencies
run: melos bootstrap

- name: Run unit tests
run: melos run unit_test

- name: Create coverage directory
run: mkdir -p coverage

- name: Run unit tests
run: |
melos exec rm -rf coverage
melos run unit_test

- name: Calculate and merge coverage
if: success()
run: |
melos exec --dir-exists="coverage" -- bash -c 'dart pub global run coverde filter --input coverage/lcov.info --output coverage/filtered.lcov.info --filters .g.dart'
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please split running the tests and calculating the coverage into 2 different steps. the coverage step should check if the tests passed successfully to run.

melos exec --dir-exists="coverage" -- bash -c 'dart pub global run coverde value -i coverage/filtered.lcov.info > coverage/result.txt'

- name: Upload coverage to Codecov
if: success()
uses: codecov/codecov-action@v3
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this step should check if the coverage step is finished without errors

with:
token: ${{ secrets.CODECOV_TOKEN }}
files: coverage/filtered.lcov.info
2 changes: 0 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,11 +1,9 @@
coverage/
coverage.lcov

.dart_tool
/packages/*/.dart_tool
/packages/*/build
/packages/*/idea

coverage/
*.iml
.idea
3 changes: 2 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
# tfgrid-sdk-dart

[![melos](https://img.shields.io/badge/maintained%20with-melos-f700ff.svg?style=flat-square)](https://github.com/invertase/melos)
[![melos](https://img.shields.io/badge/maintained%20with-melos-f700ff.svg?style=flat-square)](https://github.com/invertase/melos) [![codecov](https://codecov.io/gh/codescalers/tfgrid-sdk-dart/graph/badge.svg?token=O34UDTMW5O)](https://codecov.io/gh/codescalers/tfgrid-sdk-dart)

## Prerequisites

Make sure you have the following tools installed:
Expand Down
10 changes: 4 additions & 6 deletions melos.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,16 +5,14 @@ packages:
scripts:
analyze:
run: melos exec -- flutter analyze .
description: Run `dart analyze` in all packages.
description: Run `dart analyze` in all packages (linting).
unit_test:
run: melos exec --dir-exists="test" --fail-fast -- flutter test --no-pub --coverage
description: Run all Flutter tests in this project.
unit_test_and_coverage:
description: Merge all packages coverage tracefiles ignoring data related to generated files.
description: Merge all packages coverage trace files ignoring data related to generated files.
run: |
melos exec rm -rf coverage
melos run unit_test
melos exec dart pub global run coverde filter --input ./coverage/lcov.info --output ./coverage/filtered.lcov.info --filters .g.dart
melos exec dart pub global run coverde value -i ./coverage/filtered.lcov.info > ./coverage/result.txt


melos exec -c 1 --file-exists=coverage/lcov.info -- coverde filter --input ./coverage/lcov.info --output MELOS_ROOT_PATH/coverage/filtered.lcov.info --filters \.g\.dart
coverde value -i coverage/filtered.lcov.info > MELOS_ROOT_PATH/coverage/result.txt
23 changes: 11 additions & 12 deletions packages/signer/test/signer_test.dart
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
import 'dart:typed_data';

import 'package:polkadart_keyring/polkadart_keyring.dart';
import 'package:signer/signer.dart';
import 'package:test/test.dart';

Expand All @@ -18,16 +17,16 @@ void main() {
await signer.fromMnemonic(mnemonic, KPType.ed25519);
final data = 'dummyData';

final signature = await signer.sign(data);
final signature = signer.sign(data);

final isVerified = await signer.verify(signature, data);
final isVerified = signer.verify(signature, data);
expect(isVerified, isTrue);
});

test('Test not initializing signer', () async {
final data = 'dummyData';
try {
await signer.sign(data);
signer.sign(data);
fail('Expected an exception when signing with uninitialized signer.');
} catch (e) {
expect(e, isA<Exception>());
Expand All @@ -49,10 +48,10 @@ void main() {
await signer.fromMnemonic(mnemonic, KPType.ed25519);

final data = 'dummyData';
final signature = await signer.sign(data);
final modifiedSignature = signature + '00';
final signature = signer.sign(data);
final modifiedSignature = '${signature}00';

final isVerified = await signer.verify(modifiedSignature, data);
final isVerified = signer.verify(modifiedSignature, data);
expect(isVerified, isFalse);
});

Expand All @@ -63,7 +62,7 @@ void main() {
148,
202,
]);
expect(() async => await signer.fromSeed(invalidSeed, KPType.ed25519),
expect(() async => signer.fromSeed(invalidSeed, KPType.ed25519),
throwsException);
});

Expand All @@ -78,9 +77,9 @@ void main() {
await signer.fromMnemonic(mnemonic, KPType.ed25519);

final data = '';
final signature = await signer.sign(data);
final signature = signer.sign(data);

final isVerified = await signer.verify(signature, data);
final isVerified = signer.verify(signature, data);
expect(isVerified, isTrue);
});

Expand All @@ -90,10 +89,10 @@ void main() {
await signer.fromMnemonic(mnemonic, KPType.ed25519);

final originalData = 'originalData';
final signature = await signer.sign(originalData);
final signature = signer.sign(originalData);

final differentData = 'differentData';
final isVerified = await signer.verify(signature, differentData);
final isVerified = signer.verify(signature, differentData);
expect(isVerified, isFalse);
});
});
Expand Down
1 change: 1 addition & 0 deletions pubspec.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ environment:
dev_dependencies:
lints: ^3.0.0
test: ^1.24.0

dependencies:
coverage: ^1.7.1
melos: ^3.2.0
Loading