Skip to content

Commit 8f79a52

Browse files
authored
Merge pull request #29 from DevKor-github/18-setup-riverpod
18 setup riverpod
2 parents c5cdac6 + 3e1c8ad commit 8f79a52

File tree

9 files changed

+193
-47
lines changed

9 files changed

+193
-47
lines changed

analysis_options.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,10 @@
99
# packages, and plugins designed to encourage good coding practices.
1010
include: package:flutter_lints/flutter.yaml
1111

12+
analyzer:
13+
plugins:
14+
- custom_lint
15+
1216
linter:
1317
# The lint rules applied to this project can be customized in the
1418
# section below to disable rules from the `package:flutter_lints/flutter.yaml`

lib/config/riverpod.dart

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
import 'package:flutter_riverpod/flutter_riverpod.dart';
2+
import 'package:on_time_front/config/database.dart';
3+
import 'package:riverpod_annotation/riverpod_annotation.dart';
4+
5+
part 'riverpod.g.dart';
6+
7+
@riverpod
8+
AppDatabase appDatabse(Ref ref) {
9+
return AppDatabase();
10+
}

lib/main.dart

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
11
import 'package:flutter/material.dart';
2+
import 'package:flutter_riverpod/flutter_riverpod.dart';
23
import 'package:on_time_front/config/database.dart';
34
import 'package:on_time_front/domain/entities/place_entity.dart';
45
import 'package:on_time_front/domain/entities/schedule_entity.dart';
56
import 'package:on_time_front/domain/entities/user_entity.dart';
67

78
void main() async {
8-
runApp(const MyApp());
9+
runApp(const ProviderScope(child: MyApp()));
910
WidgetsFlutterBinding.ensureInitialized();
1011

1112
final database = AppDatabase();

pubspec.lock

Lines changed: 137 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -142,6 +142,14 @@ packages:
142142
url: "https://pub.dev"
143143
source: hosted
144144
version: "2.0.3"
145+
ci:
146+
dependency: transitive
147+
description:
148+
name: ci
149+
sha256: "145d095ce05cddac4d797a158bc4cf3b6016d1fe63d8c3d2fbd7212590adca13"
150+
url: "https://pub.dev"
151+
source: hosted
152+
version: "0.1.0"
145153
cli_util:
146154
dependency: transitive
147155
description:
@@ -198,6 +206,38 @@ packages:
198206
url: "https://pub.dev"
199207
source: hosted
200208
version: "1.0.8"
209+
custom_lint:
210+
dependency: "direct dev"
211+
description:
212+
name: custom_lint
213+
sha256: "3486c470bb93313a9417f926c7dd694a2e349220992d7b9d14534dc49c15bba9"
214+
url: "https://pub.dev"
215+
source: hosted
216+
version: "0.7.0"
217+
custom_lint_builder:
218+
dependency: transitive
219+
description:
220+
name: custom_lint_builder
221+
sha256: "42cdc41994eeeddab0d7a722c7093ec52bd0761921eeb2cbdbf33d192a234759"
222+
url: "https://pub.dev"
223+
source: hosted
224+
version: "0.7.0"
225+
custom_lint_core:
226+
dependency: transitive
227+
description:
228+
name: custom_lint_core
229+
sha256: "02450c3e45e2a6e8b26c4d16687596ab3c4644dd5792e3313aa9ceba5a49b7f5"
230+
url: "https://pub.dev"
231+
source: hosted
232+
version: "0.7.0"
233+
custom_lint_visitor:
234+
dependency: transitive
235+
description:
236+
name: custom_lint_visitor
237+
sha256: "8aeb3b6ae2bb765e7716b93d1d10e8356d04e0ff6d7592de6ee04e0dd7d6587d"
238+
url: "https://pub.dev"
239+
source: hosted
240+
version: "1.0.0+6.7.0"
201241
dart_style:
202242
dependency: transitive
203243
description:
@@ -275,11 +315,27 @@ packages:
275315
url: "https://pub.dev"
276316
source: hosted
277317
version: "5.0.0"
318+
flutter_riverpod:
319+
dependency: "direct main"
320+
description:
321+
name: flutter_riverpod
322+
sha256: "9532ee6db4a943a1ed8383072a2e3eeda041db5657cdf6d2acecf3c21ecbe7e1"
323+
url: "https://pub.dev"
324+
source: hosted
325+
version: "2.6.1"
278326
flutter_test:
279327
dependency: "direct dev"
280328
description: flutter
281329
source: sdk
282330
version: "0.0.0"
331+
freezed_annotation:
332+
dependency: transitive
333+
description:
334+
name: freezed_annotation
335+
sha256: c2e2d632dd9b8a2b7751117abcfc2b4888ecfe181bd9fca7170d9ef02e595fe2
336+
url: "https://pub.dev"
337+
source: hosted
338+
version: "2.4.4"
283339
frontend_server_client:
284340
dependency: transitive
285341
description:
@@ -304,6 +360,14 @@ packages:
304360
url: "https://pub.dev"
305361
source: hosted
306362
version: "2.3.2"
363+
hotreloader:
364+
dependency: transitive
365+
description:
366+
name: hotreloader
367+
sha256: ed56fdc1f3a8ac924e717257621d09e9ec20e308ab6352a73a50a1d7a4d9158e
368+
url: "https://pub.dev"
369+
source: hosted
370+
version: "4.2.0"
307371
http_multi_server:
308372
dependency: transitive
309373
description:
@@ -544,6 +608,54 @@ packages:
544608
url: "https://pub.dev"
545609
source: hosted
546610
version: "4.1.0"
611+
riverpod:
612+
dependency: transitive
613+
description:
614+
name: riverpod
615+
sha256: "59062512288d3056b2321804332a13ffdd1bf16df70dcc8e506e411280a72959"
616+
url: "https://pub.dev"
617+
source: hosted
618+
version: "2.6.1"
619+
riverpod_analyzer_utils:
620+
dependency: transitive
621+
description:
622+
name: riverpod_analyzer_utils
623+
sha256: dc53a659cb543b203cdc35cd4e942ed08ea893eb6ef12029301323bdf18c5d95
624+
url: "https://pub.dev"
625+
source: hosted
626+
version: "0.5.7"
627+
riverpod_annotation:
628+
dependency: "direct main"
629+
description:
630+
name: riverpod_annotation
631+
sha256: e14b0bf45b71326654e2705d462f21b958f987087be850afd60578fcd502d1b8
632+
url: "https://pub.dev"
633+
source: hosted
634+
version: "2.6.1"
635+
riverpod_generator:
636+
dependency: "direct dev"
637+
description:
638+
name: riverpod_generator
639+
sha256: "54458dac2fea976990dc9ed379060db6ae5c8790143f1963fedd0fb99980a326"
640+
url: "https://pub.dev"
641+
source: hosted
642+
version: "2.6.2"
643+
riverpod_lint:
644+
dependency: "direct dev"
645+
description:
646+
name: riverpod_lint
647+
sha256: "326efc199b87f21053b9a2afbf2aea26c41b3bf6f8ba346ce69126ee17d16ebd"
648+
url: "https://pub.dev"
649+
source: hosted
650+
version: "2.6.2"
651+
rxdart:
652+
dependency: transitive
653+
description:
654+
name: rxdart
655+
sha256: "5c3004a4a8dbb94bd4bf5412a4def4acdaa12e12f269737a5751369e12d1a962"
656+
url: "https://pub.dev"
657+
source: hosted
658+
version: "0.28.0"
547659
shelf:
548660
dependency: transitive
549661
description:
@@ -581,6 +693,14 @@ packages:
581693
url: "https://pub.dev"
582694
source: hosted
583695
version: "1.10.0"
696+
sprintf:
697+
dependency: transitive
698+
description:
699+
name: sprintf
700+
sha256: "1fc9ffe69d4df602376b52949af107d8f5703b77cda567c4d7d86a0693120f23"
701+
url: "https://pub.dev"
702+
source: hosted
703+
version: "7.0.0"
584704
sqlite3:
585705
dependency: transitive
586706
description:
@@ -612,7 +732,15 @@ packages:
612732
sha256: "9f47fd3630d76be3ab26f0ee06d213679aa425996925ff3feffdec504931c377"
613733
url: "https://pub.dev"
614734
source: hosted
615-
version: "1.12.0"
735+
version: "1.12.1"
736+
state_notifier:
737+
dependency: transitive
738+
description:
739+
name: state_notifier
740+
sha256: b8677376aa54f2d7c58280d5a007f9e8774f1968d1fb1c096adcb4792fba29bb
741+
url: "https://pub.dev"
742+
source: hosted
743+
version: "1.0.0"
616744
stream_channel:
617745
dependency: transitive
618746
description:
@@ -669,6 +797,14 @@ packages:
669797
url: "https://pub.dev"
670798
source: hosted
671799
version: "1.4.0"
800+
uuid:
801+
dependency: transitive
802+
description:
803+
name: uuid
804+
sha256: a5be9ef6618a7ac1e964353ef476418026db906c4facdedaa299b7a2e71690ff
805+
url: "https://pub.dev"
806+
source: hosted
807+
version: "4.5.1"
672808
vector_math:
673809
dependency: transitive
674810
description:

pubspec.yaml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,8 @@ dependencies:
3939
# The following adds the Cupertino Icons font to your application.
4040
# Use with the CupertinoIcons class for iOS style icons.
4141
cupertino_icons: ^1.0.8
42+
flutter_riverpod: ^2.6.1
43+
riverpod_annotation: ^2.6.1
4244

4345
dev_dependencies:
4446
flutter_test:
@@ -55,6 +57,10 @@ dev_dependencies:
5557
# rules and activating additional ones.
5658
flutter_lints: ^5.0.0
5759
husky: ^0.1.7
60+
commitlint_cli: ^0.7.2
61+
riverpod_generator: ^2.6.2
62+
custom_lint: ^0.7.0
63+
riverpod_lint: ^2.6.2
5864

5965
# For information on the generic Dart part of this file, see the
6066
# following page: https://dart.dev/tools/pub/pubspec

test/config/riverpod_test.dart

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
import 'package:flutter_riverpod/flutter_riverpod.dart';
2+
import 'package:flutter_test/flutter_test.dart';
3+
import 'package:on_time_front/config/database.dart';
4+
import 'package:on_time_front/config/riverpod.dart';
5+
6+
void main() {
7+
test('[appDatabaseProvider] should provide AppDatabase', () {
8+
final container = ProviderContainer();
9+
final appDatabase = container.read(appDatabseProvider);
10+
expect(appDatabase, isA<AppDatabase>());
11+
});
12+
}

test/domain/repositories/schedule_repository_test.dart

Lines changed: 0 additions & 15 deletions
This file was deleted.

test/helpers/provider_container.dart

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
import 'package:flutter_riverpod/flutter_riverpod.dart';
2+
import 'package:flutter_test/flutter_test.dart';
3+
4+
/// A testing utility which creates a [ProviderContainer] and automatically
5+
/// disposes it at the end of the test.
6+
ProviderContainer createContainer({
7+
ProviderContainer? parent,
8+
List<Override> overrides = const [],
9+
List<ProviderObserver>? observers,
10+
}) {
11+
// Create a ProviderContainer, and optionally allow specifying parameters.
12+
final container = ProviderContainer(
13+
parent: parent,
14+
overrides: overrides,
15+
observers: observers,
16+
);
17+
18+
// When the test ends, dispose the container.
19+
addTearDown(container.dispose);
20+
21+
return container;
22+
}

test/widget_test.dart

Lines changed: 0 additions & 30 deletions
This file was deleted.

0 commit comments

Comments
 (0)