The following assertion was thrown running a test: pumpAndSettle timed out Flutter - flutter

══╡ EXCEPTION CAUGHT BY FLUTTER TEST FRAMEWORK ╞════════════════════════════════════════════════════
The following assertion was thrown running a test:
pumpAndSettle timed out
When the exception was thrown, this was the stack:
#0 WidgetTester.pumpAndSettle. (package:flutter_test/src/widget_tester.dart:667:11)
(elided one frame from package:stack_trace)

This post helped me when I faced this issue
https://cursos.alura.com.br/forum/topico-pumpandsettle-timed-out-175044
so basically remove the tester.pumpAndSettle()
and replace it with
for (int i = 0; i < 5; i++) { await tester.pump(Duration(seconds: 1)); }

Related

The method 'containsKey' was called on null flutter

Before, my integration test works. After I pull an update of another developer my integration test fails with the following error:
══╡ EXCEPTION CAUGHT BY FLUTTER TEST FRAMEWORK ╞════════════════════════════════════════════════════
The following NoSuchMethodError was thrown running a test:
The method 'containsKey' was called on null.
Receiver: null
Tried calling: containsKey("serverStatus")
When the exception was thrown, this was the stack:
#0 Object.noSuchMethod (dart:core-patch/object_patch.dart:38:5)
#1 _IndexState._referAFriendEnabled (package:limitless/pages/index.dart:1390:15)
Transition { currentState: HomeInitial(), event: FetchHomeCarousels(), nextState: HomeInitial() }
Transition { currentState: InitialInboxState(), event: InboxFetch(), nextState: InboxFetchingData() }
══╡ EXCEPTION CAUGHT BY FLUTTER TEST FRAMEWORK ╞════════════════════════════════════════════════════
The following assertion was thrown running a test (but after the test had completed):
'package:flutter_test/src/binding.dart': Failed assertion: line 1558 pos 12: 'inTest': is not true.
When the exception was thrown, this was the stack:
#2 LiveTestWidgetsFlutterBinding.pump (package:flutter_test/src/binding.dart:1558:12)
#3 WidgetTester.pumpAndSettle.<anonymous closure> (package:flutter_test/src/widget_tester.dart:668:23)
<asynchronous suspension>
<asynchronous suspension>
(elided 3 frames from class _AssertionError and package:stack_trace)
════════════════════════════════════════════════════════════════════════════════════════════════════
03:29 +0 -1: end-to-end test limitless non-transactional test
CustomerStart { }
Transition { currentState: CustomerInitial(), event: CustomerStart { }, nextState: CustomerLoading() }
03:31 +0 -1: Some tests failed.
Running the app works fine. It only fails when running integration test.
This is code snippet about containsKey.
void _referAFriendEnabled() async {
bool referralEnabled = false;
PackageInfo packageInfo = await PackageInfo.fromPlatform();
if (prefs.containsKey('serverStatus')) {
Map appSettings = await AppSharedPref.getServerStatus();
limitlessRepo.appVersion = appSettings["app_version"];
limitlessRepo.storeVersion = appSettings["latest_store_app_version"];
referralEnabled = appSettings["referral_code"];
limitlessRepo.version = packageInfo.version;
} else {
await limitlessRepo.isReferralCodeEnabled();
}
newVersionAvailable();
setState(() {
_isReferralEnabled = referralEnabled;
});
Does anyone has an idea about this? Thank you.

Advance PDF Viewer : Failed assertion: line 4263 pos 14: 'owner!._debugCurrentBuildTarget == this': is not true

I am getting the error when I try to load the pdf from URL.
It shows the number of pages of pdf but then error appears on the screen.
Using plugin - https://pub.dev/packages/advance_pdf_viewer
Logcat:
======== Exception caught by widgets library
=======================================================
The following _CastError was thrown building NotificationListener<KeepAliveNotification>:
Null check operator used on a null value
The relevant error-causing widget was:
PDFViewer file:///D:/GST%20with%20GT/gst_with_gt/lib/screens/pdfview.dart:70:19
When the exception was thrown, this was the stack:
#0 _PDFPageState._repaint (package:advance_pdf_viewer/src/page.dart:54:45)
#1 _PDFPageState.didChangeDependencies (package:advance_pdf_viewer/src/page.dart:42:5)
#2 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4725:11)
#3 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4541:5)
#4 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3603:14)
...
====================================================================================================
======== Exception caught by widgets library =======================================================
The following assertion was thrown building SliverFillViewport:
'package:flutter/src/rendering/sliver_multi_box_adaptor.dart': Failed assertion: line 258 pos 16: 'child == null || indexOf(child) > index': is not true.
Either the assertion indicates an error in the framework itself, or we should provide substantially more information in this error message to help you determine and fix the underlying cause.
In either case, please report this assertion by filing a bug on GitHub:
https://github.com/flutter/flutter/issues/new?template=2_bug.md
The relevant error-causing widget was:
PDFViewer file:///D:/GST%20with%20GT/gst_with_gt/lib/screens/pdfview.dart:70:19
When the exception was thrown, this was the stack:
#2 RenderSliverMultiBoxAdaptor._debugVerifyChildOrder (package:flutter/src/rendering/sliver_multi_box_adaptor.dart:258:16)
#3 RenderSliverMultiBoxAdaptor.debugChildIntegrityEnabled=.<anonymous closure> (package:flutter/src/rendering/sliver_multi_box_adaptor.dart:233:14)
#4 RenderSliverMultiBoxAdaptor.debugChildIntegrityEnabled= (package:flutter/src/rendering/sliver_multi_box_adaptor.dart:235:6)
#5 SliverMultiBoxAdaptorElement.performRebuild (package:flutter/src/widgets/sliver.dart:1208:20)
#6 SliverMultiBoxAdaptorElement.update (package:flutter/src/widgets/sliver.dart:1124:7)
...
====================================================================================================
======== Exception caught by widgets library =======================================================
The following assertion was thrown building RawGestureDetector-[LabeledGlobalKey<RawGestureDetectorState>#411e6](state: RawGestureDetectorState#4acaf(gestures: <none>, behavior: opaque)):
A RenderViewport expected a child of type RenderSliver but received a child of type RenderErrorBox.
RenderObjects expect specific types of children because they coordinate with their children during layout and paint. For example, a RenderSliver cannot be the child of a RenderBox because a RenderSliver does not understand the RenderBox layout protocol.
The RenderViewport that expected a RenderSliver child was created by: Viewport ← IgnorePointer-[GlobalKey#e5bfe] ← Semantics ← Listener ← _GestureSemantics ← RawGestureDetector-[LabeledGlobalKey<RawGestureDetectorState>#411e6] ← Listener ← _ScrollableScope ← _ScrollSemantics-[GlobalKey#3ad9e] ← RepaintBoundary ← CustomPaint ← RepaintBoundary ← ⋯
The RenderErrorBox that did not match the expected child type was created by: ErrorWidget-[#87a59] ← SliverFillViewport ← Viewport ← IgnorePointer-[GlobalKey#e5bfe] ← Semantics ← Listener ← _GestureSemantics ← RawGestureDetector-[LabeledGlobalKey<RawGestureDetectorState>#411e6] ← Listener ← _ScrollableScope ← _ScrollSemantics-[GlobalKey#3ad9e] ← RepaintBoundary ← ⋯
The relevant error-causing widget was:
PDFViewer file:///D:/GST%20with%20GT/gst_with_gt/lib/screens/pdfview.dart:70:19
When the exception was thrown, this was the stack:
#0 ContainerRenderObjectMixin.debugValidateChild.<anonymous closure> (package:flutter/src/rendering/object.dart:3134:9)
#1 ContainerRenderObjectMixin.debugValidateChild (package:flutter/src/rendering/object.dart:3161:6)
#2 MultiChildRenderObjectElement.insertRenderObjectChild (package:flutter/src/widgets/framework.dart:6127:25)
#3 RenderObjectElement.attachRenderObject (package:flutter/src/widgets/framework.dart:5737:35)
#4 RenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5433:5)
...
====================================================================================================
======== Exception caught by widgets library =======================================================
The following assertion was thrown building _ScrollableScope:
'package:flutter/src/widgets/framework.dart': Failed assertion: line 4263 pos 14: 'owner!._debugCurrentBuildTarget == this': is not true.
Either the assertion indicates an error in the framework itself, or we should provide substantially more information in this error message to help you determine and fix the underlying cause.
In either case, please report this assertion by filing a bug on GitHub:
https://github.com/flutter/flutter/issues/new?template=2_bug.md
The relevant error-causing widget was:
PDFViewer file:///D:/GST%20with%20GT/gst_with_gt/lib/screens/pdfview.dart:70:19
When the exception was thrown, this was the stack:
#2 Element.rebuild.<anonymous closure> (package:flutter/src/widgets/framework.dart:4263:14)
#3 Element.rebuild (package:flutter/src/widgets/framework.dart:4266:6)
#4 StatefulElement.update (package:flutter/src/widgets/framework.dart:4771:5)
#5 Element.updateChild (package:flutter/src/widgets/framework.dart:3345:15)
#6 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6057:14)
...
Here, my code :
class PdfViewers extends StatefulWidget {
#override
PdfViewersState createState() => PdfViewersState();
}
class PdfViewersState extends State<PdfViewers> {
bool _isLoadings = true;
PDFDocument docs;
#override
void initState() {
Timer(
Duration(seconds: 1),
() => loadUrl(),
);
super.initState();
}
#override
Widget build(BuildContext context) {
return Scaffold(
backgroundColor: Colors.grey[100],
appBar: AppBar(
elevation: 0,
backgroundColor: Colors.grey[100],
actions: [
IconButton(
icon: Icon(
Icons.share_rounded,
color: Color(0xff4f2e7f),
),
onPressed: () async {}),
],
title: Text(
'PDF Article',
softWrap: true,
style: TextStyle(color: Color(0xff4f2e7f)),
),
leading: IconButton(
onPressed: () {
Navigator.pop(context, true);
},
icon: Icon(Icons.arrow_back_outlined, color: Color(0xff4f2e7f))),
),
body: Center(
child: _isLoadings
? Container(child: CircularProgressIndicator())
: PDFViewer(document: docs)));
}
Future<void> loadUrl() async {
setState(() {
_isLoadings = true;
});
docs= await PDFDocument.fromURL(
'https://gstwithgt.fivestake.com/uploads/topics/16254191793470.pdf');
setState(() {
_isLoadings = false;
});
}
}
I tried and searched many tutorials and example but none of them are working for me. so I posted question here.
The main thing is when I paste this same code in another project then it is working fine. I don't know where the problem is.. I'm trying to solve this error since last two days..
I also faced the same issue.
You can find here the full discussion: https://github.com/lohanidamodar/pdf_viewer/issues/62
It seems that on the first try to open the file it returns null from here:
var data = await _channel .invokeMethod('getPage', {'filePath': _filePath, 'pageNumber': page});
(From document.dart file)
The interesting thing is that after I reopen my app everything works fine.
This patch solved this exception for me:
I have noticed that before I reopen the application (which solves the issue) and I try to open the PDF, I'm getting this exception:
java.lang.NullPointerException: Attempt to invoke virtual method 'android.content.res.Resources android.app.Activity.getResources()' on a null object reference
But when I reopen the app and everything works, this exception disappears. So, I have looked for this exception in this repository issues and encountered this fix:
https://github.com/lohanidamodar/pdf_viewer/issues/45
After implementing RasyidMF solution, the PDF opens correctly.

ot a stack frame from package:stack_trace, where a vm or web frame was expected

Usually stack traces that occur in asynchronous operations are cut off at the first await (asynchronous suspension).
So, I am using Chain.capture to get full traces.
Chain.capture(() {
runApp(rootWidget);
}, onError: (dynamic error, dynamic stackTrace) {
reportError(error, stackTrace);
});
However, it looks like Flutter doesn't like it and sometimes throws:
I/flutter ( 6384): The following assertion was thrown running a test (but after the test had completed):
I/flutter ( 6384): Got a stack frame from package:stack_trace, where a vm or web frame was expected. This can happen if
I/flutter ( 6384): FlutterError.demangleStackTrace was not set in an environment that propagates non-standard stack
I/flutter ( 6384): traces to the framework, such as during tests.
I/flutter ( 6384): 'package:flutter/src/foundation/stack_frame.dart':
I/flutter ( 6384): Failed assertion: line 194 pos 7: 'line != '===== asynchronous gap ===========================''
How can I fix that?

Bad state: No ProviderScope found in flutter consumer component

When I add flutter consumer component in flutter like this:
SliverPadding(
padding: const EdgeInsets.symmetric(vertical: 8.0),
sliver: Consumer(
(context, read) {
return read(storiesTypeProvider(articleRequest)).when(
loading: () {
// return SliverFillRemaining(
// child: Center(child: CircularProgressIndicator()));
return SliverToBoxAdapter(child: Center(child: LoadingItem()));
},
error: (err, stack) {
print(err);
return SliverToBoxAdapter(
child: Center(child: Text('Error: $err')));
},
data: (ids) {
//return StoryList(ids: ids,storiesType: articleRequest.storiesType,);
},
);
},
),
)
shows this error:
flutter: [debug] Capture from onError 'package:flutter/src/widgets/nested_scroll_view.dart': Failed assertion: line 806 pos 14: 'position.hasContentDimensions && position.hasPixels': is not true.
flutter: [debug] Capture from onError 'package:flutter/src/widgets/nested_scroll_view.dart': Failed assertion: line 806 pos 14: 'position.hasContentDimensions && position.hasPixels': is not true.
======== Exception caught by widgets library =======================================================
The following StateError was thrown building RawGestureDetector-[LabeledGlobalKey<RawGestureDetectorState>#0ac5b](state: RawGestureDetectorState#734b4(gestures: <none>, behavior: opaque)):
Bad state: No ProviderScope found
The relevant error-causing widget was:
SmartRefresher file:///Users/dolphin/Documents/GitHub/cruise-open/lib/src/page/home/components/homelistdefault_component/view.dart:47:22
When the exception was thrown, this was the stack:
#0 ProviderStateOwnerScope.of (package:flutter_riverpod/src/framework.dart:216:7)
#1 _ConsumerState.didChangeDependencies (package:flutter_riverpod/src/consumer.dart:107:46)
#2 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4839:11)
#3 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4655:5)
... Normal element mounting (4 frames)
...
====================================================================================================
======== Exception caught by scheduler library =====================================================
'package:flutter/src/widgets/nested_scroll_view.dart': Failed assertion: line 806 pos 14: 'position.hasContentDimensions && position.hasPixels': is not true.
====================================================================================================
======== Exception caught by scheduler library =====================================================
'package:flutter/src/widgets/nested_scroll_view.dart': Failed assertion: line 806 pos 14: 'position.hasContentDimensions && position.hasPixels': is not true.
====================================================================================================
now I am using fish-redux to manage my flutter state, should I must using ProviderScope? what should I do to fix this problem? this is the storiesTypeProvider:
final storiesTypeProvider = FutureProvider.family((ref, type) async {
return await Repo.getArticles(type);
});
If you use flutter_riverpod.
You need to add ProviderScope to the main() function.
Like this:
void main() {
runApp(ProviderScope(child: MyApp()));
}

I/flutter ( 8131): ══╡ EXCEPTION CAUGHT BY WIDGETS LIBRARY - A non-null String must be provided to a Text widget

I got this error. How can i solve it???
Appreciate any help
I/flutter ( 8131): The following assertion was thrown building Answer(dirty):
I/flutter ( 8131): A non-null String must be provided to a Text widget.
I/flutter ( 8131): 'package:flutter/src/widgets/text.dart':
I/flutter ( 8131): Failed assertion: line 285 pos 10: 'data != null'
I/flutter ( 8131): Either the assertion indicates an error in the framework itself, or we should provide substantially
I/flutter ( 8131): more information in this error message to help you determine and fix the underlying cause.
I/flutter ( 8131): In either case, please report this assertion by filing a bug on GitHub:
When using Text widget, you need to provide some value.
Code like this will fail:
Text()
And code like this will pass:
Text('Some text')
Take a look inside your app where you forgot to put the value for Text widget.
If you are using variables, it might happen that value is null, and you didn't check for that.
Text(someValue == null ? '' : someValue)