gpt4 book ai didi

google-app-engine - 如何模拟 GMail API 的结果?

转载 作者:行者123 更新时间:2023-12-05 06:45:00 24 4
gpt4 key购买 nike

我们正在使用 GMail API 并在其上开发应用程序。理想情况下,我希望有一些黄金电子邮件来测试分析引擎。这样我就可以开发分析引擎,而不必担心获取电子邮件,因此无需网络连接。实现这一目标的最佳方法是什么?我注意到 App Engine(我们使用的)现在允许您模拟 DataStore/memcache 等并运行 nosetests,但我不知道如何在本地应用服务器重新启动时执行此操作。

最佳答案

googleapis/google-api-python-client提供的Mock类看起来很适合您的用例。

from googleapiclient.discovery import build
from googleapiclient.http import HttpMock

mock = HttpMock('mock-email-list.json', {'status': '200'})
gmail = build('gmail', 'v1', http=mock)
response = gmail.users().messages().list(userId='me').execute()
print(response)

mock-email-list.json 内容的格式为

{
"messages":[
{
"id":"abcd",
"threadId":"abcd"
},
{
"id":"efgh",
"threadId":"abcd"
},
],
"resultSizeEstimate":2
}

作为旁注,在您的测试运行后,您还可以检查模拟已用于什么 url(由 gmail 客户端):

assert mock.uri == 'https://gmail.googleapis.com/gmail/v1/users/me/messages?alt=json'

关于google-app-engine - 如何模拟 GMail API 的结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26847080/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com