From a081812e19f3153094a1e4695b3111385802a314 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 2 Mar 2026 02:24:41 +0000 Subject: [PATCH 1/9] chore(deps): bump actions/upload-artifact from 6 to 7 Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 6 to 7. - [Release notes](https://github.com/actions/upload-artifact/releases) - [Commits](https://github.com/actions/upload-artifact/compare/v6...v7) --- updated-dependencies: - dependency-name: actions/upload-artifact dependency-version: '7' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/on-commit-main.yml | 6 +++--- .github/workflows/on-pull-request.yml | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/on-commit-main.yml b/.github/workflows/on-commit-main.yml index 311ed06..582b09e 100644 --- a/.github/workflows/on-commit-main.yml +++ b/.github/workflows/on-commit-main.yml @@ -136,7 +136,7 @@ jobs: working-directory: example run: flutter build apk - name: Upload apk as artifact - uses: actions/upload-artifact@v6 + uses: actions/upload-artifact@v7 with: name: flutter_map_plugins_example_apk path: example/build/app/outputs/flutter-apk/app-release.apk @@ -160,7 +160,7 @@ jobs: # - name: Build iOS package # run: flutter build ios --simulator # - name: Upload Runner.app as artifact - # uses: actions/upload-artifact@v6 + # uses: actions/upload-artifact@v7 # with: # name: flutter_map_plugins_example.app # path: example/build/ios/iphonesimulator @@ -181,7 +181,7 @@ jobs: - name: Build Web run: flutter build web - name: Upload web as artifact - uses: actions/upload-artifact@v6 + uses: actions/upload-artifact@v7 with: name: flutter_map_plugins_example_web path: example/build/web diff --git a/.github/workflows/on-pull-request.yml b/.github/workflows/on-pull-request.yml index 82c26cf..beb6c62 100644 --- a/.github/workflows/on-pull-request.yml +++ b/.github/workflows/on-pull-request.yml @@ -142,7 +142,7 @@ jobs: working-directory: example run: flutter build apk - name: Upload apk as artifact - uses: actions/upload-artifact@v6 + uses: actions/upload-artifact@v7 with: name: flutter_map_plugins_example_apk path: example/build/app/outputs/flutter-apk/app-release.apk @@ -165,7 +165,7 @@ jobs: # - name: Build iOS package # run: flutter build ios --simulator # - name: Upload Runner.app as artifact - # uses: actions/upload-artifact@v6 + # uses: actions/upload-artifact@v7 # with: # name: flutter_map_plugins_example.app # path: example/build/ios/iphonesimulator @@ -185,7 +185,7 @@ jobs: - name: Build Web run: flutter build web - name: Upload web as artifact - uses: actions/upload-artifact@v6 + uses: actions/upload-artifact@v7 with: name: flutter_map_plugins_example_web path: example/build/web \ No newline at end of file From 8da18077461d7f3134d2a632b121ac4a376c9cf8 Mon Sep 17 00:00:00 2001 From: Joscha <34318751+josxha@users.noreply.github.com> Date: Sat, 11 Apr 2026 10:25:31 +0200 Subject: [PATCH 2/9] update tests --- .../flutter/generated_plugin_registrant.cc | 4 - example/linux/flutter/generated_plugins.cmake | 1 - .../Flutter/GeneratedPluginRegistrant.swift | 4 - .../flutter/generated_plugin_registrant.cc | 3 - .../windows/flutter/generated_plugins.cmake | 1 - vector_map_tiles_mbtiles/pubspec.yaml | 2 +- .../test/integration_test.dart | 13 - .../test/pmtiles_tile_provider_test.dart | 41 ++- .../test/utils/common.dart | 18 -- .../test/utils/common.mocks.dart | 140 --------- .../test/utils/test_app.dart | 37 --- vector_map_tiles_pmtiles/pubspec.yaml | 2 +- .../test/integration_test.dart | 27 -- .../test/integration_test.mocks.dart | 282 ------------------ .../test/pmtiles_tile_provider_test.dart | 12 +- .../test/protomaps_themes_test.dart | 2 - .../test/utils/test_app.dart | 36 --- 17 files changed, 34 insertions(+), 591 deletions(-) delete mode 100644 vector_map_tiles_mbtiles/test/integration_test.dart delete mode 100644 vector_map_tiles_mbtiles/test/utils/common.dart delete mode 100644 vector_map_tiles_mbtiles/test/utils/common.mocks.dart delete mode 100644 vector_map_tiles_mbtiles/test/utils/test_app.dart delete mode 100644 vector_map_tiles_pmtiles/test/integration_test.dart delete mode 100644 vector_map_tiles_pmtiles/test/integration_test.mocks.dart delete mode 100644 vector_map_tiles_pmtiles/test/utils/test_app.dart diff --git a/example/linux/flutter/generated_plugin_registrant.cc b/example/linux/flutter/generated_plugin_registrant.cc index 0c539c4..4c0025f 100644 --- a/example/linux/flutter/generated_plugin_registrant.cc +++ b/example/linux/flutter/generated_plugin_registrant.cc @@ -6,14 +6,10 @@ #include "generated_plugin_registrant.h" -#include #include #include void fl_register_plugins(FlPluginRegistry* registry) { - g_autoptr(FlPluginRegistrar) maplibre_registrar = - fl_plugin_registry_get_registrar_for_plugin(registry, "MaplibrePlugin"); - maplibre_plugin_register_with_registrar(maplibre_registrar); g_autoptr(FlPluginRegistrar) sqlite3_flutter_libs_registrar = fl_plugin_registry_get_registrar_for_plugin(registry, "Sqlite3FlutterLibsPlugin"); sqlite3_flutter_libs_plugin_register_with_registrar(sqlite3_flutter_libs_registrar); diff --git a/example/linux/flutter/generated_plugins.cmake b/example/linux/flutter/generated_plugins.cmake index 253e313..75d875c 100644 --- a/example/linux/flutter/generated_plugins.cmake +++ b/example/linux/flutter/generated_plugins.cmake @@ -3,7 +3,6 @@ # list(APPEND FLUTTER_PLUGIN_LIST - maplibre sqlite3_flutter_libs url_launcher_linux ) diff --git a/example/macos/Flutter/GeneratedPluginRegistrant.swift b/example/macos/Flutter/GeneratedPluginRegistrant.swift index bc840bd..b205693 100644 --- a/example/macos/Flutter/GeneratedPluginRegistrant.swift +++ b/example/macos/Flutter/GeneratedPluginRegistrant.swift @@ -6,15 +6,11 @@ import FlutterMacOS import Foundation import connectivity_plus -import maplibre -import path_provider_foundation import sqlite3_flutter_libs import url_launcher_macos func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) { ConnectivityPlusPlugin.register(with: registry.registrar(forPlugin: "ConnectivityPlusPlugin")) - MaplibrePlugin.register(with: registry.registrar(forPlugin: "MaplibrePlugin")) - PathProviderPlugin.register(with: registry.registrar(forPlugin: "PathProviderPlugin")) Sqlite3FlutterLibsPlugin.register(with: registry.registrar(forPlugin: "Sqlite3FlutterLibsPlugin")) UrlLauncherPlugin.register(with: registry.registrar(forPlugin: "UrlLauncherPlugin")) } diff --git a/example/windows/flutter/generated_plugin_registrant.cc b/example/windows/flutter/generated_plugin_registrant.cc index a184cfb..2a9dc10 100644 --- a/example/windows/flutter/generated_plugin_registrant.cc +++ b/example/windows/flutter/generated_plugin_registrant.cc @@ -7,15 +7,12 @@ #include "generated_plugin_registrant.h" #include -#include #include #include void RegisterPlugins(flutter::PluginRegistry* registry) { ConnectivityPlusWindowsPluginRegisterWithRegistrar( registry->GetRegistrarForPlugin("ConnectivityPlusWindowsPlugin")); - MaplibrePluginCApiRegisterWithRegistrar( - registry->GetRegistrarForPlugin("MaplibrePluginCApi")); Sqlite3FlutterLibsPluginRegisterWithRegistrar( registry->GetRegistrarForPlugin("Sqlite3FlutterLibsPlugin")); UrlLauncherWindowsRegisterWithRegistrar( diff --git a/example/windows/flutter/generated_plugins.cmake b/example/windows/flutter/generated_plugins.cmake index b70ebf8..dd5c9d3 100644 --- a/example/windows/flutter/generated_plugins.cmake +++ b/example/windows/flutter/generated_plugins.cmake @@ -4,7 +4,6 @@ list(APPEND FLUTTER_PLUGIN_LIST connectivity_plus - maplibre sqlite3_flutter_libs url_launcher_windows ) diff --git a/vector_map_tiles_mbtiles/pubspec.yaml b/vector_map_tiles_mbtiles/pubspec.yaml index 0917376..7d7d980 100644 --- a/vector_map_tiles_mbtiles/pubspec.yaml +++ b/vector_map_tiles_mbtiles/pubspec.yaml @@ -23,7 +23,7 @@ dev_dependencies: flutter_test: sdk: flutter test: ^1.24.9 - mockito: ^5.4.4 + mocktail: ^1.0.5 build_runner: ^2.4.8 latlong2: ^0.9.0 flutter_map: ^8.0.0 diff --git a/vector_map_tiles_mbtiles/test/integration_test.dart b/vector_map_tiles_mbtiles/test/integration_test.dart deleted file mode 100644 index 2393374..0000000 --- a/vector_map_tiles_mbtiles/test/integration_test.dart +++ /dev/null @@ -1,13 +0,0 @@ -/* -import 'package:flutter_test/flutter_test.dart'; - -Future main() async { - testWidgets('FlutterMap with MbTilesTileProvider', (tester) async { - //final mbtiles = createMockMbTiles(); - //when(mbtiles.getTile(z: captureAny, x: captureAny, y: captureAny)) - // .thenAnswer((_) => null); - //await tester.pumpWidget(TestApp(mbTiles: mbtiles)); - //await tester.pumpAndSettle(); - }); -} -*/ diff --git a/vector_map_tiles_mbtiles/test/pmtiles_tile_provider_test.dart b/vector_map_tiles_mbtiles/test/pmtiles_tile_provider_test.dart index 1182471..0385244 100644 --- a/vector_map_tiles_mbtiles/test/pmtiles_tile_provider_test.dart +++ b/vector_map_tiles_mbtiles/test/pmtiles_tile_provider_test.dart @@ -1,32 +1,39 @@ -/* import 'dart:typed_data'; import 'package:flutter_test/flutter_test.dart'; import 'package:latlong2/latlong.dart'; import 'package:mbtiles/mbtiles.dart'; -import 'package:mockito/mockito.dart'; +import 'package:mocktail/mocktail.dart'; import 'package:vector_map_tiles/vector_map_tiles.dart'; import 'package:vector_map_tiles_mbtiles/src/vector_tile_provider.dart'; -import 'utils/common.dart'; +class MockMbTiles extends Mock implements MbTiles {} Future main() async { test('Create tile provider from archive', () async { - final mbTiles = createMockMbTiles(); + final mbTiles = MockMbTiles(); + when(mbTiles.getMetadata).thenAnswer( + (params) => const MbTilesMetadata( + name: 'MockMbTiles', + format: 'pbf', + defaultCenter: LatLng(1.123, 1.123), + ), + ); final provider = MbTilesVectorTileProvider(mbtiles: mbTiles); expect(provider.mbtiles, equals(mbTiles)); expect(provider.type, TileProviderType.vector); }); test('Create tile provider from source', () async { final mbtiles = MockMbTiles(); - when(mbtiles.getMetadata()).thenAnswer( + when(mbtiles.getMetadata).thenAnswer( (params) => const MbTilesMetadata( name: 'MockMbTiles', format: 'pbf', defaultCenter: LatLng(1.123, 1.123), ), ); - when(mbtiles.getTile(x: 0, y: 0, z: 0)).thenAnswer((_) => Uint8List(10)); + when(() => mbtiles.getTile(x: 0, y: 0, z: 0)) + .thenAnswer((_) => Uint8List(10)); final provider = MbTilesVectorTileProvider(mbtiles: mbtiles); expect(provider.type, TileProviderType.vector); expect( @@ -49,22 +56,26 @@ Future main() async { ); }); test('Ignores tiles that are not found', () async { - final mbtiles = createMockMbTiles(); - when(mbtiles.getTile(x: 0, y: 0, z: 0)) + final mbtiles = MockMbTiles(); + when(mbtiles.getMetadata).thenAnswer( + (params) => const MbTilesMetadata( + name: 'MockMbTiles', + format: 'pbf', + defaultCenter: LatLng(1.123, 1.123), + ), + ); + when(() => mbtiles.getTile(x: 0, y: 0, z: 0)) .thenAnswer((params) => Uint8List(10)); - when(mbtiles.getTile(x: 10, y: 1, z: 1)).thenAnswer((params) => null); + when(() => mbtiles.getTile(x: 10, y: 1, z: 1)).thenAnswer((params) => null); final provider = MbTilesVectorTileProvider(mbtiles: mbtiles); await expectLater( await provider.provide(TileIdentity(0, 0, 0)), isA(), ); - */ -/*await expectLater( - await provider.provide(TileIdentity(1, 10, 1)), + await expectLater( + provider.provide(TileIdentity(1, 10, 1)), throwsA(isA()), - );*/ /* - + ); }); } -*/ diff --git a/vector_map_tiles_mbtiles/test/utils/common.dart b/vector_map_tiles_mbtiles/test/utils/common.dart deleted file mode 100644 index 11db37d..0000000 --- a/vector_map_tiles_mbtiles/test/utils/common.dart +++ /dev/null @@ -1,18 +0,0 @@ -/* -import 'package:mbtiles/mbtiles.dart'; -import 'package:mockito/annotations.dart'; -import 'package:mockito/mockito.dart'; - -@GenerateNiceMocks([MockSpec()]) -import 'common.mocks.dart'; - -export 'common.mocks.dart'; - -MockMbTiles createMockMbTiles() { - final mbtiles = MockMbTiles(); - when(mbtiles.getMetadata()).thenAnswer( - (_) => const MbTilesMetadata(name: 'MockMbTiles', format: 'pbf'), - ); - return mbtiles; -} -*/ diff --git a/vector_map_tiles_mbtiles/test/utils/common.mocks.dart b/vector_map_tiles_mbtiles/test/utils/common.mocks.dart deleted file mode 100644 index 9b81395..0000000 --- a/vector_map_tiles_mbtiles/test/utils/common.mocks.dart +++ /dev/null @@ -1,140 +0,0 @@ -/* -// Mocks generated by Mockito 5.4.4 from annotations -// in vector_map_tiles_mbtiles/test/utils/common.dart. -// Do not manually edit this file. - -// ignore_for_file: no_leading_underscores_for_library_prefixes -import 'dart:typed_data' as _i4; - -import 'package:mbtiles/src/mbtiles.dart' as _i3; -import 'package:mbtiles/src/model/mbtiles_metadata.dart' as _i2; -import 'package:mockito/mockito.dart' as _i1; - -// ignore_for_file: type=lint -// ignore_for_file: avoid_redundant_argument_values -// ignore_for_file: avoid_setters_without_getters -// ignore_for_file: comment_references -// ignore_for_file: deprecated_member_use -// ignore_for_file: implementation_imports -// ignore_for_file: invalid_use_of_visible_for_testing_member -// ignore_for_file: prefer_const_constructors -// ignore_for_file: unnecessary_parenthesis -// ignore_for_file: camel_case_types -// ignore_for_file: subtype_of_sealed_class - -class _FakeMbTilesMetadata_0 extends _i1.SmartFake - implements _i2.MbTilesMetadata { - _FakeMbTilesMetadata_0( - Object parent, - Invocation parentInvocation, - ) : super( - parent, - parentInvocation, - ); -} - -/// A class which mocks [MbTiles]. -/// -/// See the documentation for Mockito's code generation for more information. -class MockMbTiles extends _i1.Mock implements _i3.MbTiles { - @override - bool get editable => (super.noSuchMethod( - Invocation.getter(#editable), - returnValue: false, - returnValueForMissingStub: false, - ) as bool); - - @override - _i2.MbTilesMetadata getMetadata({bool? allowCache = true}) => - (super.noSuchMethod( - Invocation.method( - #getMetadata, - [], - {#allowCache: allowCache}, - ), - returnValue: _FakeMbTilesMetadata_0( - this, - Invocation.method( - #getMetadata, - [], - {#allowCache: allowCache}, - ), - ), - returnValueForMissingStub: _FakeMbTilesMetadata_0( - this, - Invocation.method( - #getMetadata, - [], - {#allowCache: allowCache}, - ), - ), - ) as _i2.MbTilesMetadata); - - @override - _i4.Uint8List? getTile({ - required int? z, - required int? x, - required int? y, - }) => - (super.noSuchMethod( - Invocation.method( - #getTile, - [], - { - #z: z, - #x: x, - #y: y, - }, - ), - returnValueForMissingStub: null, - ) as _i4.Uint8List?); - - @override - void createTables() => super.noSuchMethod( - Invocation.method( - #createTables, - [], - ), - returnValueForMissingStub: null, - ); - - @override - void putTile({ - required int? z, - required int? x, - required int? y, - required _i4.Uint8List? bytes, - }) => - super.noSuchMethod( - Invocation.method( - #putTile, - [], - { - #z: z, - #x: x, - #y: y, - #bytes: bytes, - }, - ), - returnValueForMissingStub: null, - ); - - @override - void setMetadata(_i2.MbTilesMetadata? metadata) => super.noSuchMethod( - Invocation.method( - #setMetadata, - [metadata], - ), - returnValueForMissingStub: null, - ); - - @override - void dispose() => super.noSuchMethod( - Invocation.method( - #dispose, - [], - ), - returnValueForMissingStub: null, - ); -} -*/ diff --git a/vector_map_tiles_mbtiles/test/utils/test_app.dart b/vector_map_tiles_mbtiles/test/utils/test_app.dart deleted file mode 100644 index 4857e53..0000000 --- a/vector_map_tiles_mbtiles/test/utils/test_app.dart +++ /dev/null @@ -1,37 +0,0 @@ -/* -import 'package:flutter/material.dart'; -import 'package:flutter_map/flutter_map.dart'; -import 'package:latlong2/latlong.dart'; -import 'package:mbtiles/mbtiles.dart'; -import 'package:vector_map_tiles/vector_map_tiles.dart'; -import 'package:vector_map_tiles_mbtiles/vector_map_tiles_mbtiles.dart'; -import 'package:vector_tile_renderer/vector_tile_renderer.dart'; - -class TestApp extends StatelessWidget { - const TestApp({required this.mbTiles, super.key}); - - final MbTiles mbTiles; - - @override - Widget build(BuildContext context) { - return MaterialApp( - home: Scaffold( - body: FlutterMap( - options: const MapOptions( - initialZoom: 0, - initialCenter: LatLng(0, 0), - ), - children: [ - VectorTileLayer( - tileProviders: TileProviders({ - 'openmaptiles': MbTilesVectorTileProvider(mbtiles: mbTiles), - }), - theme: ProvidedThemes.lightTheme(), - ), - ], - ), - ), - ); - } -} -*/ diff --git a/vector_map_tiles_pmtiles/pubspec.yaml b/vector_map_tiles_pmtiles/pubspec.yaml index 285d9c5..0be9591 100644 --- a/vector_map_tiles_pmtiles/pubspec.yaml +++ b/vector_map_tiles_pmtiles/pubspec.yaml @@ -26,6 +26,6 @@ dev_dependencies: flutter_test: sdk: flutter latlong2: ^0.9.0 - mockito: ^5.4.4 + mocktail: ^1.0.5 test: ^1.24.9 very_good_analysis: ^10.0.0 \ No newline at end of file diff --git a/vector_map_tiles_pmtiles/test/integration_test.dart b/vector_map_tiles_pmtiles/test/integration_test.dart deleted file mode 100644 index f427ea8..0000000 --- a/vector_map_tiles_pmtiles/test/integration_test.dart +++ /dev/null @@ -1,27 +0,0 @@ -/* -import 'package:flutter_map/flutter_map.dart'; -import 'package:flutter_test/flutter_test.dart'; -import 'package:mockito/annotations.dart'; -import 'package:mockito/mockito.dart'; -import 'package:pmtiles/pmtiles.dart'; - -@GenerateNiceMocks([MockSpec()]) -import 'integration_test.mocks.dart'; -import 'utils/test_app.dart'; - -Future main() async { - testWidgets('FlutterMap with MbTilesTileProvider', (tester) async { - final pmTiles = MockPmTilesArchive(); - when(pmTiles.tile(captureAny)).thenAnswer( - (params) async => Tile( - params.positionalArguments.first as int, - bytes: TileProvider.transparentImage, - compression: Compression.none, - type: TileType.png, - ), - ); - await tester.pumpWidget(TestApp(pmTiles: pmTiles)); - await tester.pumpAndSettle(); - }); -} -*/ diff --git a/vector_map_tiles_pmtiles/test/integration_test.mocks.dart b/vector_map_tiles_pmtiles/test/integration_test.mocks.dart deleted file mode 100644 index 0388cd5..0000000 --- a/vector_map_tiles_pmtiles/test/integration_test.mocks.dart +++ /dev/null @@ -1,282 +0,0 @@ -/* -// Mocks generated by Mockito 5.4.4 from annotations -// in flutter_map_pmtiles/test/integration_test.dart. -// Do not manually edit this file. - -// ignore_for_file: no_leading_underscores_for_library_prefixes -import 'dart:async' as _i8; -import 'dart:convert' as _i4; - -import 'package:latlong2/latlong.dart' as _i5; -import 'package:mockito/mockito.dart' as _i1; -import 'package:pmtiles/src/archive.dart' as _i7; -import 'package:pmtiles/src/directory.dart' as _i3; -import 'package:pmtiles/src/header.dart' as _i2; -import 'package:pmtiles/src/tile.dart' as _i6; -import 'package:pmtiles/src/types.dart' as _i9; - -// ignore_for_file: type=lint -// ignore_for_file: avoid_redundant_argument_values -// ignore_for_file: avoid_setters_without_getters -// ignore_for_file: comment_references -// ignore_for_file: deprecated_member_use -// ignore_for_file: implementation_imports -// ignore_for_file: invalid_use_of_visible_for_testing_member -// ignore_for_file: prefer_const_constructors -// ignore_for_file: unnecessary_parenthesis -// ignore_for_file: camel_case_types -// ignore_for_file: subtype_of_sealed_class - -class _FakeHeader_0 extends _i1.SmartFake implements _i2.Header { - _FakeHeader_0( - Object parent, - Invocation parentInvocation, - ) : super( - parent, - parentInvocation, - ); -} - -class _FakeDirectory_1 extends _i1.SmartFake implements _i3.Directory { - _FakeDirectory_1( - Object parent, - Invocation parentInvocation, - ) : super( - parent, - parentInvocation, - ); -} - -class _FakeConverter_2 extends _i1.SmartFake - implements _i4.Converter { - _FakeConverter_2( - Object parent, - Invocation parentInvocation, - ) : super( - parent, - parentInvocation, - ); -} - -class _FakeLatLng_3 extends _i1.SmartFake implements _i5.LatLng { - _FakeLatLng_3( - Object parent, - Invocation parentInvocation, - ) : super( - parent, - parentInvocation, - ); -} - -class _FakeTile_4 extends _i1.SmartFake implements _i6.Tile { - _FakeTile_4( - Object parent, - Invocation parentInvocation, - ) : super( - parent, - parentInvocation, - ); -} - -/// A class which mocks [PmTilesArchive]. -/// -/// See the documentation for Mockito's code generation for more information. -class MockPmTilesArchive extends _i1.Mock implements _i7.PmTilesArchive { - @override - _i2.Header get header => (super.noSuchMethod( - Invocation.getter(#header), - returnValue: _FakeHeader_0( - this, - Invocation.getter(#header), - ), - returnValueForMissingStub: _FakeHeader_0( - this, - Invocation.getter(#header), - ), - ) as _i2.Header); - - @override - set header(_i2.Header? _header) => super.noSuchMethod( - Invocation.setter( - #header, - _header, - ), - returnValueForMissingStub: null, - ); - - @override - _i3.Directory get root => (super.noSuchMethod( - Invocation.getter(#root), - returnValue: _FakeDirectory_1( - this, - Invocation.getter(#root), - ), - returnValueForMissingStub: _FakeDirectory_1( - this, - Invocation.getter(#root), - ), - ) as _i3.Directory); - - @override - set root(_i3.Directory? _root) => super.noSuchMethod( - Invocation.setter( - #root, - _root, - ), - returnValueForMissingStub: null, - ); - - @override - _i4.Converter, List> get tileDecoder => (super.noSuchMethod( - Invocation.getter(#tileDecoder), - returnValue: _FakeConverter_2, List>( - this, - Invocation.getter(#tileDecoder), - ), - returnValueForMissingStub: _FakeConverter_2, List>( - this, - Invocation.getter(#tileDecoder), - ), - ) as _i4.Converter, List>); - - @override - _i8.Future get metadata => (super.noSuchMethod( - Invocation.getter(#metadata), - returnValue: _i8.Future.value(), - returnValueForMissingStub: _i8.Future.value(), - ) as _i8.Future); - - @override - int get version => (super.noSuchMethod( - Invocation.getter(#version), - returnValue: 0, - returnValueForMissingStub: 0, - ) as int); - - @override - _i9.Compression get tileCompression => (super.noSuchMethod( - Invocation.getter(#tileCompression), - returnValue: _i9.Compression.unknown, - returnValueForMissingStub: _i9.Compression.unknown, - ) as _i9.Compression); - - @override - _i9.TileType get tileType => (super.noSuchMethod( - Invocation.getter(#tileType), - returnValue: _i9.TileType.unknown, - returnValueForMissingStub: _i9.TileType.unknown, - ) as _i9.TileType); - - @override - int get minZoom => (super.noSuchMethod( - Invocation.getter(#minZoom), - returnValue: 0, - returnValueForMissingStub: 0, - ) as int); - - @override - int get maxZoom => (super.noSuchMethod( - Invocation.getter(#maxZoom), - returnValue: 0, - returnValueForMissingStub: 0, - ) as int); - - @override - _i5.LatLng get minPosition => (super.noSuchMethod( - Invocation.getter(#minPosition), - returnValue: _FakeLatLng_3( - this, - Invocation.getter(#minPosition), - ), - returnValueForMissingStub: _FakeLatLng_3( - this, - Invocation.getter(#minPosition), - ), - ) as _i5.LatLng); - - @override - _i5.LatLng get maxPosition => (super.noSuchMethod( - Invocation.getter(#maxPosition), - returnValue: _FakeLatLng_3( - this, - Invocation.getter(#maxPosition), - ), - returnValueForMissingStub: _FakeLatLng_3( - this, - Invocation.getter(#maxPosition), - ), - ) as _i5.LatLng); - - @override - int get centerZoom => (super.noSuchMethod( - Invocation.getter(#centerZoom), - returnValue: 0, - returnValueForMissingStub: 0, - ) as int); - - @override - _i5.LatLng get centerPosition => (super.noSuchMethod( - Invocation.getter(#centerPosition), - returnValue: _FakeLatLng_3( - this, - Invocation.getter(#centerPosition), - ), - returnValueForMissingStub: _FakeLatLng_3( - this, - Invocation.getter(#centerPosition), - ), - ) as _i5.LatLng); - - @override - _i8.Future<_i3.Entry?> lookup(int? tileId) => (super.noSuchMethod( - Invocation.method( - #lookup, - [tileId], - ), - returnValue: _i8.Future<_i3.Entry?>.value(), - returnValueForMissingStub: _i8.Future<_i3.Entry?>.value(), - ) as _i8.Future<_i3.Entry?>); - - @override - _i8.Future<_i6.Tile> tile(int? tileId) => (super.noSuchMethod( - Invocation.method( - #tile, - [tileId], - ), - returnValue: _i8.Future<_i6.Tile>.value(_FakeTile_4( - this, - Invocation.method( - #tile, - [tileId], - ), - )), - returnValueForMissingStub: _i8.Future<_i6.Tile>.value(_FakeTile_4( - this, - Invocation.method( - #tile, - [tileId], - ), - )), - ) as _i8.Future<_i6.Tile>); - - @override - _i8.Stream<_i6.Tile> tiles(List? tileIds) => (super.noSuchMethod( - Invocation.method( - #tiles, - [tileIds], - ), - returnValue: _i8.Stream<_i6.Tile>.empty(), - returnValueForMissingStub: _i8.Stream<_i6.Tile>.empty(), - ) as _i8.Stream<_i6.Tile>); - - @override - _i8.Future close() => (super.noSuchMethod( - Invocation.method( - #close, - [], - ), - returnValue: _i8.Future.value(), - returnValueForMissingStub: _i8.Future.value(), - ) as _i8.Future); -} -*/ diff --git a/vector_map_tiles_pmtiles/test/pmtiles_tile_provider_test.dart b/vector_map_tiles_pmtiles/test/pmtiles_tile_provider_test.dart index 13ebe9c..0be8f87 100644 --- a/vector_map_tiles_pmtiles/test/pmtiles_tile_provider_test.dart +++ b/vector_map_tiles_pmtiles/test/pmtiles_tile_provider_test.dart @@ -1,11 +1,12 @@ -/* import 'dart:typed_data'; import 'package:flutter_test/flutter_test.dart'; +import 'package:mocktail/mocktail.dart'; +import 'package:pmtiles/pmtiles.dart'; import 'package:vector_map_tiles/vector_map_tiles.dart'; import 'package:vector_map_tiles_pmtiles/src/vector_tile_provider.dart'; -import 'integration_test.mocks.dart'; +class MockPmTilesArchive extends Mock implements PmTilesArchive {} Future main() async { test('Create tile provider from archive', () async { @@ -21,13 +22,13 @@ Future main() async { expect(provider.type, TileProviderType.vector); expect( provider.archive.centerPosition.latitude, - closeTo(43.779779, 0.001), + closeTo(43.7672134, 0.1), ); expect( provider.archive.centerPosition.longitude, - closeTo(11.2414827, 0.001), + closeTo(11.2543435, 0.1), ); - expect(provider.maximumZoom, equals(14)); + expect(provider.maximumZoom, equals(15)); expect(provider.minimumZoom, equals(0)); expect( await provider.provide(TileIdentity(0, 0, 0)), @@ -61,4 +62,3 @@ Future main() async { expect(provider.type, TileProviderType.raster); }); } -*/ diff --git a/vector_map_tiles_pmtiles/test/protomaps_themes_test.dart b/vector_map_tiles_pmtiles/test/protomaps_themes_test.dart index a238aaf..4ee4368 100644 --- a/vector_map_tiles_pmtiles/test/protomaps_themes_test.dart +++ b/vector_map_tiles_pmtiles/test/protomaps_themes_test.dart @@ -1,4 +1,3 @@ -/* import 'package:flutter_test/flutter_test.dart'; import 'package:vector_map_tiles_pmtiles/vector_map_tiles_pmtiles.dart'; @@ -24,4 +23,3 @@ Future main() async { expect(theme.tileSources, equals({'protomaps'})); }); } -*/ diff --git a/vector_map_tiles_pmtiles/test/utils/test_app.dart b/vector_map_tiles_pmtiles/test/utils/test_app.dart deleted file mode 100644 index 58d25c3..0000000 --- a/vector_map_tiles_pmtiles/test/utils/test_app.dart +++ /dev/null @@ -1,36 +0,0 @@ -/* -import 'package:flutter/material.dart'; -import 'package:flutter_map/flutter_map.dart'; -import 'package:latlong2/latlong.dart'; -import 'package:pmtiles/pmtiles.dart'; - -class TestApp extends StatelessWidget { - const TestApp({required this.pmTiles, super.key}); - - final PmTilesArchive pmTiles; - - @override - Widget build(BuildContext context) { - return const MaterialApp( - home: Scaffold( - body: FlutterMap( - options: MapOptions( - initialZoom: 0, - initialCenter: LatLng(0, 0), - ), - children: [ - */ -/*VectorTileLayer( - tileProviders: TileProviders({ - 'protomaps': PmTilesVectorTileProvider.fromArchive(pmTiles), - }), - theme: null, - ),*/ /* - - ], - ), - ), - ); - } -} -*/ From 56e078b880513236d5cb6f75aced0f30eaf2d837 Mon Sep 17 00:00:00 2001 From: Joscha <34318751+josxha@users.noreply.github.com> Date: Sat, 11 Apr 2026 10:28:17 +0200 Subject: [PATCH 3/9] exit-code-threshold 10 --- .github/workflows/on-commit-main.yml | 14 +++++++------- .github/workflows/on-pull-request.yml | 14 +++++++------- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/.github/workflows/on-commit-main.yml b/.github/workflows/on-commit-main.yml index 582b09e..fc35517 100644 --- a/.github/workflows/on-commit-main.yml +++ b/.github/workflows/on-commit-main.yml @@ -96,25 +96,25 @@ jobs: - name: Check package score for all run: | cd flutter_map_cache - pana --exit-code-threshold 0 --no-dartdoc . + pana --exit-code-threshold 10 --no-dartdoc . cd .. cd flutter_map_compass - pana --exit-code-threshold 0 --no-dartdoc . + pana --exit-code-threshold 10 --no-dartdoc . cd .. cd flutter_map_maplibre - pana --exit-code-threshold 0 --no-dartdoc . + pana --exit-code-threshold 10 --no-dartdoc . cd .. cd flutter_map_mbtiles - pana --exit-code-threshold 0 --no-dartdoc . + pana --exit-code-threshold 10 --no-dartdoc . cd .. cd flutter_map_pmtiles - pana --exit-code-threshold 0 --no-dartdoc . + pana --exit-code-threshold 10 --no-dartdoc . cd .. # cd vector_map_tiles_mbtiles - # pana --exit-code-threshold 0 --no-dartdoc . + # pana --exit-code-threshold 10 --no-dartdoc . # cd .. # cd vector_map_tiles_pmtiles - # pana --exit-code-threshold 0 --no-dartdoc . + # pana --exit-code-threshold 10 --no-dartdoc . # cd .. build-android: runs-on: ubuntu-latest diff --git a/.github/workflows/on-pull-request.yml b/.github/workflows/on-pull-request.yml index beb6c62..84e38fc 100644 --- a/.github/workflows/on-pull-request.yml +++ b/.github/workflows/on-pull-request.yml @@ -97,31 +97,31 @@ jobs: run: | cd flutter_map_cache flutter pub get - pana --exit-code-threshold 0 --no-dartdoc . + pana --exit-code-threshold 10 --no-dartdoc . cd .. cd flutter_map_compass flutter pub get - pana --exit-code-threshold 0 --no-dartdoc . + pana --exit-code-threshold 10 --no-dartdoc . cd .. cd flutter_map_maplibre flutter pub get - pana --exit-code-threshold 0 --no-dartdoc . + pana --exit-code-threshold 10 --no-dartdoc . cd .. cd flutter_map_mbtiles flutter pub get - pana --exit-code-threshold 0 --no-dartdoc . + pana --exit-code-threshold 10 --no-dartdoc . cd .. cd flutter_map_pmtiles flutter pub get - pana --exit-code-threshold 0 --no-dartdoc . + pana --exit-code-threshold 10 --no-dartdoc . cd .. # cd vector_map_tiles_mbtiles # flutter pub get - # pana --exit-code-threshold 0 --no-dartdoc . + # pana --exit-code-threshold 10 --no-dartdoc . # cd .. # cd vector_map_tiles_pmtiles # flutter pub get - # pana --exit-code-threshold 0 --no-dartdoc . + # pana --exit-code-threshold 10 --no-dartdoc . # cd .. build-android: runs-on: ubuntu-latest From 4790467f87810faf7e20c55286d9a6bc48a6d142 Mon Sep 17 00:00:00 2001 From: Joscha <34318751+josxha@users.noreply.github.com> Date: Sat, 11 Apr 2026 10:58:58 +0200 Subject: [PATCH 4/9] update melos config, ci coverage --- .github/workflows/on-pull-request.yml | 42 ++++++++++++--------------- melos.yaml | 30 ------------------- pubspec.yaml | 29 ++++++++++++++++++ 3 files changed, 47 insertions(+), 54 deletions(-) delete mode 100644 melos.yaml diff --git a/.github/workflows/on-pull-request.yml b/.github/workflows/on-pull-request.yml index 84e38fc..0051014 100644 --- a/.github/workflows/on-pull-request.yml +++ b/.github/workflows/on-pull-request.yml @@ -41,40 +41,34 @@ jobs: rm -rf coverage cd flutter_map_cache flutter pub get - flutter test --no-pub -r expanded --coverage - coverde filter --input ./coverage/lcov.info --output ../coverage/filtered.lcov.info --filters \.g\.dart + flutter test --no-pub -r expanded --merge-coverage --coverage-path=../coverage/lcov.info cd .. cd flutter_map_compass flutter pub get - flutter test --no-pub -r expanded --coverage - coverde filter --input ./coverage/lcov.info --output ../coverage/filtered.lcov.info --filters \.g\.dart + flutter test --no-pub -r expanded --coverage --merge-coverage --coverage-path=../coverage/lcov.info cd .. - # cd flutter_map_maplibre - # flutter pub get - # flutter test --no-pub -r expanded --coverage - # coverde filter --input ./coverage/lcov.info --output ../coverage/filtered.lcov.info --filters \.g\.dart - # cd .. + # cd flutter_map_maplibre + # flutter pub get + # flutter test --no-pub -r expanded --coverage --merge-coverage --coverage-path=../coverage/lcov.info + # cd .. cd flutter_map_mbtiles flutter pub get - flutter test --no-pub -r expanded --coverage - coverde filter --input ./coverage/lcov.info --output ../coverage/filtered.lcov.info --filters \.g\.dart + flutter test --no-pub -r expanded --coverage --merge-coverage --coverage-path=../coverage/lcov.info cd .. cd flutter_map_pmtiles flutter pub get - flutter test --no-pub -r expanded --coverage - coverde filter --input ./coverage/lcov.info --output ../coverage/filtered.lcov.info --filters \.g\.dart + flutter test --no-pub -r expanded --coverage --merge-coverage --coverage-path=../coverage/lcov.info cd .. - # cd vector_map_tiles_mbtiles - # flutter pub get - # flutter test --no-pub -r expanded --coverage - # coverde filter --input ./coverage/lcov.info --output ../coverage/filtered.lcov.info --filters \.g\.dart - # cd .. - # cd vector_map_tiles_pmtiles - # flutter pub get - # flutter test --no-pub -r expanded --coverage - # coverde filter --input ./coverage/lcov.info --output ../coverage/filtered.lcov.info --filters \.g\.dart - # cd .. - coverde value -i coverage/filtered.lcov.info > coverage/result.txt + # cd vector_map_tiles_mbtiles + # flutter pub get + # flutter test --no-pub -r expanded --coverage --merge-coverage --coverage-path=../coverage/lcov.info + # cd .. + # cd vector_map_tiles_pmtiles + # flutter pub get + # flutter test --no-pub -r expanded --coverage --merge-coverage --coverage-path=../coverage/lcov.info + # cd .. + coverde filter --input coverage/lcov.info --output coverage/filtered.lcov.info --filters \.g\.dart + coverde value -i coverage/filtered.lcov.info > coverage/result.txt - name: Run Codecov uses: codecov/codecov-action@v5 env: diff --git a/melos.yaml b/melos.yaml deleted file mode 100644 index 9e544f2..0000000 --- a/melos.yaml +++ /dev/null @@ -1,30 +0,0 @@ -name: flutter_map_plugins -packages: - - flutter_map_* - - vector_map_tiles_* - - example - -scripts: - test: - description: Run tests of all packages - run: melos exec --dir-exists="test"--fail-fast flutter test --no-pub - pub_get: - description: Run `pub get` for all packages - run: melos exec --file-exists="pubspec.yaml" --concurrency 1 --fail-fast flutter pub get - pub_upgrade: - description: Run `pub upgrade` for all packages - run: melos exec --file-exists="pubspec.yaml" --concurrency 1 --fail-fast flutter pub upgrade - pub_outdated: - description: Run `pub outdated` for all packages - run: melos exec --file-exists="pubspec.yaml" --concurrency 1 --fail-fast flutter pub outdated - package_score: - description: Run pana for all packages - run: melos exec --fail-fast --concurrency 1 --no-private pana --exit-code-threshold 0 --no-dartdoc . - test_with_coverage: - description: Run tests of all packages with coverage and merge its results - run: | - melos exec rm -rf coverage - melos exec --dir-exists="test" --fail-fast flutter pub get - melos exec --dir-exists="test" --fail-fast flutter test --no-pub -r expanded --coverage - 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 \ No newline at end of file diff --git a/pubspec.yaml b/pubspec.yaml index 23005a0..151d6aa 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -11,3 +11,32 @@ workspace: - flutter_map_pmtiles - vector_map_tiles_mbtiles - vector_map_tiles_pmtiles + +dev_dependencies: + melos: ^7.0.0 + +melos: + scripts: + test: + description: Run tests of all packages + run: melos exec --dir-exists="test"--fail-fast flutter test --no-pub + pub_get: + description: Run `pub get` for all packages + run: melos exec --file-exists="pubspec.yaml" --concurrency 1 --fail-fast flutter pub get + pub_upgrade: + description: Run `pub upgrade` for all packages + run: melos exec --file-exists="pubspec.yaml" --concurrency 1 --fail-fast flutter pub upgrade + pub_outdated: + description: Run `pub outdated` for all packages + run: melos exec --file-exists="pubspec.yaml" --concurrency 1 --fail-fast flutter pub outdated + package_score: + description: Run pana for all packages + run: melos exec --fail-fast --concurrency 1 --no-private pana --exit-code-threshold 0 --no-dartdoc . + test_with_coverage: + description: Run tests of all packages with coverage and merge its results + run: | + melos exec rm -rf coverage + melos exec --dir-exists="test" --fail-fast flutter pub get + melos exec --dir-exists="test" --fail-fast flutter test --no-pub -r expanded --coverage + 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 \ No newline at end of file From 0f74b08cbfe08b7d0d58e60d8e75e7c3165e858a Mon Sep 17 00:00:00 2001 From: Joscha <34318751+josxha@users.noreply.github.com> Date: Sat, 11 Apr 2026 11:03:00 +0200 Subject: [PATCH 5/9] fix ci --- flutter_map_cache/test/integration_test.dart | 14 -------- flutter_map_cache/test/utils/test_app.dart | 36 -------------------- 2 files changed, 50 deletions(-) delete mode 100644 flutter_map_cache/test/integration_test.dart delete mode 100644 flutter_map_cache/test/utils/test_app.dart diff --git a/flutter_map_cache/test/integration_test.dart b/flutter_map_cache/test/integration_test.dart deleted file mode 100644 index 4e92080..0000000 --- a/flutter_map_cache/test/integration_test.dart +++ /dev/null @@ -1,14 +0,0 @@ -import 'package:dio/dio.dart'; -import 'package:dio_cache_interceptor/dio_cache_interceptor.dart'; -import 'package:flutter_test/flutter_test.dart'; - -import 'utils/test_app.dart'; - -Future main() async { - testWidgets('FlutterMap with CachedTileProvider', (tester) async { - final dio = Dio(); // createDioReturningEmptyTiles(); - final cacheStore = MemCacheStore(); - await tester.pumpWidget(TestApp(dio: dio, cacheStore: cacheStore)); - await tester.pumpAndSettle(); - }); -} diff --git a/flutter_map_cache/test/utils/test_app.dart b/flutter_map_cache/test/utils/test_app.dart deleted file mode 100644 index 97e5977..0000000 --- a/flutter_map_cache/test/utils/test_app.dart +++ /dev/null @@ -1,36 +0,0 @@ -import 'package:dio/dio.dart'; -import 'package:dio_cache_interceptor/dio_cache_interceptor.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_map/flutter_map.dart'; -import 'package:flutter_map_cache/flutter_map_cache.dart'; -import 'package:latlong2/latlong.dart'; - -class TestApp extends StatelessWidget { - const TestApp({required this.cacheStore, required this.dio, super.key}); - - final CacheStore cacheStore; - final Dio dio; - - @override - Widget build(BuildContext context) { - return MaterialApp( - home: Scaffold( - body: FlutterMap( - options: const MapOptions( - initialZoom: 0, - initialCenter: LatLng(0, 0), - ), - children: [ - TileLayer( - urlTemplate: 'https://tile.openstreetmap.org/{z}/{x}/{y}.png', - tileProvider: CachedTileProvider( - store: cacheStore, - dio: dio, - ), - ), - ], - ), - ), - ); - } -} From 2d139cc19250e4b4953bbdf4f9f2917d0359fb25 Mon Sep 17 00:00:00 2001 From: Joscha <34318751+josxha@users.noreply.github.com> Date: Sat, 11 Apr 2026 11:14:02 +0200 Subject: [PATCH 6/9] Update on-pull-request.yml --- .github/workflows/on-pull-request.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/on-pull-request.yml b/.github/workflows/on-pull-request.yml index 0051014..1fe7973 100644 --- a/.github/workflows/on-pull-request.yml +++ b/.github/workflows/on-pull-request.yml @@ -41,7 +41,7 @@ jobs: rm -rf coverage cd flutter_map_cache flutter pub get - flutter test --no-pub -r expanded --merge-coverage --coverage-path=../coverage/lcov.info + flutter test --no-pub -r expanded --coverage-path=../coverage/lcov.info cd .. cd flutter_map_compass flutter pub get From 3eca80f1517705497fd1fb96dfefa1745ca6e67e Mon Sep 17 00:00:00 2001 From: Joscha <34318751+josxha@users.noreply.github.com> Date: Sat, 11 Apr 2026 11:38:11 +0200 Subject: [PATCH 7/9] Update on-pull-request.yml --- .github/workflows/on-pull-request.yml | 25 +++++++++++++++++-------- 1 file changed, 17 insertions(+), 8 deletions(-) diff --git a/.github/workflows/on-pull-request.yml b/.github/workflows/on-pull-request.yml index 1fe7973..82b31f2 100644 --- a/.github/workflows/on-pull-request.yml +++ b/.github/workflows/on-pull-request.yml @@ -41,33 +41,42 @@ jobs: rm -rf coverage cd flutter_map_cache flutter pub get - flutter test --no-pub -r expanded --coverage-path=../coverage/lcov.info + flutter test --no-pub -r expanded --coverage --coverage-path=../coverage/flutter_map_cache.lcov.info cd .. cd flutter_map_compass flutter pub get - flutter test --no-pub -r expanded --coverage --merge-coverage --coverage-path=../coverage/lcov.info + flutter test --no-pub -r expanded --coverage --coverage-path=../coverage/flutter_map_compass.lcov.info cd .. # cd flutter_map_maplibre # flutter pub get - # flutter test --no-pub -r expanded --coverage --merge-coverage --coverage-path=../coverage/lcov.info + # flutter test --no-pub -r expanded --coverage --coverage-path=../coverage/flutter_map_maplibre.lcov.info # cd .. cd flutter_map_mbtiles flutter pub get - flutter test --no-pub -r expanded --coverage --merge-coverage --coverage-path=../coverage/lcov.info + flutter test --no-pub -r expanded --coverage --coverage-path=../coverage/flutter_map_mbtiles.lcov.info cd .. cd flutter_map_pmtiles flutter pub get - flutter test --no-pub -r expanded --coverage --merge-coverage --coverage-path=../coverage/lcov.info + flutter test --no-pub -r expanded --coverage --coverage-path=../coverage/flutter_map_pmtiles.lcov.info cd .. # cd vector_map_tiles_mbtiles # flutter pub get - # flutter test --no-pub -r expanded --coverage --merge-coverage --coverage-path=../coverage/lcov.info + # flutter test --no-pub -r expanded --coverage --coverage-path=../coverage/vector_map_tiles_mbtiles.lcov.info # cd .. # cd vector_map_tiles_pmtiles # flutter pub get - # flutter test --no-pub -r expanded --coverage --merge-coverage --coverage-path=../coverage/lcov.info + # flutter test --no-pub -r expanded --coverage --coverage-path=../coverage/vector_map_tiles_pmtiles.lcov.info # cd .. - coverde filter --input coverage/lcov.info --output coverage/filtered.lcov.info --filters \.g\.dart + lcov \ + -a coverage/flutter_map_cache.lcov.info \ + -a coverage/flutter_map_compass.lcov.info \ + -a coverage/flutter_map_mbtiles.lcov.info \ + -a coverage/flutter_map_pmtiles.lcov.info \ + -o coverage/lcov.info + coverde filter \ + --input coverage/lcov.info \ + --output coverage/filtered.lcov.info \ + --filters \.g\.dart coverde value -i coverage/filtered.lcov.info > coverage/result.txt - name: Run Codecov uses: codecov/codecov-action@v5 From 721ab3616191c4661948f1d64a0e701f6e8a9377 Mon Sep 17 00:00:00 2001 From: Joscha <34318751+josxha@users.noreply.github.com> Date: Sat, 11 Apr 2026 12:14:31 +0200 Subject: [PATCH 8/9] Update on-pull-request.yml --- .github/workflows/on-pull-request.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/on-pull-request.yml b/.github/workflows/on-pull-request.yml index 82b31f2..c64820c 100644 --- a/.github/workflows/on-pull-request.yml +++ b/.github/workflows/on-pull-request.yml @@ -34,6 +34,8 @@ jobs: uses: subosito/flutter-action@v2 with: cache: true + - name: Install lcov + run: sudo apt-get update && sudo apt-get install -y lcov - name: Install coverde run: dart pub global activate coverde - name: Run Test with Coverage From 9ea018c85b9ace564be9609beda98279f69a8dad Mon Sep 17 00:00:00 2001 From: Joscha <34318751+josxha@users.noreply.github.com> Date: Sat, 11 Apr 2026 12:32:54 +0200 Subject: [PATCH 9/9] Update on-pull-request.yml --- .github/workflows/on-pull-request.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/on-pull-request.yml b/.github/workflows/on-pull-request.yml index c64820c..a58d81f 100644 --- a/.github/workflows/on-pull-request.yml +++ b/.github/workflows/on-pull-request.yml @@ -79,7 +79,6 @@ jobs: --input coverage/lcov.info \ --output coverage/filtered.lcov.info \ --filters \.g\.dart - coverde value -i coverage/filtered.lcov.info > coverage/result.txt - name: Run Codecov uses: codecov/codecov-action@v5 env: