2017-01-23 3 views
0

minitestフレームワーク内のインスタンスレベルで定義された続編モデルの検証をテストする簡単な方法を知っている人はいますか?インスタンスレベルのテスト方法Sequel ::モデルの検証(minitestを使用)

背景:

は私がsquliteデータベースとシナトラや続編を使用してWebアプリケーションを開発しています。 web-appはまだまだ大きな変化を遂げているはるかに大きな開発プロジェクトの一部なので、すべてのことが継続的な開発フローです。そのため、私はデータ構造の中でかなり定期的に「ポーク」しなければならないので、テストに大いに依存しています。テストフレームワークとして、私は仕様ファイルでminitestを使用しています。

今私は小さな問題に遭遇します。 Sequel :: Model検証をminitestでテストしたい。私はSequel :: Modelのvalidation_helperプラグインを使用しています。これはインスタンスレベルでの検証を生成します。私の問題は、私が見つけたバリデーションをテストする唯一の方法(例えばminitest-sequel)は、クラスレベルのバリデーションでしか動作しないことです。

答えて

2

はあなただけ手動で検証をテストすることはできません?:

model = Model.new 
model.validate 
model.errors[:column].must_equal ['some error message'] 
+1

を私が使用してお勧めしたい壊れにくくテストのために、「エラーが等しくなければならない」、「エラーを含まなければならない」ではありません。しかし、手動でこれをテストするという基本的な考え方に同意してください。 –

+0

それはそれをきれいに解決します。そしてそれはかなり明白ですが、時には問題に悩まされることもあります... – Jan

関連する問題