パブリック API へのリクエストを作成するために書いている Lua モジュールがあります。
-- users.lua
local http = require("socket.http")
local base_url = 'http://example.com'
local api_key = "秘密"
ローカル ユーザー = {}
関数 users.info(user_id)
local request_url = base_url .. '/users/' .. user_id .. "?api_key=" .. api_key
print("リクエスト中" .. request_url)
ローカル応答 = http.request(request_url)
print("応答" ..応答)
応答を返す
終わり
ユーザーを返す
これは機能しますが、TDD を使用して API ラッパー全体の作成を完了したいと考えています。
動作する仕様 (壊れたフレームワークを使用) がありますが、API に対して実際の要求を行います。
-- spec/users_spec.lua
package.path = "../?.lua;" .. パッケージパス
describe("ユーザー", function()
it("ユーザー情報を取得する必要があります", function()
ローカル ユーザー = 必須 ("ユーザー")
ローカル s = spy.on(ユーザー、「情報」)
users.info("chip0db4")
assert.spy(users.info).was_called_with("chip0db4")
終わり)
終わり)
実際のエンドポイントに接続されていない Ruby でWebMockが動作するのと同じように、これをモック化するにはどうすればよいですか? 解決策は、壊れたフレームワークに固有のものである必要はありません。