通过带有Angular的模拟器进行Firebase身份验证单元测试

问题描述

我一直在尝试对项目中每个可测试的代码进行单元测试,最近我发现Firebase在其仿真套件中添加了Authentication。我现在正在开发一个Angular / Nativescript项目,并且正在使用Firestore模拟器运行数据库测试,并将其作为测试环境的一部分,我很喜欢它。事情是,首先要使它生效需要一些麻烦。

基本上,我只是用两个必需的Firebase模块配置Testbed并提供了一个SETTINGS对象,该对象告诉AngularFirestoreModule以仿真器而不是生产数据库为目标。看起来像这样:

Testbed.configureTestingModule({
    imports:[
        AngularFireModule.initializeApp(environment.firebaseConfig),AngularFirestoreModule
    ],providers: [
        //this is what I'm unit testing
        { provide: Database,useClass: FirebaseDatabase },//this is the object I provide to my testing environment
        { provide: SETTINGS,useValue: { host: 'localhost:8080',ssl: false } }  
    ]
});

到目前为止一切顺利。问题是当我尝试将相同的概念应用于身份验证时。遍历AngularFireAuth代码似乎似乎需要注入与AngularFirestore模块几乎相同的东西,除了SETTINGS。我需要在Testbed中提供什么以定位身份验证模拟器?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...