Quantcast
Channel: 楽天 みんなで解決!Q&A 新着質問([技術者向] コンピューター/205)
Viewing all articles
Browse latest Browse all 29232

テスト環境でのsaveについて

$
0
0
Ruby1.9.3とRails3.2.9でのテスト環境のモデルの単体テスト(unit)での質問です。 unitのuser_test.rb に下記の記述を書いて試験しているのですが、saveコマンドでのusersテーブル への書き込みが、下記でnewしたuserの内容ではなく、fixturesフォルダの下の、users.ymlのテストデータの内容が書き込まれるようなのですが、動作はそれでよいのでしょうか?また、YMLデータではなくて下記のデータを書き込ませるsaveの書き方とかはあるのでしょうか? test "user auth test" do user = User.new(:name => "tanaka", :password => "pass", :password_confirmation => "pass") user.save assert User.auth("tanaka", "pass") end 後、現在、usersテーブルのhashed_passwordフィールドに、モデル(user.rb)の中で、パスワードの セッターを再定義するために、 class User < ActiveRecord::Base   def password=(pwd)   @password = pwd    #   return if pwd.blank?   self.hashed_password = User.encrypt(@password)   end # 以下、省略 end の記述を入れているのですが、現在何故か、YMLのデータが暗号化されないでそのまま入力されてしまっていますま。このメソッドの呼び出しは、上に書いたusersテーブルの内容またはYMLデータの書き込み時に、実行されると思っていいのでしょうか?(両方、またはどちらか?) 御教示願えればと思います。

Viewing all articles
Browse latest Browse all 29232

Trending Articles