【发布时间】:2017-10-25 15:50:16
【问题描述】:
我有一个连接到 Twitter REST 和流 API 的 Node 应用程序。为了测试向 REST API 发出请求的代码,我可以使用 Nock 拦截 HTTP 请求并返回模拟数据,如下所示:
var nock = require('nock')
var mockData = [...]
nock('https://api.twitter.com/1.1')
.get('/search/tweets.json')
.reply(200, mockData)
我的应用程序还连接到流式 API 端点 statuses/filter,并对通过流式 API 接收到的推文执行一些分析。 In Nock's README 它声明你可以将一个函数传递给 .query() 以返回一个流,但是我无法让它工作。
如何使用 Nock(或其他库,如有必要)将来自请求的模拟数据返回到此端点?理想情况下,我希望能够在需要时将推文发送到测试中的流,例如:
it('should correctly process tweets coming in on the streaming API', () => {
var mockTweet = {...}
sendMockTweetToStream(mockTweet)
...verify that the mock tweet was received and processed
})
【问题讨论】:
标签: javascript node.js twitter twitter-streaming-api nock