@@ -14,18 +14,23 @@ void main() {
1414
1515 test ('does not throw when state is null' , () async {
1616 expect (
17- () => FlowBuilder (onGeneratePages: (dynamic __) => [], state: null ),
17+ () => FlowBuilder (
18+ onGeneratePages: (dynamic _, List <Page > __) => [],
19+ state: null ,
20+ ),
1821 isNot (throwsAssertionError),
1922 );
2023 });
2124
2225 testWidgets ('renders correct navigation stack w/one page' , (tester) async {
2326 const targetKey = Key ('__target__' );
27+ var lastPages = < Page > [];
2428 await tester.pumpWidget (
2529 MaterialApp (
2630 home: FlowBuilder <int >(
2731 state: 0 ,
28- onGeneratePages: (state) {
32+ onGeneratePages: (state, pages) {
33+ lastPages = pages;
2934 return const < Page > [
3035 MaterialPage <void >(child: SizedBox (key: targetKey)),
3136 ];
@@ -34,6 +39,7 @@ void main() {
3439 ),
3540 );
3641 expect (find.byKey (targetKey), findsOneWidget);
42+ expect (lastPages, isEmpty);
3743 });
3844
3945 testWidgets ('renders correct navigation stack w/multi-page' ,
@@ -44,7 +50,7 @@ void main() {
4450 MaterialApp (
4551 home: FlowBuilder <int >(
4652 state: 0 ,
47- onGeneratePages: (state) {
53+ onGeneratePages: (state, pages ) {
4854 return const < Page > [
4955 MaterialPage <void >(child: SizedBox (key: box1Key)),
5056 MaterialPage <void >(child: SizedBox (key: box2Key)),
@@ -65,7 +71,7 @@ void main() {
6571 MaterialApp (
6672 home: FlowBuilder <int >(
6773 state: 0 ,
68- onGeneratePages: (state) {
74+ onGeneratePages: (state, pages ) {
6975 return < Page > [
7076 const MaterialPage <void >(child: SizedBox (key: box1Key)),
7177 if (state >= 1 )
@@ -83,12 +89,14 @@ void main() {
8389 const buttonKey = Key ('__button__' );
8490 const boxKey = Key ('__box__' );
8591 var numBuilds = 0 ;
92+ var lastPages = < Page > [];
8693 await tester.pumpWidget (
8794 MaterialApp (
8895 home: FlowBuilder <int >(
8996 state: 0 ,
90- onGeneratePages: (state) {
97+ onGeneratePages: (state, pages ) {
9198 numBuilds++ ;
99+ lastPages = pages;
92100 return < Page > [
93101 MaterialPage <void >(
94102 child: Builder (
@@ -109,13 +117,15 @@ void main() {
109117 expect (numBuilds, 1 );
110118 expect (find.byKey (buttonKey), findsOneWidget);
111119 expect (find.byKey (boxKey), findsNothing);
120+ expect (lastPages, isEmpty);
112121
113122 await tester.tap (find.byKey (buttonKey));
114123 await tester.pumpAndSettle ();
115124
116125 expect (numBuilds, 2 );
117126 expect (find.byKey (buttonKey), findsNothing);
118127 expect (find.byKey (boxKey), findsOneWidget);
128+ expect (lastPages.length, equals (1 ));
119129 });
120130
121131 testWidgets ('complete terminates the flow' , (tester) async {
@@ -135,7 +145,7 @@ void main() {
135145 MaterialPageRoute <int >(
136146 builder: (_) => FlowBuilder <int >(
137147 state: 0 ,
138- onGeneratePages: (state) {
148+ onGeneratePages: (state, pages ) {
139149 numBuilds++ ;
140150 return < Page > [
141151 MaterialPage <void >(
@@ -196,7 +206,7 @@ void main() {
196206 MaterialPageRoute <int >(
197207 builder: (_) => FlowBuilder <int >(
198208 state: 0 ,
199- onGeneratePages: (state) {
209+ onGeneratePages: (state, pages ) {
200210 numBuilds++ ;
201211 return < Page > [
202212 MaterialPage <void >(
@@ -246,7 +256,7 @@ void main() {
246256 MaterialApp (
247257 home: FlowBuilder <int >(
248258 state: 0 ,
249- onGeneratePages: (state) {
259+ onGeneratePages: (state, pages ) {
250260 numBuilds++ ;
251261 return < Page > [
252262 MaterialPage <void >(
@@ -301,7 +311,7 @@ void main() {
301311 MaterialApp (
302312 home: FlowBuilder <int >(
303313 state: 0 ,
304- onGeneratePages: (state) {
314+ onGeneratePages: (state, pages ) {
305315 numBuilds++ ;
306316 return < Page > [
307317 MaterialPage <void >(
@@ -362,7 +372,7 @@ void main() {
362372 MaterialApp (
363373 home: FlowBuilder <int >(
364374 state: 0 ,
365- onGeneratePages: (state) {
375+ onGeneratePages: (state, pages ) {
366376 numBuilds++ ;
367377 return < Page > [
368378 MaterialPage <void >(
@@ -423,7 +433,7 @@ void main() {
423433 MaterialApp (
424434 home: FlowBuilder <int >(
425435 state: 0 ,
426- onGeneratePages: (state) {
436+ onGeneratePages: (state, pages ) {
427437 return < Page > [
428438 MaterialPage <void >(
429439 child: Scaffold (
@@ -470,7 +480,7 @@ void main() {
470480 MaterialApp (
471481 home: FlowBuilder <int >(
472482 state: 0 ,
473- onGeneratePages: (state) {
483+ onGeneratePages: (state, pages ) {
474484 return < Page > [
475485 MaterialPage <void >(
476486 child: Scaffold (
@@ -503,7 +513,7 @@ void main() {
503513 builder: (context, setState) {
504514 return FlowBuilder <int >(
505515 state: flowState,
506- onGeneratePages: (state) {
516+ onGeneratePages: (state, pages ) {
507517 numBuilds++ ;
508518 return < Page > [
509519 MaterialPage <void >(
0 commit comments