Skip to content

How to use this package in the widget test ? #89

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

Closed
mahdiyami2 opened this issue Jun 24, 2020 · 12 comments
Closed

How to use this package in the widget test ? #89

mahdiyami2 opened this issue Jun 24, 2020 · 12 comments

Comments

@mahdiyami2
Copy link

You did not mention the widget test in the package description.
How can I solve my problem?

It displays this error when I run the widget test.

Testing started at 10:07 AM ...
C:\src\flutter\bin\flutter.bat --no-color test --machine --plain-name "Exist FloatingActionButton" test\features\announcement\presentation\widgets_test\announcement_widget_test.dart
══╡ EXCEPTION CAUGHT BY WIDGETS LIBRARY ╞══════════════════════'═════════════════════════════════════
The following assertion was thrown building _BodyBuilder:
No type AnnouncementBloc is registered inside GetIt.
Did you forget to pass an instance name?
(Did you accidentally do GetIt sl=GetIt.instance(); instead of GetIt sl=GetIt.instance;did you
forget to register it?)
'package:get_it/get_it_impl.dart':
Failed assertion: line 251 pos 14: 'instanceFactory != null'

The relevant error-causing widget was:
Scaffold
file:///C:/Projects/niaz-flutter/lib/features/announcement/presentation/pages/announcements_page.dart:15:12

When the exception was thrown, this was the stack:
#2 _GetItImplementation._findFactoryByNameOrType (package:get_it/get_it_impl.dart:251:14)
#3 _GetItImplementation.get (package:get_it/get_it_impl.dart:263:27)
#4 _GetItImplementation.call (package:get_it/get_it_impl.dart:288:12)
#5 new _AnnouncementsWidgetState (package:niaz/features/announcement/presentation/widgets/announcements_widget.dart:22:19)
#6 AnnouncementsWidget.createState (package:niaz/features/announcement/presentation/widgets/announcements_widget.dart:18:46)
#7 new StatefulElement (package:flutter/src/widgets/framework.dart:4600:25)
#8 StatefulWidget.createElement (package:flutter/src/widgets/framework.dart:896:38)
... Normal element mounting (19 frames)
#27 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#28 MultiChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5956:32)
... Normal element mounting (193 frames)
#221 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#222 MultiChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5956:32)
... Normal element mounting (255 frames)
#477 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#478 Element.updateChild (package:flutter/src/widgets/framework.dart:3220:20)
#479 RenderObjectToWidgetElement._rebuild (package:flutter/src/widgets/binding.dart:1132:16)
#480 RenderObjectToWidgetElement.update (package:flutter/src/widgets/binding.dart:1110:5)
#481 RenderObjectToWidgetElement.performRebuild (package:flutter/src/widgets/binding.dart:1124:7)
#482 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#483 BuildOwner.buildScope (package:flutter/src/widgets/framework.dart:2632:33)
#484 AutomatedTestWidgetsFlutterBinding.drawFrame (package:flutter_test/src/binding.dart:1016:18)
#485 RendererBinding._handlePersistentFrameCallback (package:flutter/src/rendering/binding.dart:284:5)
#486 SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:1113:15)
#487 SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:1052:9)
#488 AutomatedTestWidgetsFlutterBinding.pump. (package:flutter_test/src/binding.dart:889:9)
#491 TestAsyncUtils.guard (package:flutter_test/src/test_async_utils.dart:72:41)
#492 AutomatedTestWidgetsFlutterBinding.pump (package:flutter_test/src/binding.dart:876:27)
#493 WidgetTester.pumpWidget. (package:flutter_test/src/widget_tester.dart:462:22)
#496 TestAsyncUtils.guard (package:flutter_test/src/test_async_utils.dart:72:41)
#497 WidgetTester.pumpWidget (package:flutter_test/src/widget_tester.dart:459:27)
#498 main. (file:///C:/Projects/niaz-flutter/test/features/announcement/presentation/widgets_test/announcement_widget_test.dart:15:18)
#499 main. (file:///C:/Projects/niaz-flutter/test/features/announcement/presentation/widgets_test/announcement_widget_test.dart:14:45)
#500 testWidgets.. (package:flutter_test/src/widget_tester.dart:144:29)
#511 FakeAsync.flushMicrotasks (package:fake_async/fake_async.dart:192:32)
#512 AutomatedTestWidgetsFlutterBinding.runTest. (package:flutter_test/src/binding.dart:1109:17)
#513 AutomatedTestWidgetsFlutterBinding.runTest. (package:flutter_test/src/binding.dart:1097:35)
(elided 31 frames from class _AssertionError, dart:async, and package:stack_trace)

════════════════════════════════════════════════════════════════════════════════════════════════════

Test failed. See exception logs above.
The test description was: Exist FloatingActionButton

@escamoteur
Copy link
Collaborator

Did you register AnnouncementBloc inside your test?
if yes, please attach your test file

@mahdiyami2
Copy link
Author

Did you register AnnouncementBloc inside your test?
if yes, please attach your test file

How to register the AnnouncementBloc in the test?
Can you give an example?

@escamoteur
Copy link
Collaborator

in your app you register AnnouncementBloc ?
You have to add this registration at the beginning of you test.
You also have to add an GetIt.instance.reset(); before the registrations in every test.

@mahdiyami2
Copy link
Author

in your app you register AnnouncementBloc ?
You have to add this registration at the beginning of you test.
You also have to add an GetIt.instance.reset(); before the registrations in every test.

This is my simple test. Yes, I registered the block in my app
I also added this code to GetIt.instance.reset (); But the test failed.
And again it showed the same error message.
Do I need to do anything else?


import 'package:flutter/material.dart';
import 'package:flutter_test/flutter_test.dart';
import 'package:get_it/get_it.dart';
import 'package:niaz/features/announcement/presentation/pages/announcements_page.dart';

void main() {
GetIt.instance.reset();
Widget createWidgetForTesting({Widget child}) {
return MaterialApp(home: child);
}

testWidgets('Exist FloatingActionButton', (WidgetTester tester) async {
await tester.pumpWidget(createWidgetForTesting(child: AnnouncementsPage()));

final floatingActionButtonFinder = find.byType(FloatingActionButton);

expect(floatingActionButtonFinder, findsOneWidget);

});
}

@escamoteur
Copy link
Collaborator

you have to register your objects after the reset

@mahdiyami2
Copy link
Author

you have to register your objects after the reset
This is my code after registering the object.
I've tried registering in different ways, but I'm still wrong

import 'package:flutter/material.dart';
import 'package:flutter_test/flutter_test.dart';
import 'package:get_it/get_it.dart';
import 'package:niaz/features/announcement/presentation/bloc/announcement_bloc.dart';
import 'package:niaz/features/announcement/presentation/pages/announcements_page.dart';

void main() {
final sl = GetIt.instance;
setUp(() async {
sl.reset();
Future init() async {
sl.registerFactory(() => AnnouncementBloc(
get: sl(),
find: sl(),
create: sl(),
update: sl(),
));
}

await init();

});

Widget createWidgetForTesting({Widget child}) {
return MaterialApp(home: child);
}

testWidgets('Exist FloatingActionButton', (WidgetTester tester) async {
await tester.pumpWidget(createWidgetForTesting(child: AnnouncementsPage()));

final floatingActionButtonFinder = find.byType(FloatingActionButton);

expect(floatingActionButtonFinder, findsOneWidget);

});
}

and my error

Testing started at 4:42 PM ...
C:\src\flutter\bin\flutter.bat --no-color test --machine --plain-name "Exist FloatingActionButton" test\features\announcement\presentation\widgets_test\announcement_widget_test.dart
Error while creating AnnouncementBloc
Stack trace:
#0 _AssertionError._doThrowNew (dart:core-patch/errors_patch.dart:40:39)
#1 _AssertionError._throwNew (dart:core-patch/errors_patch.dart:36:5)
#2 _GetItImplementation._findFactoryByNameOrType (package:get_it/get_it_impl.dart:251:14)
#3 _GetItImplementation.get (package:get_it/get_it_impl.dart:263:27)
#4 _GetItImplementation.call (package:get_it/get_it_impl.dart:288:12)
#5 main..init. (file:///C:/Projects/niaz-flutter/test/features/announcement/presentation/widgets_test/announcement_widget_test.dart:13:20)
#6 _ServiceFactory.getObject (package:get_it/get_it_impl.dart:120:36)
#7 _GetItImplementation.get (package:get_it/get_it_impl.dart:276:34)
#8 _GetItImplementation.call (package:get_it/get_it_impl.dart:288:12)
#9 new _AnnouncementsWidgetState (package:niaz/features/announcement/presentation/widgets/announcements_widget.dart:22:19)
#10 AnnouncementsWidget.createState (package:niaz/features/announcement/presentation/widgets/announcements_widget.dart:18:46)
#11 new StatefulElement (package:flutter/src/widgets/framework.dart:4600:25)
#12 StatefulWidget.createElement (package:flutter/src/widgets/framework.dart:896:38)
#13 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3450:40)
#14 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#15 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#16 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#17 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#18 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#19 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#20 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#21 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#22 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#23 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#24 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#25 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#26 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#27 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#28 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#29 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#30 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#31 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#32 MultiChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5956:32)
#33 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#34 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#35 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#36 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4684:11)
#37 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#38 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#39 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4675:11)
#40 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#41 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#42 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#43 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#44 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#45 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#46 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#47 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#48 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#49 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#50 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4684:11)
#51 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#52 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#53 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4675:11)
#54 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#55 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#56 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#57 SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5839:14)
#58 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#59 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#60 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#61 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#62 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#63 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#64 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#65 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#66 SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5839:14)
#67 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#68 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#69 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#70 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4684:11)
#71 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#72 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#73 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4675:11)
#74 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#75 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#76 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#77 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#78 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4684:11)
#79 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#80 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#81 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4675:11)
#82 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#83 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#84 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#85 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#86 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#87 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#88 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#89 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#90 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#91 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#92 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#93 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#94 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#95 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#96 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#97 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#98 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4684:11)
#99 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#100 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#101 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4675:11)
#102 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#103 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#104 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#105 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#106 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4684:11)
#107 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#108 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#109 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4675:11)
#110 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#111 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#112 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#113 SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5839:14)
#114 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#115 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#116 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#117 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#118 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#119 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#120 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#121 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#122 SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5839:14)
#123 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#124 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#125 SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5839:14)
#126 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#127 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#128 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#129 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4684:11)
#130 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#131 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#132 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4675:11)
#133 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#134 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#135 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#136 SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5839:14)
#137 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#138 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#139 SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5839:14)
#140 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#141 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#142 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#143 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4684:11)
#144 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#145 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#146 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4675:11)
#147 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#148 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#149 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#150 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#151 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#152 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#153 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#154 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#155 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#156 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#157 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4684:11)
#158 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#159 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#160 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4675:11)
#161 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#162 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#163 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#164 SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5839:14)
#165 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#166 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#167 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#168 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#169 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#170 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#171 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#172 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#173 SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5839:14)
#174 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#175 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#176 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#177 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4684:11)
#178 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#179 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#180 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4675:11)
#181 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#182 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#183 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#184 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#185 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#186 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#187 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#188 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#189 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#190 SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5839:14)
#191 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#192 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#193 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#194 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#195 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#196 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#197 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#198 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#199 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#200 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4684:11)
#201 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#202 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#203 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4675:11)
#204 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#205 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#206 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#207 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#208 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#209 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#210 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#211 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#212 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#213 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#214 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#215 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#216 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#217 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#218 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#219 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#220 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4684:11)
#221 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#222 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#223 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4675:11)
#224 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#225 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#226 MultiChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5956:32)
#227 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#228 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#229 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#230 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4684:11)
#231 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#232 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#233 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4675:11)
#234 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#235 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#236 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#237 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#238 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#239 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#240 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#241 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#242 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#243 SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5839:14)
#244 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#245 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#246 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#247 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4684:11)
#248 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#249 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#250 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4675:11)
#251 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#252 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#253 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#254 SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5839:14)
#255 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#256 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#257 SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5839:14)
#258 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#259 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#260 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#261 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#262 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#263 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#264 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#265 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#266 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#267 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4684:11)
#268 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#269 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#270 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4675:11)
#271 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#272 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#273 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#274 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#275 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#276 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#277 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#278 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#279 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#280 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#281 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#282 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#283 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#284 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#285 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#286 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#287 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#288 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#289 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#290 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#291 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#292 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#293 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#294 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#295 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#296 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#297 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#298 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#299 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#300 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#301 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#302 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#303 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#304 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#305 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#306 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#307 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#308 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#309 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#310 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#311 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4684:11)
#312 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#313 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#314 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4675:11)
#315 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#316 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#317 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#318 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#319 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#320 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#321 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#322 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#323 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#324 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#325 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#326 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#327 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#328 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#329 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#330 SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5839:14)
#331 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#332 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#333 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#334 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#335 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#336 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#337 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#338 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#339 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#340 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#341 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#342 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#343 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#344 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#345 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#346 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#347 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#348 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#349 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#350 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#351 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#352 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#353 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#354 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#355 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#356 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#357 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#358 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#359 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#360 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#361 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#362 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#363 SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5839:14)
#364 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#365 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#366 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#367 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4684:11)
#368 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#369 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#370 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4675:11)
#371 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#372 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#373 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#374 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#375 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#376 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#377 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#378 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#379 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#380 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#381 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4684:11)
#382 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#383 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#384 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4675:11)
#385 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#386 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#387 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#388 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#389 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#390 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#391 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#392 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#393 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#394 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#395 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4684:11)
#396 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#397 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#398 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4675:11)
#399 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#400 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#401 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#402 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#403 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#404 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#405 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#406 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#407 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#408 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#409 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4684:11)
#410 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#411 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#412 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4675:11)
#413 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#414 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#415 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#416 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#417 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#418 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#419 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#420 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#421 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#422 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#423 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4684:11)
#424 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#425 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#426 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4675:11)
#427 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#428 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#429 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#430 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#431 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#432 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#433 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#434 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#435 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#436 SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5839:14)
#437 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#438 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#439 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#440 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#441 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#442 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#443 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#444 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#445 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#446 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4684:11)
#447 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#448 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#449 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4675:11)
#450 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#451 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#452 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#453 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#454 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4684:11)
#455 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#456 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#457 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4675:11)
#458 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#459 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#460 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#461 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#462 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4684:11)
#463 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#464 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#465 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4675:11)
#466 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#467 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#468 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#469 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#470 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#471 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#472 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#473 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#474 Element.updateChild (package:flutter/src/widgets/framework.dart:3223:18)
#475 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4536:16)
#476 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4684:11)
#477 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#478 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4490:5)
#479 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4675:11)
#480 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4485:5)
#481 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#482 Element.updateChild (package:flutter/src/widgets/framework.dart:3220:20)
#483 RenderObjectToWidgetElement._rebuild (package:flutter/src/widgets/binding.dart:1132:16)
#484 RenderObjectToWidgetElement.update (package:flutter/src/widgets/binding.dart:1110:5)
#485 RenderObjectToWidgetElement.performRebuild (package:flutter/src/widgets/binding.dart:1124:7)
#486 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#487 BuildOwner.buildScope (package:flutter/src/widgets/framework.dart:2632:33)
#488 AutomatedTestWidgetsFlutterBinding.drawFrame (package:flutter_test/src/binding.dart:1016:18)
#489 RendererBinding._handlePersistentFrameCallback (package:flutter/src/rendering/binding.dart:284:5)
#490 SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:1113:15)
#491 SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:1052:9)
#492 AutomatedTestWidgetsFlutterBinding.pump. (package:flutter_test/src/binding.dart:889:9)
#493 _rootRun (dart:async/zone.dart:1190:13)
#494 _CustomZone.run (dart:async/zone.dart:1093:19)
#495 TestAsyncUtils.guard (package:flutter_test/src/test_async_utils.dart:72:41)
#496 AutomatedTestWidgetsFlutterBinding.pump (package:flutter_test/src/binding.dart:876:27)
#497 WidgetTester.pumpWidget. (package:flutter_test/src/widget_tester.dart:462:22)
#498 _rootRun (dart:async/zone.dart:1190:13)
#499 _CustomZone.run (dart:async/zone.dart:1093:19)
#500 TestAsyncUtils.guard (package:flutter_test/src/test_async_utils.dart:72:41)
#501 WidgetTester.pumpWidget (package:flutter_test/src/widget_tester.dart:459:27)
#502 main. (file:///C:/Projects/niaz-flutter/test/features/announcement/presentation/widgets_test/announcement_widget_test.dart:28:18)
#503 main. (file:///C:/Projects/niaz-flutter/test/features/announcement/presentation/widgets_test/announcement_widget_test.dart:27:45)
#504 testWidgets.. (package:flutter_test/src/widget_tester.dart:144:29)
#505 StackZoneSpecification._registerUnaryCallback.. (package:stack_trace/src/stack_zone_specification.dart:129:26)
#506 StackZoneSpecification._run (package:stack_trace/src/stack_zone_specification.dart:209:15)
#507 StackZoneSpecification._registerUnaryCallback. (package:stack_trace/src/stack_zone_specification.dart:129:14)
#508 _rootRunUnary (dart:async/zone.dart:1198:47)
#509 _CustomZone.runUnary (dart:async/zone.dart:1100:19)
#510 _FutureListener.handleValue (dart:async/future_impl.dart:143:18)
#511 Future._propagateToListeners.handleValueCallback (dart:async/future_impl.dart:696:45)
#512 Future._propagateToListeners (dart:async/future_impl.dart:725:32)
#513 Future._completeWithValue (dart:async/future_impl.dart:529:5)
#514 Future._asyncCompleteWithValue. (dart:async/future_impl.dart:567:7)
#515 FakeAsync.flushMicrotasks (package:fake_async/fake_async.dart:192:32)
#516 AutomatedTestWidgetsFlutterBinding.runTest. (package:flutter_test/src/binding.dart:1109:17)
#517 AutomatedTestWidgetsFlutterBinding.runTest. (package:flutter_test/src/binding.dart:1097:35)
#518 new Future.microtask. (dart:async/future.dart:200:37)
#519 StackZoneSpecification._run (package:stack_trace/src/stack_zone_specification.dart:209:15)
#520 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:119:48)
#521 _rootRun (dart:async/zone.dart:1182:47)
#522 _CustomZone.run (dart:async/zone.dart:1093:19)
#523 _CustomZone.runGuarded (dart:async/zone.dart:997:7)
#524 _CustomZone.bindCallbackGuarded. (dart:async/zone.dart:1037:23)
#525 StackZoneSpecification._run (package:stack_trace/src/stack_zone_specification.dart:209:15)
#526 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:119:48)
#527 _rootRun (dart:async/zone.dart:1190:13)
#528 _CustomZone.run (dart:async/zone.dart:1093:19)
#529 _CustomZone.runGuarded (dart:async/zone.dart:997:7)
#530 _CustomZone.bindCallbackGuarded. (dart:async/zone.dart:1037:23)
#531 _microtaskLoop (dart:async/schedule_microtask.dart:41:21)
#532 _startMicrotaskLoop (dart:async/schedule_microtask.dart:50:5)
══╡ EXCEPTION CAUGHT BY WIDGETS LIBRARY ╞═══════════════════════════════════════════════════════════
The following assertion was thrown building _BodyBuilder:
No type GetAnnouncements is registered inside GetIt.
Did you forget to pass an instance name?
(Did you accidentally do GetIt sl=GetIt.instance(); instead of GetIt sl=GetIt.instance;did you
forget to register it?)
'package:get_it/get_it_impl.dart':
Failed assertion: line 251 pos 14: 'instanceFactory != null'

The relevant error-causing widget was:
Scaffold
file:///C:/Projects/niaz-flutter/lib/features/announcement/presentation/pages/announcements_page.dart:15:12

When the exception was thrown, this was the stack:
#2 _GetItImplementation._findFactoryByNameOrType (package:get_it/get_it_impl.dart:251:14)
#3 _GetItImplementation.get (package:get_it/get_it_impl.dart:263:27)
#4 _GetItImplementation.call (package:get_it/get_it_impl.dart:288:12)
#5 main..init. (file:///C:/Projects/niaz-flutter/test/features/announcement/presentation/widgets_test/announcement_widget_test.dart:13:20)
#6 _ServiceFactory.getObject (package:get_it/get_it_impl.dart:120:36)
#7 _GetItImplementation.get (package:get_it/get_it_impl.dart:276:34)
#8 _GetItImplementation.call (package:get_it/get_it_impl.dart:288:12)
#9 new _AnnouncementsWidgetState (package:niaz/features/announcement/presentation/widgets/announcements_widget.dart:22:19)
#10 AnnouncementsWidget.createState (package:niaz/features/announcement/presentation/widgets/announcements_widget.dart:18:46)
#11 new StatefulElement (package:flutter/src/widgets/framework.dart:4600:25)
#12 StatefulWidget.createElement (package:flutter/src/widgets/framework.dart:896:38)
... Normal element mounting (19 frames)
#31 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#32 MultiChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5956:32)
... Normal element mounting (193 frames)
#225 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#226 MultiChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5956:32)
... Normal element mounting (255 frames)
#481 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3455:14)
#482 Element.updateChild (package:flutter/src/widgets/framework.dart:3220:20)
#483 RenderObjectToWidgetElement._rebuild (package:flutter/src/widgets/binding.dart:1132:16)
#484 RenderObjectToWidgetElement.update (package:flutter/src/widgets/binding.dart:1110:5)
#485 RenderObjectToWidgetElement.performRebuild (package:flutter/src/widgets/binding.dart:1124:7)
#486 Element.rebuild (package:flutter/src/widgets/framework.dart:4227:5)
#487 BuildOwner.buildScope (package:flutter/src/widgets/framework.dart:2632:33)
#488 AutomatedTestWidgetsFlutterBinding.drawFrame (package:flutter_test/src/binding.dart:1016:18)
#489 RendererBinding._handlePersistentFrameCallback (package:flutter/src/rendering/binding.dart:284:5)
#490 SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:1113:15)
#491 SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:1052:9)
#492 AutomatedTestWidgetsFlutterBinding.pump. (package:flutter_test/src/binding.dart:889:9)
#495 TestAsyncUtils.guard (package:flutter_test/src/test_async_utils.dart:72:41)
#496 AutomatedTestWidgetsFlutterBinding.pump (package:flutter_test/src/binding.dart:876:27)
#497 WidgetTester.pumpWidget. (package:flutter_test/src/widget_tester.dart:462:22)
#500 TestAsyncUtils.guard (package:flutter_test/src/test_async_utils.dart:72:41)
#501 WidgetTester.pumpWidget (package:flutter_test/src/widget_tester.dart:459:27)
#502 main. (file:///C:/Projects/niaz-flutter/test/features/announcement/presentation/widgets_test/announcement_widget_test.dart:28:18)
#503 main. (file:///C:/Projects/niaz-flutter/test/features/announcement/presentation/widgets_test/announcement_widget_test.dart:27:45)
#504 testWidgets.. (package:flutter_test/src/widget_tester.dart:144:29)
#515 FakeAsync.flushMicrotasks (package:fake_async/fake_async.dart:192:32)
#516 AutomatedTestWidgetsFlutterBinding.runTest. (package:flutter_test/src/binding.dart:1109:17)
#517 AutomatedTestWidgetsFlutterBinding.runTest. (package:flutter_test/src/binding.dart:1097:35)
(elided 31 frames from class _AssertionError, dart:async, and package:stack_trace)

════════════════════════════════════════════════════════════════════════════════════════════════════

Test failed. See exception logs above.
The test description was: Exist FloatingActionButton

Please tell me how to register the object correctly in the test

@escamoteur
Copy link
Collaborator

you have to do the reset and register inside your test like:

testWidgets('Exist FloatingActionButton', (WidgetTester tester) async {
   GEIt.I.reset();
  
   do your registration here!
 
   await tester.pumpWidget(createWidgetForTesting(child: AnnouncementsPage()));

   final floatingActionButtonFinder = find.byType(FloatingActionButton);

   expect(floatingActionButtonFinder, findsOneWidget);
});
}

@ThatPham2000
Copy link

ThatPham2000 commented Jan 1, 2024

Hello @escamoteur ,
Why do we have to register dependencies again while we do this in the main app?

More context:

  1. main.dart
    void main() {
    registerDependencies(); // Register dependency for GetIt
    runApp(MyApp());
    }

  2. main_test.dart
    void main() {
    testWidget('TEST', (tester) async {
    await tester.pumpWidget(MyApp());
    await tester.pumpAndSettle();

    // We can not use GetIt to get this dependency value (we must re-register again before using it)
    GetIt.I.get<Dependency>().value;
    });
    }

Is it a bug or a feature? Why don't we leverage getIt in the main app?

