-
-
Notifications
You must be signed in to change notification settings - Fork 672
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
Tests throw an exception #432
Comments
In my case, the test fails. Maybe because I'm doing golden testing. await expectLater(
find.byType(MyWidgetUsingCachedNetWorkImage),
matchesGoldenFile('main.png'),
); |
I have exact same problem with widget tests while using CachedNetworkImage widget. |
+1 |
This blog post might help: https://medium.com/flutter-community/golden-testing-using-cachednetworkimage-1b488c653af3 |
followed that blog post but still getting issue, seems base class is trying to create http client.
hmm seems to work if add the GetIt call inside a |
me too. |
Because cached_network_image >=3.2.0 depends on flutter_cache_manager ^3.3.0 which depends on sqflite ^2.0.0+3, cached_network_image >=3.2.0 requires sqflite from hosted. i faced this error plz any one help me |
ไฝ ๅฅฝ๏ผ้ฎไปถๅทฒ็ปๆถๅฐ๏ผ่ฐข่ฐข
|
๐ Bug Report
The plugin throws an exception when doing tests with
testWidgets
. The tests don't fail as the exception is thrown after it completes. But it leaves a lot of console spam like this:`โโโก EXCEPTION CAUGHT BY FLUTTER TEST FRAMEWORK โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
The following MissingPluginException was thrown running a test (but after the test had completed):
MissingPluginException(No implementation found for method getDatabasesPath on channel
com.tekartik.sqflite)
When the exception was thrown, this was the stack:
#0 MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:154:7)
#1 MethodChannel.invokeMethod (package:flutter/src/services/platform_channel.dart:329:12)
#2 invokeMethod (package:sqflite/src/sqflite_impl.dart:17:13)
#3 SqfliteDatabaseFactoryImpl.invokeMethod (package:sqflite/src/factory_impl.dart:82:7)
#4 SqfliteDatabaseFactoryMixin.safeInvokeMethod. (package:sqflite_common/src/factory_mixin.dart:25:35)
#5 wrapDatabaseException (package:sqflite/src/exception_impl.dart:7:32)
#6 SqfliteDatabaseFactoryImpl.wrapDatabaseException (package:sqflite/src/factory_impl.dart:78:7)
#7 SqfliteDatabaseFactoryMixin.safeInvokeMethod (package:sqflite_common/src/factory_mixin.dart:25:7)
#8 SqfliteDatabaseFactoryMixin.getDatabasesPath (package:sqflite_common/src/factory_mixin.dart:143:26)
#9 getDatabasesPath (package:sqflite/sqflite.dart:168:54)
#10 CacheStore._getObjectProvider (package:flutter_cache_manager/src/cache_store.dart:43:33)
#11 new CacheStore (package:flutter_cache_manager/src/cache_store.dart:39:49)
#12 BaseCacheManager.createCacheStore (package:flutter_cache_manager/src/cache_manager.dart:263:12)
#13 new BaseCacheManager (package:flutter_cache_manager/src/cache_manager.dart:84:28)
#14 new DefaultCacheManager. (package:flutter_cache_manager/src/cache_manager.dart:40:29)
#15 new DefaultCacheManager (package:flutter_cache_manager/src/cache_manager.dart:36:39)
#16 CachedNetworkImageState._cacheManager (package:cached_network_image/src/cached_image_widget.dart:404:35)
#17 CachedNetworkImageState._createFileStream (package:cached_network_image/src/cached_image_widget.dart:242:19)
#18 CachedNetworkImageState.initState (package:cached_network_image/src/cached_image_widget.dart:219:5)
#19 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4640:58)
#20 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4476:5)
... Normal element mounting (39 frames)
#59 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3446:14)
#60 MultiChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5947:32)
... Normal element mounting (36 frames)
#96 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3446:14)
#97 Element.updateChild (package:flutter/src/widgets/framework.dart:3214:18)
#98 SliverMultiBoxAdaptorElement.updateChild (package:flutter/src/widgets/sliver.dart:1162:36)
#99 SliverMultiBoxAdaptorElement.createChild. (package:flutter/src/widgets/sliver.dart:1147:20)
#100 BuildOwner.buildScope (package:flutter/src/widgets/framework.dart:2607:19)
#101 SliverMultiBoxAdaptorElement.createChild (package:flutter/src/widgets/sliver.dart:1140:11)
#102 RenderSliverMultiBoxAdaptor._createOrObtainChild. (package:flutter/src/rendering/sliver_multi_box_adaptor.dart:354:23)
#103 RenderObject.invokeLayoutCallback. (package:flutter/src/rendering/object.dart:1866:58)
#104 PipelineOwner._enableMutationsToDirtySubtrees (package:flutter/src/rendering/object.dart:918:15)
#105 RenderObject.invokeLayoutCallback (package:flutter/src/rendering/object.dart:1866:13)
#106 RenderSliverMultiBoxAdaptor._createOrObtainChild (package:flutter/src/rendering/sliver_multi_box_adaptor.dart:343:5)
#107 RenderSliverMultiBoxAdaptor.addInitialChild (package:flutter/src/rendering/sliver_multi_box_adaptor.dart:427:5)
#108 RenderSliverFixedExtentBoxAdaptor.performLayout (package:flutter/src/rendering/sliver_fixed_extent_list.dart:197:12)
#109 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#110 RenderSliverEdgeInsetsPadding.performLayout (package:flutter/src/rendering/sliver_padding.dart:135:11)
#111 _RenderSliverFractionalPadding.performLayout (package:flutter/src/widgets/sliver_fill.dart:168:11)
#112 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#113 RenderViewportBase.layoutChildSequence (package:flutter/src/rendering/viewport.dart:452:13)
#114 RenderViewport._attemptLayout (package:flutter/src/rendering/viewport.dart:1444:12)
#115 RenderViewport.performLayout (package:flutter/src/rendering/viewport.dart:1353:20)
#116 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#117 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
#118 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#119 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
#120 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#121 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
#122 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#123 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
#124 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#125 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
#126 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#127 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
#128 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#129 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
#130 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#131 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
#132 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#133 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
#134 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#135 RenderStack.performLayout (package:flutter/src/rendering/stack.dart:556:15)
#136 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#137 RenderConstrainedBox.performLayout (package:flutter/src/rendering/proxy_box.dart:266:13)
#138 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#139 RenderFlex.performLayout (package:flutter/src/rendering/flex.dart:746:15)
#140 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#141 _RenderSingleChildViewport.performLayout (package:flutter/src/widgets/single_child_scroll_view.dart:512:13)
#142 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#143 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
#144 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#145 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
#146 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#147 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
#148 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#149 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
#150 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#151 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
#152 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#153 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
#154 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#155 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
#156 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#157 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
#158 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#159 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
#160 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#161 MultiChildLayoutDelegate.layoutChild (package:flutter/src/rendering/custom_layout.dart:171:11)
#162 _ScaffoldLayout.performLayout (package:flutter/src/material/scaffold.dart:484:7)
#163 MultiChildLayoutDelegate._callPerformLayout (package:flutter/src/rendering/custom_layout.dart:240:7)
#164 RenderCustomMultiChildLayoutBox.performLayout (package:flutter/src/rendering/custom_layout.dart:399:14)
#165 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#166 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
#167 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#168 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
#169 _RenderCustomClip.performLayout (package:flutter/src/rendering/proxy_box.dart:1248:11)
#170 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#171 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
#172 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
#173 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
#174 RenderObject._layoutWithoutResize (package:flutter/src/rendering/object.dart:1630:7)
#175 PipelineOwner.flushLayout (package:flutter/src/rendering/object.dart:887:18)
#176 AutomatedTestWidgetsFlutterBinding.drawFrame (package:flutter_test/src/binding.dart:1009:23)
#177 RendererBinding._handlePersistentFrameCallback (package:flutter/src/rendering/binding.dart:284:5)
#178 SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:1113:15)
#179 SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:1052:9)
#180 AutomatedTestWidgetsFlutterBinding.pump. (package:flutter_test/src/binding.dart:879:9)
#183 TestAsyncUtils.guard (package:flutter_test/src/test_async_utils.dart:72:41)
#184 AutomatedTestWidgetsFlutterBinding.pump (package:flutter_test/src/binding.dart:866:27)
#185 WidgetTester.pumpAndSettle. (package:flutter_test/src/widget_tester.dart:542:23)
#186 WidgetTester.pumpAndSettle. (package:flutter_test/src/widget_tester.dart:537:39)
#189 TestAsyncUtils.guard (package:flutter_test/src/test_async_utils.dart:72:41)
#190 WidgetTester.pumpAndSettle (package:flutter_test/src/widget_tester.dart:537:27)
#191 main.... (file:///C:/code/baltics-flutter/test/product_screen_test.dart:46:24)
(elided 16 frames from dart:async and package:stack_trace)`
Expected behavior
To not throw an exception when used on tests.
Reproduction steps
Just add a
CachedNetworkImage
to a widget and write a test for it withtestWidgets
.Configuration
Platform:
The text was updated successfully, but these errors were encountered: