Add codecov (#333)

This commit is contained in:
Xavier H
2024-02-21 10:03:45 +01:00
committed by GitHub
parent 8881e357c6
commit 31ab666099
18 changed files with 141 additions and 67 deletions

View File

@ -8,15 +8,12 @@ on:
jobs: jobs:
analyze_and_test: analyze_and_test:
name: Flutter analyze name: Flutter analyze
strategy:
matrix:
flutter: ['stable']
runs-on: macos-13 runs-on: macos-13
steps: steps:
- uses: actions/checkout@v4 - uses: actions/checkout@v4
- uses: subosito/flutter-action@v2 - uses: subosito/flutter-action@v2
with: with:
channel: ${{ matrix.flutter }} channel: 'stable'
- run: flutter doctor - run: flutter doctor
- run: flutter --version - run: flutter --version
- run: flutter pub get - run: flutter pub get

22
.github/workflows/coverage.yaml vendored Normal file
View File

@ -0,0 +1,22 @@
name: Coverage
on:
pull_request:
push:
branches:
- master
jobs:
coverage:
name: Coverage
runs-on: macos-13
steps:
- uses: actions/checkout@v4
- uses: subosito/flutter-action@v2
with:
channel: 'stable'
- run: flutter test --coverage
- name: Upload coverage reports to Codecov
uses: codecov/codecov-action@v4.0.1
with:
token: ${{ secrets.CODECOV_TOKEN }}

View File

@ -18,7 +18,6 @@ linter:
avoid_js_rounded_ints: true avoid_js_rounded_ints: true
avoid_positional_boolean_parameters: true avoid_positional_boolean_parameters: true
avoid_redundant_argument_values: true avoid_redundant_argument_values: true
avoid_returning_null_for_future: true
avoid_setters_without_getters: true avoid_setters_without_getters: true
avoid_type_to_string: true avoid_type_to_string: true
avoid_unused_constructor_parameters: true avoid_unused_constructor_parameters: true

View File

@ -139,6 +139,30 @@ packages:
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "0.6.7" version: "0.6.7"
leak_tracker:
dependency: transitive
description:
name: leak_tracker
sha256: "78eb209deea09858f5269f5a5b02be4049535f568c07b275096836f01ea323fa"
url: "https://pub.dev"
source: hosted
version: "10.0.0"
leak_tracker_flutter_testing:
dependency: transitive
description:
name: leak_tracker_flutter_testing
sha256: b46c5e37c19120a8a01918cfaf293547f47269f7cb4b0058f21531c2465d6ef0
url: "https://pub.dev"
source: hosted
version: "2.0.1"
leak_tracker_testing:
dependency: transitive
description:
name: leak_tracker_testing
sha256: a597f72a664dbd293f3bfc51f9ba69816f84dcd403cdac7066cb3f6003f3ab47
url: "https://pub.dev"
source: hosted
version: "2.0.1"
lints: lints:
dependency: transitive dependency: transitive
description: description:
@ -166,34 +190,34 @@ packages:
dependency: transitive dependency: transitive
description: description:
name: matcher name: matcher
sha256: "1803e76e6653768d64ed8ff2e1e67bea3ad4b923eb5c56a295c3e634bad5960e" sha256: d2323aa2060500f906aa31a895b4030b6da3ebdcc5619d14ce1aada65cd161cb
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "0.12.16" version: "0.12.16+1"
material_color_utilities: material_color_utilities:
dependency: transitive dependency: transitive
description: description:
name: material_color_utilities name: material_color_utilities
sha256: "9528f2f296073ff54cb9fee677df673ace1218163c3bc7628093e7eed5203d41" sha256: "0e0a020085b65b6083975e499759762399b4475f766c21668c4ecca34ea74e5a"
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "0.5.0" version: "0.8.0"
meta: meta:
dependency: transitive dependency: transitive
description: description:
name: meta name: meta
sha256: a6e590c838b18133bb482a2745ad77c5bb7715fb0451209e1a7567d416678b8e sha256: d584fa6707a52763a52446f02cc621b077888fb63b93bbcb1143a7be5a0c0c04
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "1.10.0" version: "1.11.0"
path: path:
dependency: "direct main" dependency: "direct main"
description: description:
name: path name: path
sha256: "8829d8a55c13fc0e37127c29fedf290c102f4e40ae94ada574091fe0ff96c917" sha256: "087ce49c3f0dc39180befefc60fdb4acd8f8620e5682fe2476afd0b3688bb4af"
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "1.8.3" version: "1.9.0"
path_provider: path_provider:
dependency: "direct main" dependency: "direct main"
description: description:
@ -335,6 +359,14 @@ packages:
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "2.1.4" version: "2.1.4"
vm_service:
dependency: transitive
description:
name: vm_service
sha256: b3d56ff4341b8f182b96aceb2fa20e3dcb336b9f867bc0eafc0de10f1048e957
url: "https://pub.dev"
source: hosted
version: "13.0.0"
web: web:
dependency: transitive dependency: transitive
description: description:

View File

@ -2,54 +2,54 @@ import 'dart:ui';
import 'value/drop_shadow.dart'; import 'value/drop_shadow.dart';
/// Property values are the same type as the generic type of their corresponding /// Property values are the same type as the generic type of their corresponding
/// {@link LottieValueCallback}. With this, we can use generics to maintain type safety /// [LottieValueCallback]. With this, we can use generics to maintain type safety
/// of the callbacks. /// of the callbacks.
/// ///
/// Supported properties: /// Supported properties:
/// Transform: /// Transform:
/// {@link #TRANSFORM_ANCHOR_POINT} /// {TRANSFORM_ANCHOR_POINT}
/// {@link #TRANSFORM_POSITION} /// {TRANSFORM_POSITION}
/// {@link #TRANSFORM_OPACITY} /// {TRANSFORM_OPACITY}
/// {@link #TRANSFORM_SCALE} /// {TRANSFORM_SCALE}
/// {@link #TRANSFORM_ROTATION} /// {TRANSFORM_ROTATION}
/// {@link #TRANSFORM_SKEW} /// {TRANSFORM_SKEW}
/// {@link #TRANSFORM_SKEW_ANGLE} /// {TRANSFORM_SKEW_ANGLE}
/// ///
/// Fill: /// Fill:
/// {@link #COLOR} (non-gradient) /// {#COLOR} (non-gradient)
/// {@link #OPACITY} /// {#OPACITY}
/// {@link #COLOR_FILTER} /// {#COLOR_FILTER}
/// ///
/// Stroke: /// Stroke:
/// {@link #COLOR} (non-gradient) /// {#COLOR} (non-gradient)
/// {@link #STROKE_WIDTH} /// {#STROKE_WIDTH}
/// {@link #OPACITY} /// {#OPACITY}
/// {@link #COLOR_FILTER} /// {#COLOR_FILTER}
/// ///
/// Ellipse: /// Ellipse:
/// {@link #POSITION} /// {#POSITION}
/// {@link #ELLIPSE_SIZE} /// {#ELLIPSE_SIZE}
/// ///
/// Polystar: /// Polystar:
/// {@link #POLYSTAR_POINTS} /// {#POLYSTAR_POINTS}
/// {@link #POLYSTAR_ROTATION} /// {#POLYSTAR_ROTATION}
/// {@link #POSITION} /// {#POSITION}
/// {@link #POLYSTAR_INNER_RADIUS} (star) /// {#POLYSTAR_INNER_RADIUS} (star)
/// {@link #POLYSTAR_OUTER_RADIUS} /// {#POLYSTAR_OUTER_RADIUS}
/// {@link #POLYSTAR_INNER_ROUNDEDNESS} (star) /// {#POLYSTAR_INNER_ROUNDEDNESS} (star)
/// {@link #POLYSTAR_OUTER_ROUNDEDNESS} /// {#POLYSTAR_OUTER_ROUNDEDNESS}
/// ///
/// Repeater: /// Repeater:
/// All transform properties /// All transform properties
/// {@link #REPEATER_COPIES} /// {#REPEATER_COPIES}
/// {@link #REPEATER_OFFSET} /// {#REPEATER_OFFSET}
/// {@link #TRANSFORM_ROTATION} /// {#TRANSFORM_ROTATION}
/// {@link #TRANSFORM_START_OPACITY} /// {#TRANSFORM_START_OPACITY}
/// {@link #TRANSFORM_END_OPACITY} /// {#TRANSFORM_END_OPACITY}
/// ///
/// Layers: /// Layers:
/// All transform properties /// All transform properties
/// {@link #TIME_REMAP} (composition layers only) /// {#TIME_REMAP} (composition layers only)
abstract class LottieProperty { abstract class LottieProperty {
/// ColorInt **/ /// ColorInt **/
static const Color color = Color(0x00000001); static const Color color = Color(0x00000001);

View File

@ -66,7 +66,7 @@ class Buffer {
} }
/// Reads and discards {@code byteCount} bytes from this source. Throws an /// Reads and discards {@code byteCount} bytes from this source. Throws an
/// {@link java.io.EOFException} if the source is exhausted before the /// [Exception] if the source is exhausted before the
/// requested bytes can be skipped. /// requested bytes can be skipped.
void skip(int byteCount) { void skip(int byteCount) {
_start += byteCount; _start += byteCount;

View File

@ -857,7 +857,7 @@ class JsonUtf8Reader extends JsonReader {
/// Returns the next character in the stream that is neither whitespace nor a /// Returns the next character in the stream that is neither whitespace nor a
/// part of a comment. When this returns, the returned character is always at /// part of a comment. When this returns, the returned character is always at
/// {@code buffer.getByte(0)}. /// {buffer.getByte(0)}.
int _nextNonWhitespace(bool throwOnEof) { int _nextNonWhitespace(bool throwOnEof) {
// This code uses ugly local variables 'p' and 'l' representing the 'pos' // This code uses ugly local variables 'p' and 'l' representing the 'pos'
// and 'limit' fields respectively. Using locals rather than fields saves // and 'limit' fields respectively. Using locals rather than fields saves

View File

@ -74,7 +74,7 @@ class AssetLottie extends LottieProvider {
} }
@override @override
bool operator ==(dynamic other) { bool operator ==(Object other) {
if (other.runtimeType != runtimeType) return false; if (other.runtimeType != runtimeType) return false;
return other is AssetLottie && return other is AssetLottie &&
other.keyName == keyName && other.keyName == keyName &&

View File

@ -50,7 +50,7 @@ class FileLottie extends LottieProvider {
} }
@override @override
bool operator ==(dynamic other) { bool operator ==(Object other) {
if (other.runtimeType != runtimeType) return false; if (other.runtimeType != runtimeType) return false;
return other is FileLottie && io.areFilesEqual(file, other.file); return other is FileLottie && io.areFilesEqual(file, other.file);
} }

View File

@ -50,7 +50,7 @@ class MemoryLottie extends LottieProvider {
} }
@override @override
bool operator ==(dynamic other) { bool operator ==(Object other) {
if (other.runtimeType != runtimeType) return false; if (other.runtimeType != runtimeType) return false;
//TODO(xha): compare bytes content //TODO(xha): compare bytes content

View File

@ -60,7 +60,7 @@ class NetworkLottie extends LottieProvider {
} }
@override @override
bool operator ==(dynamic other) { bool operator ==(Object other) {
if (other.runtimeType != runtimeType) return false; if (other.runtimeType != runtimeType) return false;
return other is NetworkLottie && return other is NetworkLottie &&
other.url == url && other.url == url &&

View File

@ -96,7 +96,7 @@ class MiscUtils {
/// it to the accumulator list. /// it to the accumulator list.
/// ///
/// Any {@link KeyPathElementContent} should call through to this as its implementation of /// Any {@link KeyPathElementContent} should call through to this as its implementation of
/// {@link KeyPathElementContent#resolveKeyPath(KeyPath, int, List, KeyPath)}. /// {KeyPathElementContent#resolveKeyPath(KeyPath, int, List, KeyPath)}.
static void resolveKeyPath( static void resolveKeyPath(
KeyPath keyPath, KeyPath keyPath,
int depth, int depth,

View File

@ -331,7 +331,7 @@ class ResolvedValueDelegate<T> {
/// to multiple contents. In that case, the callbacks's value will apply to all of them. /// to multiple contents. In that case, the callbacks's value will apply to all of them.
/// <p> /// <p>
/// Internally, this will check if the {@link KeyPath} has already been resolved with /// Internally, this will check if the {@link KeyPath} has already been resolved with
/// {@link #resolveKeyPath(KeyPath)} and will resolve it if it hasn't. /// {#resolveKeyPath(KeyPath)} and will resolve it if it hasn't.
void addValueCallback(LottieDrawable drawable) { void addValueCallback(LottieDrawable drawable) {
var invalidate = false; var invalidate = false;
if (valueDelegate.keyPath.isEmpty) { if (valueDelegate.keyPath.isEmpty) {

View File

@ -147,6 +147,30 @@ packages:
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "0.6.7" version: "0.6.7"
leak_tracker:
dependency: transitive
description:
name: leak_tracker
sha256: "78eb209deea09858f5269f5a5b02be4049535f568c07b275096836f01ea323fa"
url: "https://pub.dev"
source: hosted
version: "10.0.0"
leak_tracker_flutter_testing:
dependency: transitive
description:
name: leak_tracker_flutter_testing
sha256: b46c5e37c19120a8a01918cfaf293547f47269f7cb4b0058f21531c2465d6ef0
url: "https://pub.dev"
source: hosted
version: "2.0.1"
leak_tracker_testing:
dependency: transitive
description:
name: leak_tracker_testing
sha256: a597f72a664dbd293f3bfc51f9ba69816f84dcd403cdac7066cb3f6003f3ab47
url: "https://pub.dev"
source: hosted
version: "2.0.1"
lints: lints:
dependency: transitive dependency: transitive
description: description:
@ -159,26 +183,26 @@ packages:
dependency: transitive dependency: transitive
description: description:
name: matcher name: matcher
sha256: "1803e76e6653768d64ed8ff2e1e67bea3ad4b923eb5c56a295c3e634bad5960e" sha256: d2323aa2060500f906aa31a895b4030b6da3ebdcc5619d14ce1aada65cd161cb
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "0.12.16" version: "0.12.16+1"
material_color_utilities: material_color_utilities:
dependency: transitive dependency: transitive
description: description:
name: material_color_utilities name: material_color_utilities
sha256: "9528f2f296073ff54cb9fee677df673ace1218163c3bc7628093e7eed5203d41" sha256: "0e0a020085b65b6083975e499759762399b4475f766c21668c4ecca34ea74e5a"
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "0.5.0" version: "0.8.0"
meta: meta:
dependency: transitive dependency: transitive
description: description:
name: meta name: meta
sha256: a6e590c838b18133bb482a2745ad77c5bb7715fb0451209e1a7567d416678b8e sha256: d584fa6707a52763a52446f02cc621b077888fb63b93bbcb1143a7be5a0c0c04
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "1.10.0" version: "1.11.0"
package_config: package_config:
dependency: transitive dependency: transitive
description: description:
@ -191,10 +215,10 @@ packages:
dependency: "direct main" dependency: "direct main"
description: description:
name: path name: path
sha256: "8829d8a55c13fc0e37127c29fedf290c102f4e40ae94ada574091fe0ff96c917" sha256: "087ce49c3f0dc39180befefc60fdb4acd8f8620e5682fe2476afd0b3688bb4af"
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "1.8.3" version: "1.9.0"
pointycastle: pointycastle:
dependency: transitive dependency: transitive
description: description:
@ -280,6 +304,14 @@ packages:
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "2.1.4" version: "2.1.4"
vm_service:
dependency: transitive
description:
name: vm_service
sha256: b3d56ff4341b8f182b96aceb2fa20e3dcb336b9f867bc0eafc0de10f1048e957
url: "https://pub.dev"
source: hosted
version: "13.0.0"
watcher: watcher:
dependency: transitive dependency: transitive
description: description:
@ -288,14 +320,6 @@ packages:
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "1.1.0" version: "1.1.0"
web:
dependency: transitive
description:
name: web
sha256: afe077240a270dcfd2aafe77602b4113645af95d0ad31128cc02bce5ac5d5152
url: "https://pub.dev"
source: hosted
version: "0.3.0"
yaml: yaml:
dependency: "direct dev" dependency: "direct dev"
description: description:

Binary file not shown.

Before

Width:  |  Height:  |  Size: 132 KiB

After

Width:  |  Height:  |  Size: 130 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.7 KiB

After

Width:  |  Height:  |  Size: 5.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 59 KiB

After

Width:  |  Height:  |  Size: 59 KiB