3030import com .firebase .ui .auth .util .ExtraConstants ;
3131import com .firebase .ui .auth .util .data .ProviderUtils ;
3232import com .google .android .gms .auth .api .credentials .Credential ;
33- import com .google .android .gms .tasks .Tasks ;
3433import com .google .firebase .FirebaseApp ;
3534import com .google .firebase .FirebaseOptions ;
3635import com .google .firebase .auth .EmailAuthProvider ;
3736import com .google .firebase .auth .FacebookAuthProvider ;
38- import com .google .firebase .auth .FirebaseAuth ;
3937import com .google .firebase .auth .FirebaseUser ;
4038import com .google .firebase .auth .GoogleAuthProvider ;
4139import com .google .firebase .auth .PhoneAuthProvider ;
4644import org .robolectric .Shadows ;
4745import org .robolectric .shadows .ShadowActivity ;
4846
49- import java .lang .reflect .Field ;
50- import java .lang .reflect .ParameterizedType ;
51- import java .lang .reflect .Type ;
5247import java .util .ArrayList ;
5348import java .util .Collection ;
5449import java .util .List ;
55- import java .util .Map ;
5650
5751import static junit .framework .Assert .assertEquals ;
58- import static org .mockito .ArgumentMatchers .anyString ;
5952import static org .mockito .Mockito .mock ;
6053import static org .mockito .Mockito .spy ;
6154import static org .mockito .Mockito .when ;
@@ -67,8 +60,7 @@ public class TestHelper {
6760 public static void initialize () {
6861 spyContextAndResources ();
6962 AuthUI .setApplicationContext (RuntimeEnvironment .application );
70- FirebaseApp app = initializeApp (RuntimeEnvironment .application );
71- injectMockFirebaseAuth (app );
63+ initializeApp (RuntimeEnvironment .application );
7264 initializeProviders ();
7365 }
7466
@@ -94,47 +86,6 @@ private static FirebaseApp initializeApp(Context context) {
9486 }
9587 }
9688
97- /**
98- * This method finds the map of FirebaseAuth instances and injects of a mock instance associated
99- * with the given FirebaseApp for testing purposes.
100- */
101- private static void injectMockFirebaseAuth (FirebaseApp app ) {
102- for (Field field : FirebaseAuth .class .getDeclaredFields ()) {
103- field .setAccessible (true );
104-
105- Object o ;
106- try {
107- o = field .get (null );
108- } catch (IllegalAccessException e ) {
109- throw new IllegalStateException (e );
110- } catch (NullPointerException e ) {
111- continue ;
112- }
113-
114- Type genericType = field .getGenericType ();
115- if (o instanceof Map && genericType instanceof ParameterizedType ) {
116- Type [] parameterTypes = ((ParameterizedType ) genericType ).getActualTypeArguments ();
117- if (parameterTypes .length != 2 || parameterTypes [0 ] != String .class
118- || parameterTypes [1 ] != FirebaseAuth .class ) {
119- continue ;
120- }
121-
122- //noinspection unchecked
123- Map <String , FirebaseAuth > instances = (Map <String , FirebaseAuth >) o ;
124-
125- FirebaseAuth .getInstance (app );
126- for (String id : instances .keySet ()) {
127- instances .put (id , mock (FirebaseAuth .class ));
128- }
129-
130- break ;
131- }
132- }
133-
134- when (FirebaseAuth .getInstance (app ).setFirebaseUIVersion (anyString ()))
135- .thenReturn (Tasks .<Void >forResult (null ));
136- }
137-
13889 private static void initializeProviders () {
13990 Context context = RuntimeEnvironment .application ;
14091 when (context .getString (R .string .default_web_client_id )).thenReturn ("abc" );
0 commit comments