问题标签 [fabrication-gem]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
561 浏览

ruby-on-rails - 如何使用 Fabricator-gem 设置多态关系?

我正在尝试设置 fabricator-gem 来处理我的模型进行测试。我遇到的问题是它似乎无法处理多态关系。我使用 MongoDB 作为我的数据库,使用 Mongoid 作为我的 ORM。考虑这个例子:

使用此代码,您可以将 Image 文档嵌入到许多不同类型的文档中,因为您设置了polymorphic: true. 这在使用fabricator时是个问题,因为你想做这样的事情:

但是 Fabricator-gem 自动假定必须有一个名为 Photo 的类。因此,当您运行测试时,会引发以下错误:

我如何告诉 Fabricator 这是一个多态关联?

编辑:这里的堆栈跟踪:

0 投票
2 回答
1936 浏览

ruby - How to define Fabricator for namespace class

I want to define Fabricator for class has namespace like 'Foo::Bar'.
Tell me the way it can work.

Here my codes.

models/foo.rb

models/foo/bar.rb

data/fabricators/foo_bar_fabricator.rb

When I tried to create Fabricatior object on parino console but error occurred.

When I tried to create other Fabricator object wasn't namespace class like 'User', it went right.

0 投票
2 回答
974 浏览

rspec - 使用 RSpec Request Spec 和 Capybara 设计身份验证在测试环境中不起作用

我一直试图让我的请求规范工作。我尝试了许多通过 Google 和 SO 找到的不同方法。以下是我在请求规范中单独尝试过的以下助手:

我在#login下面的请求规范中分别尝试了上述两种方法:

测试将通过,但 root_path 不显示登录用户的登录页面。它显示了公共登录页面。我尝试使用 binding.pry 进行调试并尝试在测试环境中手动登录,但我不断收到“无效的电子邮件或密码”错误。我检查了很多次,但我一直在使用 Fabricated company_admin 的正确电子邮件和密码。

我也尝试过这里提出的解决方案:https ://github.com/plataformatec/devise/wiki/How-To:-Test-with-Capybara

任何帮助将不胜感激。不确定问题出在哪里。是 Fabrication gem、Devise、RSpec 还是 Capybara?

0 投票
1 回答
250 浏览

ruby-on-rails - 特征步骤中的随机数据生成

我使用菠菜 gem 来创建功能步骤。上面的代码标识了我的功能步骤。我还使用 minitest 测试框架。我使用制造商 gem 来创建随机数据。

这是我的身份模型制造者类。当我运行注册功能时,我看到一个错误:

我认为这是关于 Fabricate.Attributes_for 的。如果我使用 Fabricate :identity,它不会给出错误。

我无法解决这个问题。有任何想法吗?提前致谢。

0 投票
1 回答
721 浏览

ruby-on-rails - 如何使用需要参数的构造函数为 mongo 模型制作对象

我有一堂课

现在我正在尝试组合一个Fabricator

我已经创建了Fabricator(:klassA)并且Fabricator(:klassB)工作得很好。

我不断收到此错误消息:

NoMethodError: undefined method `[]' for #<Fabrication::Schematic::Attribute:0x007f9361b59950>

我相当肯定它与初始化方法有关。如果我删除它的构造函数。

Mongo 版本 2.4.1 制造 (2.6.4) 轨道 (3.2.11)

0 投票
2 回答
1511 浏览

ruby-on-rails-3.2 - 使用 rspec 测试acts_as_tenant

我有一个使用 ascts_as_tenant 的多租户应用程序。我正在尝试编写一个测试范围的规范。所以我想测试一下User.active的输出。

一般来说,这适用于以下代码

但是,我不知道如何让它使用acts_as_tenant 功能来使用current_tenant 并因此验证它只列出来自一个租户的活动用户。我确信这已经完成了,但我还没有找到任何关于它的文档。

因此,如何使用 rspec 测试acts_as_tenant 用户模型?

0 投票
1 回答
36 浏览

rspec - 这个模型规范在讨论测试套件中是如何工作的

我正在查看这里的话语源代码https://github.com/discourse/discourse/blob/master/spec/models/invite_spec.rb并查看如下代码:

需要'spec_helper'

我不熟悉他们在哪里获得价值it。似乎他们在这里有一个隐式对象,但我看不到他们在哪里创建它 - 这应该在 before 钩子中吗?他们使用的是 Fabricator 而不是 FactoryGirl - 有人可以告诉我这些是如何通过的吗?

0 投票
1 回答
419 浏览

ruby-on-rails - 使用 Fabricator & let(...) 格式的 Rspec 模型测试。控制台在数据库中没有显示数据,但有。

我不明白为什么在它没有通过测试后第一次在控制台中输入“Video.all”时它返回空,但是如果我将它们指定为“video”和“video2”,然后我输入“Video.all”。全部”它正确返回 2 个视频。有谁知道为什么这不起作用?

应用程序/模型/video.rb

我的模型测试:

规格/模型/video_spec.rb

撬动的结果

0 投票
1 回答
1559 浏览

ruby-on-rails-3.2 - 具有关联未定义方法错误的制造宝石

我已经开始使用带有 RSpec 的 Fabrication gem 并且总体上取得了巨大的成功。但是,我似乎无法让关联制造工作。

我正在使用 Ruby 1.9.3、Rails 3.2.12、RSPec 2.13.0 和 Fabrication 2.7.0

楷模

制造商

在这一点上,我可以独立制造这两个模型中的任何一个。但我想同时构建它们来测试所有模型代码

我有以下测试

但是,我收到以下错误

这是以前见过的东西,还是我做错了什么?

迈克尔

0 投票
2 回答
178 浏览

ruby-on-rails - Rails 工厂协会失败

我整天都在和这个作斗争。Fabrication 或 FactoryGirl 的问题是一样的,所以我想这与 Active Record 或 Rails 有关。

让我们看下面的代码:

每次运行规范时,我都会收到以下错误:

看起来关联设置不正确。To sql 查询是“categories”.“company”而不是“categories”.“company_id”。这太奇怪了。

谢谢你的帮助!