色々試してみたけど、こうすればいいみたい。
ポイントは7行目の *params と 9行目の *args かな。
2012/10/15
define_method で可変長引数のメソッドを定義する
投稿者
pinzolo
時刻:
21:55
0 件のコメント
:
http://pinzolog.blogspot.com/2012/10/definemethod.htmldefine_method で可変長引数のメソッドを定義する
ラベル:
ruby
2012/10/12
RSpec で undefined method `fixtures'
RSpec で fixtures が動かない
rspec でテストデータを用意して、fixtures メソッドを使用したら、そんなメソッドねーよ。と言われた。
/Users/pinzolo/projects/mastar/spec/mastar/name_value_pair_spec.rb:30:in `block (2 levels) in <top (required)>': undefined method `fixtures' for #<Class:0x007faa888623a8> (NoMethodError)
from /Users/pinzolo/projects/mastar/vendor/bundle/ruby/1.9.1/gems/rspec-core-2.11.1/lib/rspec/core/example_group.rb:238:in `module_eval'
from /Users/pinzolo/projects/mastar/vendor/bundle/ruby/1.9.1/gems/rspec-core-2.11.1/lib/rspec/core/example_group.rb:238:in `subclass'
...
TestFixtures を include してみる
spec_helper.rb に下記を追加してみる。
require 'rspec'
RSpec.configure do |config|
config.include ActiveRecord::TestFixtures
end
実行してみる。
/Users/pinzolo/projects/mastar/vendor/bundle/ruby/1.9.1/gems/activerecord-3.2.8/lib/active_record/fixtures.rb:728:in `block in <module:TestFixtures>': undefined method `setup' for #<Class:0x007fb3c20527d8> (NoMethodError)
from /Users/pinzolo/projects/mastar/vendor/bundle/ruby/1.9.1/gems/activesupport-3.2.8/lib/active_support/concern.rb:119:in `class_eval'
from /Users/pinzolo/projects/mastar/vendor/bundle/ruby/1.9.1/gems/activesupport-3.2.8/lib/active_support/concern.rb:119:in `append_features'
...
こんどは setup がないと。
調べてみると
https://github.com/rspec/rspec-rails/blob/master/lib/rspec/rails/fixture_support.rbを見ると RSpec::Rails::FixtureSupport を include していて、その時に各種設定メソッドが追加されている。
結局
rspec-rails をインストールしないと fixtures は使えないのか。
できれば、関連 gem を増やしたくないので、他の手段を考えよう。
factory-girl がいいのかな。
投稿者
pinzolo
時刻:
11:17
0 件のコメント
:
http://pinzolog.blogspot.com/2012/10/rspec-undefined-method-fixtures.htmlRSpec で undefined method `fixtures'
登録:
投稿
(
Atom
)