2014-11-14 154 views
2

我使用從Trek pretender lib成功,只要我沒有任何查詢參數。僞裝和查詢參數

我已經花了官方4個小時盯着下面的代碼,並不能得到它的工作。我正在定義一個似乎沒有被擊中的網址。但是當我查看未被捕獲的電話時,它將返回我定義的確切網址!如果任何人都可以幫助我,那這個會很棒。

測試代碼,我有:

var server; 

module("Check Search Index page", { 
    setup: function() { 
    'use strict'; 

    Ember.run(function() { 
     App.reset(); 

     server = new Pretender(function() { 
     this.get('/api/v1/holidays.json?display_type=detail&page=1&sort%5Bprice%5D=&sort%5Bname%5D=&sort%5Brating%5D=&filter%5Bduration_min%5D=1&filter%5Bduration_max%5D=32&filter%5Bprice_min%5D=50&filter%5Bprice_max%5D=3800&filter%5Bbus%5D=true&filter%5Bflight%5D=true&filter%5Bself_transportation%5D=true', function (request) { 
      return [200, {'Content-Type': 'application/json'}, '{"holidays":[{"id":507,"name":"App. Elena"}']; 
     }); 
     }); 

     server.unhandledRequest = function(verb, path, request) { 
     console.log("=== BEGIN UNHANDLED REQUEST ==="); 
     console.log('verb: ' + verb); 
     console.log('path: ' + path); 
     console.log('request: ' + request); 
     console.log("=== END UNHANDLED REQUEST ==="); 
     }; 
    }); 
    }, 

    teardown: function() { 
    'use strict'; 

    server.shutdown(); 
    } 
}); 

test('Search page', function() { 
    'use strict'; 

    visit('/search/index'); 
    andThen(function() { 
    ok(find('p:contains("Bepaal uw zoek criteria")').length, 'Search page is showing'); 
    }); 
}); 

和錯誤消息我在控制檯中看到:

.=== BEGIN UNHANDLED REQUEST === 
verb: GET 
path: /api/v1/holidays.json?display_type=detail&page=1&sort%5Bprice%5D=&sort%5Bname%5D=&sort%5Brating%5D=&filter%5Bduration_min%5D=1&filter%5Bduration_max%5D=32&filter%5Bprice_min%5D=50&filter%5Bprice_max%5D=3800&filter%5Bbus%5D=true&filter%5Bflight%5D=true&filter%5Bself_transportation%5D=true 
request: [object Object] 
=== END UNHANDLED REQUEST === 

回答

2

您should't定義請求定義的查詢參數。對於上面的代碼工作,終點的定義應該是:

server = new Pretender(function() { 
    this.get('/api/v1/holidays.json?', function (request) { 
     return [200, {'Content-Type': 'application/json'}, '{"holidays":[{"id":507,"name":"App. Elena"}']; 
    }); 
    });