forked from SuperMap/iClient-JavaScript
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathGetFieldsServiceSpec.js
More file actions
85 lines (81 loc) · 3.31 KB
/
GetFieldsServiceSpec.js
File metadata and controls
85 lines (81 loc) · 3.31 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
import {GetFieldsService} from '../../../src/common/iServer/GetFieldsService';
var dataServiceURL = GlobeParameter.dataServiceURL;
var serviceFailedEventArgsSystem = null;
var getFieldsEventArgsSystem = null;
var initGetFieldsService = () => {
return new GetFieldsService(dataServiceURL, options);
}
var getFieldsFailed = (serviceFailedEventArgs) => {
serviceFailedEventArgsSystem = serviceFailedEventArgs;
}
var getFieldsCompleted = (getFieldsEventArgs) => {
getFieldsEventArgsSystem = getFieldsEventArgs;
}
var options = {
eventListeners: {
processCompleted: getFieldsCompleted,
processFailed: getFieldsFailed
}
};
describe('GetFieldsService', () => {
var originalTimeout;
beforeEach(() => {
originalTimeout = jasmine.DEFAULT_TIMEOUT_INTERVAL;
jasmine.DEFAULT_TIMEOUT_INTERVAL = 50000;
});
afterEach(() => {
jasmine.DEFAULT_TIMEOUT_INTERVAL = originalTimeout;
});
//存在对应数据源数据集返回查询结果
it('success:processAsync', (done) => {
var getFieldsService = initGetFieldsService();
expect(getFieldsService).not.toBeNull();
getFieldsService.dataset = "Countries";
getFieldsService.datasource = "World";
getFieldsService.events.on({'processCompleted': getFieldsCompleted});
getFieldsService.processAsync();
setTimeout(() => {
try {
var getFieldsResult = getFieldsEventArgsSystem.result;
expect(getFieldsEventArgsSystem).not.toBeNull();
expect(getFieldsResult).not.toBeNull();
expect(getFieldsResult.fieldNames).not.toBeNull();
expect(getFieldsResult.fieldNames.length).toEqual(17);
expect(getFieldsResult.childUriList).not.toBeNull();
getFieldsService.destroy();
expect(getFieldsService.EVENT_TYPES).toBeNull();
expect(getFieldsService.events).toBeNull();
expect(getFieldsService.datasource).toBeNull();
expect(getFieldsService.dataset).toBeNull();
done();
} catch (exception) {
expect(false).toBeTruthy();
console.log("GetFieldsService_" + exception.name + ":" + exception.message);
getFieldsService.destroy();
done();
}
}, 2000)
});
//错误数据集,查询错误
it('processAsync_wrongDataset', (done) => {
var getFieldsService = initGetFieldsService();
getFieldsService.dataset = "NoDataset";
getFieldsService.datasource = "World";
getFieldsService.events.on({'processFailed': getFieldsFailed});
getFieldsService.processAsync();
setTimeout(() => {
try {
expect(serviceFailedEventArgsSystem).not.toBeNull();
expect(serviceFailedEventArgsSystem.error.code).toEqual(404);
expect(serviceFailedEventArgsSystem.error.errorMsg).not.toBeNull();
getFieldsService.destroy();
done();
} catch (exception) {
expect(false).toBeTruthy();
console.log("GetFieldsService_" + exception.name + ":" + exception.message);
getFieldsService.destroy();
done();
}
}, 2000);
});
});