2017-07-11 6 views
1

私の仕様はうまく動作しており、その検証ではsome_arrayにアクセスできますが、some_arrayの検証ではアクセスできないために失敗します。配列をテストするために何か特別なことはありますか?Rspecを使用してRailsでアレイの存在を検証する方法は?

モデル

validates_presence_of :login, :some_array 

RSpecの

it { should validate_presence_of(:login) } 
    it { should validate_presence_of(:some_array) } 
+0

これは、上に行くために十分な情報ではありません。モデルコードと仕様ファイル(明確に関係のない部分は除く)を投稿できますか? –

答えて

0

ないので、上に行くために多くの情報を...あなたが考えるに必要なもの

は、配列がセットになっている方法です最初は? それらのそれぞれで、{}がブロックされ、新しいWhateverModelが作成されます。

作成時にWhatever.some_arrayが入力されていますか?

it { expect(WhateverModel.some_array).to_not eq([]) } 
it { expect(WhateverModel.some_array).to be } 

it { expect(WhateverModel.some_array).to be_kind_of Array } 

あなたの「アレイ」はモデル関係のいくつかの種類である場合は、そのために他の照合プログラムがあります。

はあなたがドキュメントで何より便利に表示される場合がありますマッチャーのトンがあります。https://relishapp.com/rspec/rspec-expectations/docs/built-in-matchers

関連する問題