ruby-on-rails 创建活动存储映像变体装置

ybzsozfc  于 2023-03-09  发布在  Ruby
关注(0)|答案(1)|浏览(128)

为活动存储映像附件创建测试装置非常费力,但却是可行的:
https://stackoverflow.com/a/55835955/312681
如果您在测试中使用原始图像,这是非常好的,但在我们的示例中,我们使用variants来提供优化版本。
我想为图像variant创建测试夹具,而不是原始文件,这样变体就已经存在,而不是由第一次请求创建的。有什么想法吗?

csbfibhn

csbfibhn1#

所以我也被这个问题绊倒了几个小时,以为这个问题是minitest的一个功能没有正确地stubping activesupport附件,然而,经过进一步的调查,我意识到这个问题源于我没有正确地设置我的fixture。
帮助我认识到测试变体是我的blob没有附加的一个症状的一个关键因素是,当我运行[model].[attachment].attached?时,它将返回false。
下面的SO帖子让我走上了自由之路:Rails 7 ActiveStorage file attachment fixture does not like to attachment
在我的例子中,我没有正确设置我的attachments.yml。结果,Blob#variantsnil值调用,测试以失败告终。只是为了重复链接的SO帖子所说的,当设置您的attachments.yml时,以下配置必须为真:
1.名称必须与附件在模型中的调用方式匹配
1.记录必须与现有模型夹具匹配

  1. Blob必须与现有Blob夹具匹配
    一旦我的attachments.yml文件配置正确,对Blob#variant的调用就顺利通过了。

相关问题