单元测试扑火基地认证

时间:2020-09-26 22:47:36

标签: unit-testing flutter dart flutter-test

我试图将精力集中在dart / flutter的单元测试上,尽管我取得了良好的进展,但我还没有找到一个很好的例子来说明如何测试以下验证用户登录的代码。

>
/// Stream of [User] which will emit the current user when the
  /// authentication state changes.
  ///
  /// Emits [User.empty] if the user is not authenticated.
  Stream<User> get user {
    return _firebaseAuth.onAuthStateChanged.map((firebaseUser) {
      return firebaseUser == null ? User.empty : firebaseUser.toUser;
    });
  }

代码会在身份验证事件发生时将firebase用户映射到自定义User对象。我想要一个确保用户属性从不返回null的测试(即始终在流中返回User对象,即使是空的User也可以接受)。我在测试中模拟了_firebaseAuth对象,但是我不知道如何激发_firebaseAuth.onAuthStateChanged在单元测试中实际产生一个事件。谁能帮助我了解如何执行此操作,或者告诉我实现此操作的更好方法?谢谢。

0 个答案:

没有答案