gpt4 book ai didi

ruby-on-rails - 如何在 Rails 测试中设置 request_id

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

我有一些依赖于 request_id 设置的代码,但是在 RSpec 3.8 和 Rails 5.1 中测试时 request_id 没有设置。它适用于开发和生产。

我已经尝试在规范文件中手动设置 X-Request-Id header ,但它不起作用。

我不确定是测试环境的Rails问题还是RSpec引起的。

在我的规范中:

request.headers.add('X-Request-Id', SecureRandom.uuid)
patch model_update_path(model), params: { model: { attr: 'changed' }}
... # actual tests

在我的 Controller 中

...
def update
logger.info "Request Id: #{request.request_id}"
logger.info "X-Request-Id: #{request.header['X-Request-Id']}"
... # actual logic
end
...

第一行不记录任何内容,而第二行记录随机 uuid。

我希望 request.request_id 方法为测试环境中的每个请求返回一个唯一的 uuid。

最佳答案

试试这个:

patch model_update_path(model), { params: { model: { attr: 'changed' }, 'X-Request-Id' => SecureRandom.uuid }

关于ruby-on-rails - 如何在 Rails 测试中设置 request_id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57199765/

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