3

いくつかのテストにモックモジュールを使用しています。

ページが読み込まれたときなど

    browser.get('http://localhost:5643/#/balance/import');

以下のこの API URL が呼び出され、正常に動作する以下の応答が得られます。

$httpBackend.whenGET('https://localhost:44329/api/daystatus').respond(
                {
                    'DayID': 249,
                    'weekend': false,
                    'dayStatusTypeID': 5,
                    'balance': null
                }
            );

しかし、別のページが読み込まれたときなど

    browser.get('http://localhost:5643/#/dashboard');

また、モック モジュールで API URL を呼び出します

しかし、今回は別の応答を返したいと思っています。(前のページが読み込まれ、いくつかの UI テスト アクションが行われたためです。)

$httpBackend.whenGET('https://localhost:44329/api/daystatus').respond(
                {
                    'DayID': 249,
                    'weekend': false,
                    'dayStatusTypeID': 7,
                    'balance': null
                }
            );

モック モジュールで、API URL への最初の呼び出しではなく、今回は 2 番目の呼び出しを使用するようにするにはどうすればよいでしょうか? 現時点では、どのページをロードしても使用されます:

$httpBackend.whenGET('https://localhost:44329/api/daystatus').respond(
                {
                    'DayID': 249,
                    'weekend': false,
                    'dayStatusTypeID': 5,
                    'balance': null
                }
            );

リクエストがどのページから来たかを検出できますか..またはクエリ文字列変数を渡すことができますか? これについてどうすればよいかわかりません。

4

1 に答える 1

3

RefererAPI 呼び出しはヘッダーで区別できます。

$httpBackend.whenGET('https://localhost:44329/api/daystatus', 
                     {'Referer': 'http://localhost:5643/#/balance/import'})

と:

$httpBackend.whenGET('https://localhost:44329/api/daystatus', 
                     {'Referer': 'http://localhost:5643/#/dashboard'})
于 2016-01-27T10:37:19.373 に答える