gpt4 book ai didi

ruby - 如何测试 Rack 中间件的请求(不是响应)?

转载 作者:太空宇宙 更新时间:2023-11-03 17:54:17 25 4
gpt4 key购买 nike

我可以看到如何测试 Rack 中间件的响应,但是如何测试请求

也就是说,如何测试中间件何时更改应用程序的请求?

使用 RSpec 和 Sinatra。

最佳答案

我猜你的意思是测试它是否正在改变环境......

中间件是这样的:

class Foo
def initialize(app)
@app = app
end

def call(env)
# do stuff with env ...
status, headers, response = @app.call(env)

# do stuff with status, headers and response
[status, headers, response]
end
end

您可以使用伪造的应用程序(或 lambda,就此而言)对其进行初始化,该应用程序在进行一些测试后返回虚拟响应:

class FooTester
attr_accessor :env

def call(env)
# check that env == @env and whatever else you need here
[200, {}, '']
end
end

关于ruby - 如何测试 Rack 中间件的请求(不是响应)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17355420/

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