69 lines
2.2 KiB
JavaScript
69 lines
2.2 KiB
JavaScript
|
|
defineSuite([
|
||
|
|
'Core/BingMapsGeocoderService',
|
||
|
|
'Core/Rectangle',
|
||
|
|
'Core/Resource'
|
||
|
|
], function(
|
||
|
|
BingMapsGeocoderService,
|
||
|
|
Rectangle,
|
||
|
|
Resource) {
|
||
|
|
'use strict';
|
||
|
|
|
||
|
|
afterAll(function() {
|
||
|
|
Resource._Implementations.loadAndExecuteScript = Resource._DefaultImplementations.loadAndExecuteScript;
|
||
|
|
});
|
||
|
|
|
||
|
|
it('returns geocoder results', function (done) {
|
||
|
|
var query = 'some query';
|
||
|
|
var data = {
|
||
|
|
resourceSets: [{
|
||
|
|
resources : [{
|
||
|
|
name : 'a',
|
||
|
|
bbox : [32.0, 3.0, 3.0, 4.0]
|
||
|
|
}]
|
||
|
|
}]
|
||
|
|
};
|
||
|
|
Resource._Implementations.loadAndExecuteScript = function(url, functionName, deferred) {
|
||
|
|
deferred.resolve(data);
|
||
|
|
};
|
||
|
|
var service = new BingMapsGeocoderService();
|
||
|
|
service.geocode(query).then(function(results) {
|
||
|
|
expect(results.length).toEqual(1);
|
||
|
|
expect(results[0].displayName).toEqual('a');
|
||
|
|
expect(results[0].destination).toBeInstanceOf(Rectangle);
|
||
|
|
done();
|
||
|
|
});
|
||
|
|
});
|
||
|
|
|
||
|
|
it('returns no geocoder results if Bing has no results', function (done) {
|
||
|
|
var query = 'some query';
|
||
|
|
var data = {
|
||
|
|
resourceSets: []
|
||
|
|
};
|
||
|
|
Resource._Implementations.loadAndExecuteScript = function(url, functionName, deferred) {
|
||
|
|
deferred.resolve(data);
|
||
|
|
};
|
||
|
|
var service = new BingMapsGeocoderService();
|
||
|
|
service.geocode(query).then(function(results) {
|
||
|
|
expect(results.length).toEqual(0);
|
||
|
|
done();
|
||
|
|
});
|
||
|
|
});
|
||
|
|
|
||
|
|
it('returns no geocoder results if Bing has results but no resources', function (done) {
|
||
|
|
var query = 'some query';
|
||
|
|
var data = {
|
||
|
|
resourceSets: [{
|
||
|
|
resources: []
|
||
|
|
}]
|
||
|
|
};
|
||
|
|
Resource._Implementations.loadAndExecuteScript = function(url, functionName, deferred) {
|
||
|
|
deferred.resolve(data);
|
||
|
|
};
|
||
|
|
var service = new BingMapsGeocoderService();
|
||
|
|
service.geocode(query).then(function(results) {
|
||
|
|
expect(results.length).toEqual(0);
|
||
|
|
done();
|
||
|
|
});
|
||
|
|
});
|
||
|
|
});
|