2014-11-14 155 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"}']; 
    }); 
    });