問題タブ [webmock]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1210 参照

ruby-on-rails - スイートが実行されない前の RSpec

テスト スイートで外部 API 呼び出しをスタブしようとしていますが、before(:suite) が実行されません。Webmock は、テストがまだ実行されていない場合でも、maps.googleapis.com をスタブ化する必要があることを常に報告します (緑色の点も赤色の F もありません)。

spec_helper.rb:

ジオコーダー gem は googleapis.com から緯度/経度を保存しようとし、URL が登録されていないことを示すエラーが Webmock によって発生します。

編集: エラー スニペット:

繰り返しますが、これは config.before(:each) ブロック内のコードが実行されないという事実に関係していることを強調します。なんで?もしそうなら、「'WTF' を上げる」ことができ、上記のエラーの代わりに 'WTF' がコンソール出力に表示されるはずです。Webmock gem を「バンドル解除」したときにのみ「WTF」が表示されます。

0 投票する
3 に答える
1299 参照

ruby-on-rails - rspec テスト自体はパスするのに、特定のテストを実行すると失敗するのはなぜですか?

rspec を実行してすべてのテストを実行すると、すべて成功しますが、特定のファイル名を指定すると失敗します。

私はそれを嘲笑してすでにスタブ化していますが、なぜ失敗するのですか? 私が確認できる唯一のことは、既存のスタブが '/test/' であり、リクエストが '/default/' であることです。それはどのように変化しましたか?

わかりました、別の仕様でこの問題に再び遭遇しました。仕様は次のとおりです: https://gist.github.com/starrychloe/1d79d9925f9b79ae5c01

私はこのsolr/solr.xmlを見つけました

環境を明示的に指定しても、rspecが本番環境で実行されているようです

rspecの問題だと思います。rspec -v: バージョン 2.14.7。

0 投票する
0 に答える
520 参照

ruby-on-rails - モジュールの仕様に Webmock スタブを書く

私の問題は、外部サーバー(Geonetwork)への接続に対処し、その応答を扱うラッパーを作成することです。

検索コントローラーでリクエストを受け取りましたが、正常に機能していました。次に、ラッパーのこのソリューションに従おうとしました:

http://code.tutsplus.com/articles/writing-an-api-wrapper-in-ruby-with-tdd--net-23875

しかし今、私は理由を理解できないというエラーが webmock で発生しています。

../lib/wrapper/api.rb


../spec/lib/api_spec.rb


../spec/spec_helper.rb


私が得ているエラーは次のとおりです。


0 投票する
0 に答える
858 参照

ruby-on-rails - WebMock のテストで要求された URL からパラメータを抽出するにはどうすればよいですか?

外部 API を呼び出すモデルのテストを作成しようとしています。WebMock を使用して、URL からパラメーターを抽出することは可能ですか?

たとえば、次のような URL に一致させたいとします。

http://test.com?id=# {数値}&id2=#{数値2}

#{number} と #{number2} は正規表現です。ここまでは、 https ://github.com/bblimke/webmock#matching-uris-using-regular-expressions に記載されているように WebMock を使用して可能です。

私の問題は、テスト内でそれらを使用するために、リクエストに含まれていた「number」と「number2」を知る必要があることです。それを行う方法はありますか?

WebMock に代わるものがあれば、遠慮なく提案してください。

編集:いくつかの追加の詳細:

外部 API を呼び出す関数をテストするテストがあるとします。URL のいくつかのパラメーターを使用して呼び出されることはわかっていますが、それが取る値がわからないので、次のようにします。

0 投票する
1 に答える
3769 参照

ruby - WebMock で Stripe をモックするときに、この「ハッシュから文字列への暗黙的な変換がない」というメッセージが表示されるのはなぜですか?

次のように Stripe をモックしようとしています。

電話するno implicit conversion of Hash into Stringとエラーが発生します:

のハッシュが原因ですbodyto_return、エラーを回避する方法がわかりません。

.to_sハッシュに追加すると、次のようになります。

API からの無効な応答オブジェクト: "{\"id\"=>\"tok_14CgP22eZvKYlo2CkgJ6ymLE\", \"livemode\"=>false, \"created\"=>1404517660, \"used\"=>false, \" object\"=>\"token\", \"type\"=>\"card\", \"card\"=>{\"id\"=>\"card_14CgP22eZvKYlo2CcdUNvicW\", \"object\" =>\"card\", \"last4\"=>\"4242\", \"brand\"=>\"Visa\", \"funding\"=>\"credit\", \"exp_month \"=>12, \"exp_year\"=>2018, \"fingerprint\"=>\"Xt5EWLLDS7FJjR1c\", \"country\"=>\"US\"}}" (HTTP 応答コードは 200 でした)

.to_json最後にa を追加するとStripe::Token合格しますが、結果を何らかの方法でstack error too deep使用しようとするとエラーが発生します。token

おすすめは何ですか?

0 投票する
2 に答える
519 参照

ruby-on-rails-3 - rspec を使用した Rails テストでのスタブ XMLRPC::Client 呼び出し

Rails の rspec テストで XMLRPC::Client.call をスタブしようとしています。

これが私の方法です:

ここに私のテストがあります:

次のエラーが表示されます。

スタブで空の応答本文を使用すると、次のようになります。

このrspec-rails で webmock を使用して XMLRPC クライアントをモックすることも、私にとってはうまくいきませんでした。

どんな助けでも大歓迎です。ありがとう!