如何为Firebase Firestore创建DocumentSnapshots以进行测试?

时间:2018-12-17 13:29:28

标签: ios swift firebase google-cloud-firestore

我正在迅速编写一个iOS应用程序,我需要测试我的Promise链。应用程序中的部分逻辑取决于Firestore是否从调用中返回有效的DocumentSnapshot。如果文档有效,则转到主屏幕,否则创建新的用户流。

我无法直接实例化DocumentSnapshot或继承并覆盖它,我还能做什么?作为最后的选择,我可以只在其依赖项中注入一些东西进行测试,但我想首先在这里提出。

无论如何我都可以自己实例化DocumentSnapshot对象?

1 个答案:

答案 0 :(得分:0)

@IBAction func loginTapped(_ sender: Any) { guard let emailsignin = emailSignIn?.text!.trimmingCharacters(in: .whitespacesAndNewlines), let passwordsignin = passwordSignIn?.text!.trimmingCharacters(in: .whitespacesAndNewlines) else { return } Auth.auth().signIn(withEmail: emailsignin, password: passwordsignin) { (user, error) in if error != nil { self.errorLabel3.text = "Invalid username or password" self.errorLabel3.alpha = 1 } else { self.transitionToHome() } } } 库满足了您的需求,并在Firebase文档的“单元测试功能”部分中进行了记录: https://firebase.google.com/docs/functions/unit-testing#constructing_test_data