[前][次][番号順一覧][スレッド一覧]

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...         ]