1

私はさまざまな種類のデータ ソースで大量のデータ検証を行っており、そのようなボイラープレート コードを書いていることに気付きました。

if summed_payments != row['Total']
  raise "The sum of the payments, #{summed_payments} != #{row['Total']}"
end

Minitest のような DSL を適用する方法があるかどうか疑問に思っていましたが、アプリケーションのテストを伴わない目的でそれを使用するにはどうすればよいでしょうか? たとえば、一括データ インポートおよび検証スクリプト中にエラーを見つけてログに記録する...これは、テスト スイートを作成する必要はなく、さまざまな種類の処理を実行したい、簡単で汚いスクリプトです。検証の。

4

3 に答える 3

2

これには、スタンドアロンの ActiveModel が適していると思います。

詳細については、この Railscast をご覧ください: http://railscasts.com/episodes/219-active-model

于 2012-08-14T16:28:17.763 に答える
0

必要に応じて、 http://rubygems.org/gems/validates_simpleを確認できます。これは、アクティブなモデル検証メソッドのインターフェイスを模倣しようとするハッシュの単純な検証を行うための gem です。

于 2013-12-31T20:25:26.993 に答える
0

これが少し古いことは承知していますが、Veto gem はおそらくあなたが探しているものです: https://github.com/kodio/veto

依存関係のない、プレーンな古い ruby​​ オブジェクトのスタンドアロン検証。

于 2014-02-01T21:52:33.573 に答える