rails:3958
From: dezawa <dezawa@a...>
Date: Sun, 29 Dec 2013 10:28:18 +0900
Subject: [rails:3958] Re: Rails4 deviseの test:integration がうまく行かない
ありがとうございます。
お恥ずかしい事に今回もポストした途端に気がつきました。
が、
じつはそれでもおかしな現象があって {"user" => ..} でも
ダメか? と、解決までにはだいぶ掛かってしまいました。
おかしな現象とは、
log では 認証に成功して/app にいったかのごとく記録されて
いるのですが、テストでは失敗していました。
よもや、と  pp flash して確かめてみると、flash[:alert] と
flash[:notice] の両方が設定されていました。
flashって都度クリアされなかったっけ、、、としばらく悩んだのですが
結局 flash[:alert] の検査はせずに
    assert_redirected_to "/app","メインへ飛ぶ"
    assert_equal "Signed in successfully.",flash[:notice]
でごまかしました。
===
作った当時はRSpecとかCapybaraとか(気が付か?)なかったので
testで進めてましたが、浮気してみるか、とそれらの勉強を
始めました。
modelあたりの記述ではRSpecの記述量が多いので、CXOBOLか!と
ちと面倒だな、とおもっていたのですが、integartionでは良いかなと
思い始めています。
test:integrationではviewでのidやnameの設定違いに気がつきにくいですが
Capibaraだともろにでてきますね。(RSpecではないか)
ただまだ書けていません。
 ・click_link の locator に Textが使えるとあるのですが、
   urlそのままでは駄目な様で、idを設定しまくる必要がある?
 ・selectがマニュアルや例を真似て書いてエラーになる。
    select('神奈川',:form => 'prefec') とすると、
      ArgumentError: invalid keys :form, should be one of :text,
      :visible, :between, :count, :maximum, :minimum, :exact,
      :match, :wait
 selectはtest:integration でCapibara使ってるのが問題かな、とRSpecへの
 浮気を始めた次第です。
                                               出沢
(2013年12月28日 18:40), 橋立友宏 wrote:
> 橋立です。
> 
> もう解決されているかも知れませんが、sessions_controllerに送っているパラ 
> メーターがおかしい気がします。
> deviseでログインする場合、通常パラメーターは{"user" => {"username" => 
> "aaron", "password" => "aaronpass"}}という形になるはずです。
> (ログインに利用するのがUserクラスである場合)
> 
> パラメーターの形式を変更して試してみてはいかがでしょうか?
--
ML: rails@r...
使い方: http://QuickML.com/
3955 2013-12-26 11:18 [dezawa@a... ] Rails4 deviseの test:integration がうまく行かない @ 3956 2013-12-28 10:40 ┗[kakyoin.hierophant+i] -> 3958 2013-12-29 02:28 ┗[dezawa@a... ]