質問

私はRSpecののコントローラーのAPIをテストする大きな問題を抱えています。今、私は(ウォーデンの)ミドルウェア認証ソリューションを使用している、と私はスペックを実行すると、プロキシが追加しましたミドルウェアでありませんし、すべての認証テストは、あらゆる場所にNilPointerExceptionsを投げされます。

これは、RSpecのが目的で、最終的なアプリにミドルウェアを追加していない、と私はそれが行くようにするためにモンキーパッチRSPECへの道があるかどうかを知りたいようです。

私はすでに、しかし、これは古い認証バージョンのリファクタリングで、仕事をするために、認証ロジックに依存して、いくつかのコントローラのテストがあり、キュウリと全体のことをテストします。

事前に感謝します。

役に立ちましたか?

解決

これは実際にコントローラの呼び出しでラックを使用していないのRails 2.xのためにRSpecのコントローラのAPIを思わので、これは行うことはできません。しかし、(非実績のある)ソリューションはダビデChelimskyが指摘しています。私は彼がRSpecのユーザーのメールリストの上に私を与えた答えを出してあげるます。

  

コントローラの仕様は本当にレール2に、ラックを通過し、そうではないしません。

     

統合スペック、ラップレール統合テストAPIがあります。   そう、あなたがレールの統合テストに何かできることを行うことができます。ただ   からの要求を変換し、仕様/統合への経由でファイルを移動します   「取得:インデックスは」「『パス/に/インデックス』を取得」するために、あなたはかなりする必要があります   行ってもいいます。

     

私たちはそれがうまくいく方法を知ってみましょう。

     

乾杯、   デビッド

私は私のスペックを実行させるために、ダミーのものを行うために認証ロジック方式でApplicationControllerにをからかってしまった、私は提案はダビデによって指摘持つ前にこれをしなかったので、私はその仕事かどうかを知りません。いずれかの方法で私はそれは同じ状況で、他の開発者を助けることを願っています。

他のヒント

関連問題に関するこの記事は、いくつかの光を当てると、最終的にはRSpecの構成でミドルウェア・コンポーネントを指定するための解決策になるかもしれません(私は願っています!)

https://でRSpecの.lighthouseapp.com /プロジェクト/ 5645 /チケット/ 963-要求され、ゼロの#チケット-963から14

それは本当にあなたの特定のRails2の問題を解決しないが、このクエリがうまくいけば、彼らはRails3のベータ版を試すような問題が発生した他の人を助け、超えます「RSpecのミドルウェア」のトップを駆け上がります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top