コンポーネントがファイルの場所の文字列を返すサーバー API に対して ajax POST 要求を実行する Ember アプリケーションのコンポーネントのテストをいくつか書いています。
mirage/config.js
ajax リクエストの実行時に使用するルートをファイルに追加しました。
this.post('/foobar', () => {
return "test";
});
テストを実行すると、ネットワーク タブとコンソールで、ローカルホストで ajax リクエストが実行されようとしているのに、接続拒否エラーが発生していることがわかります。
POST http://localhost:8000/foobar net::ERR_CONNECTION_REFUSED
.
デバッガーをファイルに入れると、そこで止まらず、my 内のルートを完全mirage/config.js
に無視しているようです。mirage/config.js
URL と名前空間はすべて構成ファイルで設定されます。
localhost でアプリを実行してこのエンドポイントに到達すると、正しく Mirage を通過します。ただし、テスト中に蜃気楼を使用しません。
ajax リクエストを行っているコード。
ajax.request(
uri.toString(),
{
headers: ajax.get('headers'),
method: 'POST',
data: data
});
これは、統合テストから「クリック」しているボタンのクリックで行われます。
さらにテストして、リクエストが蜃気楼を通過しない理由を見つけるにはどうすればよいですか?