ActiveRecord Validation #5 - Common Validation Options/Strict Validation -
公式ドキュメント: http://guides.rubyonrails.org/active_record_validations.html#common-validation-options
引き続きドキュメント読みながらやってみようって事で進めてみる
公式ドキュメント: http://guides.rubyonrails.org/active_record_validations.html#common-validation-options
引き続きドキュメント読みながらやってみようって事で進めてみる
公式ドキュメント: http://guides.rubyonrails.org/active_record_validations.html#validates-each
validates_withではレコード単位でバリデーションによる検証処理を別クラス等にまかせるような仕組みだと思うけど、validates_eachは指定した属性に対する検証処理をブロックにまかせるような検証仕組みを提供する物かと
公式ドキュメント: http://guides.rubyonrails.org/active_record_validations.html#validates-with
ActiveModel::Validatorを用いて検証処理を実装する方法を提供するヘルパー的な感じなのではと
公式ドキュメント: http://guides.rubyonrails.org/active_record_validations.html
公式ドキュメントを読みつつ進めてみようかと。ただやたらと長いので何回かに分けて書く予定
公式ドキュメント(Guide): http://guides.rubyonrails.org/association_basics.html#polymorphic-associations
公式ドキュメントの日本語翻訳: [ruby/rails/RailsGuidesをゆっくり和訳してみたよ/Active Record Associations][1]
ちょいちょい公式ドキュメントをざっくり見ながらやってみてる。今回はActiveRecordのpolymorphic association
普段、Railsとかを使う分にはfactory_girl_railsなパッケージが勝手にやってくれるから良いけどそうじゃない環境(ActiveRecordを単体で使ってるようなケースとか)の場合には
前回のActiveRecord Optimistic Lockingのような同一のページのインスタンスを持つセッションが複数あり、一方のセッションで処理した後で他のセッションで処理するとエラーになるっていう振る舞いをテストするにはどうしたら良いのかっていう件
という事でやってみた
公式: https://github.com/intridea/omniauth
タイトル通りRails(じゃなくても出来る。Sinatraとかもサポートされている)で、facebookへのログインを行ってアカウント情報なりを利用するようなパターン(ソーシャルログインなり登録時の情報の自動設定なり)を行う場合には、omniauthでサポートされているfacebook strategyを使えば簡単にできちゃう模様
テストする時とかに、サーバーを必要とするAPIのテストする前にそのサーバーをテストランナーから起動しテストが終わったらシャットダウンするっていう工程をやったりする事があると思うのですが、それをRSpecっていうかRubyでやる方法的な事として、サーバープロセスをspawnしちゃってテスト終了時にプロセスを終了させちゃうとかっていうのを利用する事で出来る模様。という事でやってみた
何やら色々Railsな情報を見てるとFactoryGirlっていうのがやたらと目に入ってくるので調べたりしつつちょっと使ってみた。単純に言うとテストで使用するフィクスチャを作成出来る物な模様
以前から何度かはRailsとRSpecに関する事書いてるけど、ちゃんとドキュメント読みましょうって事で、 https://www.relishapp.com/rspec/rspec-rails/docs を読み進めてみる
まぁRailsとかでは書いたりもしてますけど、without Railsな環境とかっていうかRSpecももっと勉強しないとなっていう欲求にかられてゆる〜く勉強してみた
HeadlessでXvfbを使ってcapybara-webkitなテストとかも出来る模様。んでsporkが良い感じらしいっていうのを聞いたのでとりあえずやってみた
capybara-webkitを使ってJavaScriptの機能をテスト出来る模様なので色々調べつつやってみた
そういうライブラリとかあんのかなーって色々見てたら、rcovっていうのがあるけどRuby1.9.xで動かないよな模様なのでsimplecovっていうのを使えば良いらしい。んでrcovなフォーマットで動かす場合にはsimplecov-rcovっていうのも使えば良いらしい