@@ -126,7 +126,7 @@ public void itUnregistersOnBackInvokedCallbackOnRelease() {
126
126
}
127
127
128
128
@ Test
129
- @ Config (maxSdk = Build .VERSION_CODES .S_V2 )
129
+ @ Config (sdk = Build .VERSION_CODES .S_V2 )
130
130
public void onBackInvokedCallbackIsNullForSdk32OrLower () {
131
131
Intent intent = FlutterActivity .createDefaultIntent (ctx );
132
132
ActivityController <FlutterActivity > activityController =
@@ -137,58 +137,65 @@ public void onBackInvokedCallbackIsNullForSdk32OrLower() {
137
137
138
138
assertNull (
139
139
"onBackInvokedCallback should be null for SDK 32 or lower" ,
140
- flutterActivity .onBackInvokedCallback );
140
+ flutterActivity .getOnBackInvokedCallback () );
141
141
}
142
142
143
143
@ Test
144
144
@ Config (sdk = Build .VERSION_CODES .TIRAMISU )
145
145
@ TargetApi (Build .VERSION_CODES .TIRAMISU )
146
146
public void onBackInvokedCallbackCallsOnBackPressedForSdk33 () {
147
- Intent intent = FlutterActivityWithReportFullyDrawn .createDefaultIntent (ctx );
148
- ActivityController <FlutterActivityWithReportFullyDrawn > activityController =
149
- Robolectric .buildActivity (FlutterActivityWithReportFullyDrawn .class , intent );
150
- FlutterActivityWithReportFullyDrawn activity = spy ( activityController .get () );
147
+ Intent intent = FlutterActivity .createDefaultIntent (ctx );
148
+ ActivityController <FlutterActivity > activityController =
149
+ Robolectric .buildActivity (FlutterActivity .class , intent );
150
+ FlutterActivity activity = activityController .get ();
151
151
152
152
activity .onCreate (null );
153
153
154
+ OnBackInvokedCallback callback = activity .getOnBackInvokedCallback ();
154
155
assertNotNull (
155
- "onBackInvokedCallback should not be null for SDK 33" , activity .onBackInvokedCallback );
156
+ "onBackInvokedCallback should not be null for SDK 33, actual:"
157
+ + (callback != null ? callback .getClass ().getName () : "null" ),
158
+ callback );
156
159
157
- OnBackInvokedCallback callback = activity . onBackInvokedCallback ;
160
+ FlutterActivity spyActivity = spy ( activity ) ;
158
161
159
162
callback .onBackInvoked ();
160
- verify (activity , times (1 )).onBackPressed ();
163
+ verify (spyActivity , times (1 )).onBackPressed ();
161
164
}
162
165
163
166
@ Test
164
167
@ Config (sdk = Build .VERSION_CODES .UPSIDE_DOWN_CAKE )
165
168
@ TargetApi (Build .VERSION_CODES .UPSIDE_DOWN_CAKE )
166
169
public void itHandlesOnBackAnimationCallbackAsExpectedForSdk34OrHigher () {
167
- Intent intent = FlutterActivityWithReportFullyDrawn .createDefaultIntent (ctx );
168
- ActivityController <FlutterActivityWithReportFullyDrawn > activityController =
169
- Robolectric .buildActivity (FlutterActivityWithReportFullyDrawn .class , intent );
170
- FlutterActivityWithReportFullyDrawn activity = spy (activityController .get ());
170
+ Intent intent = FlutterActivity .createDefaultIntent (ctx );
171
+ ActivityController <FlutterActivity > activityController =
172
+ Robolectric .buildActivity (FlutterActivity .class , intent );
173
+ FlutterActivity activity = spy (activityController .get ());
171
174
172
175
activity .onCreate (null );
173
176
177
+ OnBackInvokedCallback callback = activity .getOnBackInvokedCallback ();
178
+
174
179
assertTrue (
175
- "onBackInvokedCallback should be an instance of OnBackAnimationCallback for SDK 34 or higher" ,
176
- activity .onBackInvokedCallback instanceof OnBackAnimationCallback );
180
+ "onBackInvokedCallback should be an instance of OnBackAnimationCallback for SDK 34 or higher, actual:"
181
+ + (callback != null ? callback .getClass ().getName () : "null" ),
182
+ callback instanceof OnBackAnimationCallback );
177
183
178
- OnBackAnimationCallback callback = (OnBackAnimationCallback ) activity .onBackInvokedCallback ;
184
+ OnBackAnimationCallback aCallback = (OnBackAnimationCallback ) callback ;
185
+ FlutterActivity spyActivity = spy (activity );
179
186
180
187
BackEvent mockBackEvent = mock (BackEvent .class );
181
- callback .onBackStarted (mockBackEvent );
182
- verify (activity , times (1 )).startBackGesture (mockBackEvent );
188
+ aCallback .onBackStarted (mockBackEvent );
189
+ verify (spyActivity , times (1 )).startBackGesture (mockBackEvent );
183
190
184
- callback .onBackProgressed (mockBackEvent );
185
- verify (activity , times (1 )).updateBackGestureProgress (mockBackEvent );
191
+ aCallback .onBackProgressed (mockBackEvent );
192
+ verify (spyActivity , times (1 )).updateBackGestureProgress (mockBackEvent );
186
193
187
- callback .onBackInvoked ();
188
- verify (activity , times (1 )).commitBackGesture ();
194
+ aCallback .onBackInvoked ();
195
+ verify (spyActivity , times (1 )).commitBackGesture ();
189
196
190
- callback .onBackCancelled ();
191
- verify (activity , times (1 )).cancelBackGesture ();
197
+ aCallback .onBackCancelled ();
198
+ verify (spyActivity , times (1 )).cancelBackGesture ();
192
199
}
193
200
194
201
@ Test
0 commit comments