2013-03-28 91 views
0

我已经创建了几个工厂,并为我的一个项目的rspec创建了一些示例。我已经掌握了我在当地的一切工作。甚至,我的规格在本地都是绿色版本,分别是1.9.2和1.9.3。我只是不明白为什么Travis-ci不能构建相同的提交。无法确定我的工厂与rspec工厂女孩问题

这里是链接到特拉维斯-CI的建立:

招聘#1(建立64):https://travis-ci.org/suryart/spree_active_sale/builds/5850619

招聘#2(构建65):https://travis-ci.org/suryart/spree_active_sale/builds/5850754

原因,我觉得这不可思议是因为build 64未能针对1.9.2的ruby版本运行规格,而通过1.9.3。然而,build 65未能针对1.9.3的ruby版本运行规格,并通过1.9.2。对于这两个版本,代码完全没有变化。

然而,对于构建这些失败抛出了同样的错误:

/home/travis/.rvm/gems/ruby-1.9.2-p320/gems/factory_girl-4.2.0/lib/factory_girl/registry.rb:24:in `find': Factory not registered: active_sale (ArgumentError) 
from /home/travis/.rvm/gems/ruby-1.9.2-p320/gems/factory_girl-4.2.0/lib/factory_girl/decorator.rb:10:in `method_missing' 

因为,该代码很长。我将从github上的提交中引用它。

规格/工厂/ active_sale_factories.rb:https://github.com/suryart/spree_active_sale/blob/43cb160d0e4ea1ad694af3f1d848c22a3193cc2a/spec/factories/active_sale_factories.rb

规格/工厂/ inactive_sale_factories.rb:https://github.com/suryart/spree_active_sale/blob/43cb160d0e4ea1ad694af3f1d848c22a3193cc2a/spec/factories/inactive_sale_factories.rb

我所知道的,问题是从这一行active_sale_factories.rb第5行来:

factory :active_sale, :class => Spree::ActiveSale do |f| 
    name "Dummy Sale" 
end 

它无法从inactive_sale_factories.rb定义的工厂中确定。

我是rspec和工厂的新手,第一次这样做。如果你能解释这种行为,或者指出我在这里做错了什么,将会非常感激。或者也许可以帮助我解决这个问题?

感谢

回答

0

没关系,我整理出来的两个工厂合并到同一个文件,而不是活动和非活动的销售单独的文件。