【问题标题】:Is there a Ruby WebMock equivalent for the Lua language?Lua 语言是否有 Ruby WebMock 等价物?
【发布时间】:2014-02-24 09:49:08
【问题描述】:

我正在编写一个 Lua 模块,用于向公共 API 发出请求:

--users.lua 本地 http = 要求(“socket.http”) 本地 base_url = 'http://example.com' 本地 api_key = "秘密" 本地用户 = {} 函数 users.info(user_id) 本地 request_url = base_url .. '/users/' .. user_id .. "?api_key=" .. api_key 打印(“请求” .. request_url) 本地响应 = http.request(request_url) 打印(“响应” ..响应) 返回响应 结尾 回头客

这可行,但我想使用 TDD 来完成整个 API 包装器的编写。

我有一个规范(使用 busted 框架)可以工作,但它向 API 发出了实际请求:

-- 规范/users_spec.lua package.path = "../?.lua;" .. 包路径 描述(“用户”,函数() it("应该获取用户信息", function() 本地用户 = 要求(“用户”) 本地 s = spy.on(用户,“信息”) users.info("chip0db4") assert.spy(users.info).was_call_with("chip0db4") 结尾) 结尾)

我如何模拟这个,就像WebMock 在 Ruby 中的工作方式一样,实际端点没有被联系? 解决方案不需要特定于被破坏的框架,顺便说一句.

【问题讨论】:

    标签: api lua mocking webmock lua-busted


    【解决方案1】:

    在收到来自https://github.com/TannerRogalsky 的一些优秀反馈后,如https://gist.github.com/TannerRogalsky/b56bc886811f8f0a9d2a 所示,我决定为http 请求编写自己的模拟库:https://github.com/chip/webmock。它处于非常早期的阶段,但至少是一个开始。我将不胜感激对 repo 的贡献或对其他可用方法或 Lua 模块的建议。

    【讨论】:

      猜你喜欢
      • 2019-03-11
      • 2011-02-21
      • 1970-01-01
      • 2014-03-08
      • 1970-01-01
      • 1970-01-01
      • 2010-12-04
      • 2012-05-20
      • 2012-05-12
      相关资源
      最近更新 更多