当前位置: 首页 > 知识库问答 >
问题:

单元测试Expo Google登录在Expo React Native中使用Jest

司徒兴德
2023-03-14

我试图在expo react native中使用jest对下面的代码进行单元测试,但它会产生未定义的错误。下面是函数

import * as GoogleSignIn from 'expo-google-sign-in'

signInAsync = async () => {
  try {
    await GoogleSignIn.askForPlayServicesAsync()
    const result = await GoogleSignIn.signInAsync()
    return result
  } catch ({ message }) {
    return { type: 'failure', message }
  }
} 

错误在导入中突出显示。我确实理解,世博会谷歌登录在世博会客户端应用程序上不起作用,而是在一个独立的应用程序上起作用。同样的事情也适用于单元测试吗?我们可以嘲笑谷歌签名吗?

共有1个答案

仲孙奇
2023-03-14

我找到了一个很好的答案

describe('Google Services', () => {
  describe('signInAsync', () => {
    it('Calling on signInAsync', async () => {
      const response = await GoogleService.signInAsync()
      expect(response).toEqual({
        type: 'success',
        token: 'googleToken',
      })
    })
  })
 类似资料:
  • 问题内容: 我的意图是使用API中描述的JUnit方法来验证类中的一种方法。 但是Eclipse向我显示了无法识别这种方法的错误消息。这两个进口到位: 我错过了什么? 问题答案: 这应该适用于JUnit 4: (答案基于此Wiki文章) 这与旧的JUnit框架(JUnit 3)相同: 注意区别:没有注释,测试类是TestCase的子类(实现静态断言方法)。

  • 问题内容: 我正在为我的Flask Web应用程序编写一些单元测试,并且试图测试匿名用户发出的请求和登录用户之间的响应差异。 我正在使用扩展程序来实现用户登录/注销。 显然,我可以执行匿名请求,但是如何模拟已登录用户的请求? 我认为发送标头中的cookie 就足够了,但是它不起作用。 会话Cookie值是我从浏览器中的真实登录名获得的值。 问题答案: Flask-Login 在会话中寻找,你可以使

  • 问题内容: 我正在为Flask Web应用程序编写一些单元测试,并试图测试匿名用户发出的请求和登录用户之间的响应差异。 我正在使用扩展程序来实现用户登录/注销。 显然,我可以执行匿名请求,但是如何模拟已登录用户的请求? 我认为发送标头中的cookie就足够了,但是它不起作用。 会话cookie值是我从浏览器中的真实登录名获得的值。 我想念什么? 问题答案: Flask- Login在会话中寻找,您

  • 我试图使用mockito测试我的登录servlet,但它返回错误: java.lang.NullPointerException:无法调用“java.io.PrintWriter.PrintLN(String)”,因为“out”为null。在Control.LoginPatient.DoPost(LoginPatient.java:55)在Control.LoginPatientTest.Test

  • 那么为什么我不能像这样为它编写单元测试: 使用这种方法我会面临什么缺点?