如何 mock/create 用于测试的 Firebase Usercredentials 对象

How to mock/create a Firebase Usercredentials object for tests

如何在测试时创建 UserCredential 对象?

我正在尝试像这样测试我的 authRepository :

      test('', () async {
        when(
          () => mockFirebaseAuth.createUserWithEmailAndPassword(
              email: 'test@test.de', password: '123456'),
        ).thenAnswer((realInvocation) => ) // I need to return a Future<UserCredential> here);
    
        final result = await authRepository.signUpWithEmailAndPassword(
            email: 'test@test.de', password: '123456');
    
      });

但是为了存根 createUserWithEmailAndPassword 我需要 return Future<UserCredential>

如何创建这样的对象?

好的,我找到了可行的解决方案。结果我不得不像其他对象一样模拟它:

class MockUserCredential extends Mock implements UserCredential {}

要修改此模拟对象,将所需的 属性 打桩即可按预期工作:

mockCredential = MockUserCredential();
when(() => mockCredential.user).thenReturn(_mockUser);