@escamoteur
Copy link
Collaborator

escamoteur commented Jan 1, 2024 via email

@ThatPham2000
Copy link

The problem is that the main app isn't executed inside of tests. What you can do is calling your registration function of tge main app in the setup function of the tests Am 1. Jan. 2024, 13:44 +0100 schrieb PHẠM VĂN THẬT @.>:

Hello @escamoteur , Why do we have to register dependencies again while we do this in the main app? More context: 1. > main.dart void main() { registerDependencies(); // Register dependency for GetIt runApp(MyApp()); } 2. > main_test.dart void main() { testWidget('TEST', (tester) async { await tester.pumpWidget(MyApp()); await tester.pumpAndSettle(); // We can not use GetIt to get this dependency value (we must re-register again before using it) GetIt.I.get().value; }); } Is it a bug or a feature? Why don't we leverage getIt in the main app? — Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you were mentioned.Message ID: @.
>

Hello Mr, how about when we call the app main function inside testWidget?
testWidget('TEST', (tester) async {
app.main(); // include register GetIt
// we still re-register GetIt.
});

@escamoteur
Copy link
Collaborator

escamoteur commented Jan 2, 2024 via email

@ThatPham2000
Copy link

You are right. It will work when I use app.main() instead of pumpWidget(MyApp()).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants