Skip to content

Commit a2084ad

Browse files
add ut
1 parent 9fb4aad commit a2084ad

15 files changed

+458
-3
lines changed
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
import { AttachmentsParameters } from '../../../src/common/iServer';
2+
describe('AttachmentsParameters', () => {
3+
it('constructor destroy', () => {
4+
var option = {
5+
dataSourceName: 'testDataSourceName',
6+
dataSetName: 'testDataSetName',
7+
featureId: '1',
8+
};
9+
var parametersNull = new AttachmentsParameters();
10+
expect(parametersNull).not.toBeNull();
11+
var parameter = new AttachmentsParameters(option);
12+
expect(parameter.dataSourceName).toEqual('testDataSourceName');
13+
expect(parameter.dataSetName).toEqual('testDataSetName');
14+
expect(parameter.featureId).toEqual('1');
15+
parameter.destroy();
16+
expect(parameter.dataSourceName).toBeNull();
17+
expect(parameter.dataSetName).toBeNull();
18+
expect(parameter.featureId).toBeNull();
19+
});
20+
});
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
import { EditAttachmentsParameters } from '../../../src/common/iServer';
2+
describe('EditAttachmentsParameters', () => {
3+
it('constructor destroy', () => {
4+
var option = {
5+
file: new File(['file1 contents'], 'file1.txt', { type: 'text/plain' }),
6+
IDs: [1,2],
7+
editType: 'ADD',
8+
};
9+
var parametersNull = new EditAttachmentsParameters();
10+
expect(parametersNull).not.toBeNull();
11+
var parameter = new EditAttachmentsParameters(option);
12+
expect(parameter.file).not.toBeNull();
13+
expect(parameter.IDs).toEqual([1,2]);
14+
expect(parameter.editType).toEqual('ADD');
15+
parameter.destroy();
16+
expect(parameter.file).toBeNull();
17+
expect(parameter.IDs).toBeNull();
18+
expect(parameter.editType).toBeNull();
19+
});
20+
});
Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
import { FeatureService } from '../../../src/leaflet/services/FeatureService';
2+
import { EditAttachmentsParameters } from '../../../src/common/iServer/EditAttachmentsParameters';
3+
import { FetchRequest } from '../../../src/common/util/FetchRequest';
4+
5+
var url = GlobeParameter.dataServiceURL;
6+
describe('leaflet_GetFeatureAttachments', () => {
7+
var originalTimeout;
8+
beforeEach(() => {
9+
originalTimeout = jasmine.DEFAULT_TIMEOUT_INTERVAL;
10+
jasmine.DEFAULT_TIMEOUT_INTERVAL = 50000;
11+
});
12+
afterEach(() => {
13+
jasmine.DEFAULT_TIMEOUT_INTERVAL = originalTimeout;
14+
});
15+
16+
it('incomplete parameters', done => {
17+
let params = new EditAttachmentsParameters({
18+
dataSourceName: "World",
19+
dataSetName: "Countries",
20+
});
21+
var editFeatureAttachmentsService = new FeatureService(url, {});
22+
spyOn(FetchRequest, 'commit');
23+
editFeatureAttachmentsService.editFeatureAttachments(params);
24+
expect(FetchRequest.commit).not.toHaveBeenCalled();
25+
done();
26+
});
27+
it('complete parameters and add a file', done => {
28+
let file = new File(['file1 contents'], 'file1.txt', { type: 'text/plain' });
29+
let params = new EditAttachmentsParameters({
30+
dataSourceName: "World",
31+
dataSetName: "Countries",
32+
featureId: 1,
33+
file:file
34+
});
35+
let myService = new FeatureService(url)
36+
spyOn(FetchRequest, 'commit').and.callFake((method, url, params, options) => {
37+
expect(params.get('file') instanceof File).toBeTruthy();
38+
expect(method).toEqual('POST');
39+
expect(url).toEqual('http://localhost:9876/iserver/services/data-world/rest/data/datasources/World/datasets/Countries/features/1/attachments');
40+
expect(params).not.toBeNull();
41+
expect(options).not.toBeNull();
42+
return Promise.resolve(
43+
new Response(`{"size":56,"name":"1.txt","id":-1403040659,"contentType":"text/plain"}`)
44+
)
45+
})
46+
myService.editFeatureAttachments(params).then(res => {
47+
let serviceResult = res;
48+
expect(serviceResult.result.succeed).toBeTruthy();
49+
expect(serviceResult.result.name).toBe('1.txt');
50+
expect(serviceResult.result.contentType).toBe('text/plain');
51+
expect(serviceResult.result.size).toBe(56);
52+
done();
53+
});
54+
})
55+
});
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
import { FeatureService } from '../../../src/leaflet/services/FeatureService';
2+
import { AttachmentsParameters } from '../../../src/common/iServer/AttachmentsParameters';
3+
import { FetchRequest } from '../../../src/common/util/FetchRequest';
4+
5+
var url = GlobeParameter.dataServiceURL;
6+
describe('leaflet_GetFeatureAttachments', () => {
7+
var originalTimeout;
8+
beforeEach(() => {
9+
originalTimeout = jasmine.DEFAULT_TIMEOUT_INTERVAL;
10+
jasmine.DEFAULT_TIMEOUT_INTERVAL = 50000;
11+
});
12+
afterEach(() => {
13+
jasmine.DEFAULT_TIMEOUT_INTERVAL = originalTimeout;
14+
});
15+
16+
it('incomplete parameters', done => {
17+
let params = new AttachmentsParameters({
18+
dataSourceName: "World"
19+
});
20+
var getFeatureAttachmentsService = new FeatureService(url, {});
21+
spyOn(FetchRequest, 'commit');
22+
getFeatureAttachmentsService.getFeatureAttachments(params);
23+
expect(FetchRequest.commit).not.toHaveBeenCalled();
24+
done();
25+
});
26+
it('complete parameters', done => {
27+
let params = new AttachmentsParameters({
28+
dataSourceName: "World",
29+
dataSetName: "Countries",
30+
featureId: 1,
31+
});
32+
let resInfo = [{ "size": 56, "name": "1.txt", "id": 1966180689, "contentType": "text/plain" }, { "size": 34991, "name": "test.png", "id": 1590279732, "contentType": "image/png" }];
33+
let myService = new FeatureService(url)
34+
spyOn(FetchRequest, 'commit').and.callFake((method, url, params, options) => {
35+
expect(method).toEqual('GET');
36+
expect(params).toBeUndefined();
37+
expect(options).not.toBeNull();
38+
expect(url).toEqual('http://localhost:9876/iserver/services/data-world/rest/data/datasources/World/datasets/Countries/features/1/attachments');
39+
return Promise.resolve(new Response(JSON.stringify(resInfo)));
40+
})
41+
myService.getFeatureAttachments(params).then(res => {
42+
let serviceResult = res;
43+
expect(serviceResult.result.length).toBe(2);
44+
done();
45+
});
46+
})
47+
});
Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
import { FeatureService } from '../../../src/mapboxgl/services/FeatureService';
2+
import { EditAttachmentsParameters } from '../../../src/common/iServer/EditAttachmentsParameters';
3+
import { FetchRequest } from '../../../src/common/util/FetchRequest';
4+
5+
var url = GlobeParameter.dataServiceURL;
6+
describe('mapboxgl_GetFeatureAttachments', () => {
7+
var originalTimeout;
8+
beforeEach(() => {
9+
originalTimeout = jasmine.DEFAULT_TIMEOUT_INTERVAL;
10+
jasmine.DEFAULT_TIMEOUT_INTERVAL = 50000;
11+
});
12+
afterEach(() => {
13+
jasmine.DEFAULT_TIMEOUT_INTERVAL = originalTimeout;
14+
});
15+
16+
it('incomplete parameters', done => {
17+
let params = new EditAttachmentsParameters({
18+
dataSourceName: "World",
19+
dataSetName: "Countries",
20+
});
21+
var editFeatureAttachmentsService = new FeatureService(url, {});
22+
spyOn(FetchRequest, 'commit');
23+
editFeatureAttachmentsService.editFeatureAttachments(params);
24+
expect(FetchRequest.commit).not.toHaveBeenCalled();
25+
done();
26+
});
27+
it('complete parameters and add a file', done => {
28+
let file = new File(['file1 contents'], 'file1.txt', { type: 'text/plain' });
29+
let params = new EditAttachmentsParameters({
30+
dataSourceName: "World",
31+
dataSetName: "Countries",
32+
featureId: 1,
33+
file:file
34+
});
35+
let myService = new FeatureService(url)
36+
spyOn(FetchRequest, 'commit').and.callFake((method, url, params, options) => {
37+
expect(params.get('file') instanceof File).toBeTruthy();
38+
expect(method).toEqual('POST');
39+
expect(url).toEqual('http://localhost:9876/iserver/services/data-world/rest/data/datasources/World/datasets/Countries/features/1/attachments');
40+
expect(params).not.toBeNull();
41+
expect(options).not.toBeNull();
42+
return Promise.resolve(
43+
new Response(`{"size":56,"name":"1.txt","id":-1403040659,"contentType":"text/plain"}`)
44+
)
45+
})
46+
myService.editFeatureAttachments(params).then(res => {
47+
let serviceResult = res;
48+
expect(serviceResult.result.succeed).toBeTruthy();
49+
expect(serviceResult.result.name).toBe('1.txt');
50+
expect(serviceResult.result.contentType).toBe('text/plain');
51+
expect(serviceResult.result.size).toBe(56);
52+
done();
53+
});
54+
})
55+
});
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
import { FeatureService } from '../../../src/mapboxgl/services/FeatureService';
2+
import { AttachmentsParameters } from '../../../src/common/iServer/AttachmentsParameters';
3+
import { FetchRequest } from '../../../src/common/util/FetchRequest';
4+
5+
var url = GlobeParameter.dataServiceURL;
6+
describe('mapboxgl_GetFeatureAttachments', () => {
7+
var originalTimeout;
8+
beforeEach(() => {
9+
originalTimeout = jasmine.DEFAULT_TIMEOUT_INTERVAL;
10+
jasmine.DEFAULT_TIMEOUT_INTERVAL = 50000;
11+
});
12+
afterEach(() => {
13+
jasmine.DEFAULT_TIMEOUT_INTERVAL = originalTimeout;
14+
});
15+
16+
it('incomplete parameters', done => {
17+
let params = new AttachmentsParameters({
18+
dataSourceName: "World"
19+
});
20+
var getFeatureAttachmentsService = new FeatureService(url, {});
21+
spyOn(FetchRequest, 'commit');
22+
getFeatureAttachmentsService.getFeatureAttachments(params);
23+
expect(FetchRequest.commit).not.toHaveBeenCalled();
24+
done();
25+
});
26+
it('complete parameters', done => {
27+
let params = new AttachmentsParameters({
28+
dataSourceName: "World",
29+
dataSetName: "Countries",
30+
featureId: 1,
31+
});
32+
let resInfo = [{ "size": 56, "name": "1.txt", "id": 1966180689, "contentType": "text/plain" }, { "size": 34991, "name": "test.png", "id": 1590279732, "contentType": "image/png" }];
33+
let myService = new FeatureService(url)
34+
spyOn(FetchRequest, 'commit').and.callFake((method, url, params, options) => {
35+
expect(method).toEqual('GET');
36+
expect(params).toBeUndefined();
37+
expect(options).not.toBeNull();
38+
expect(url).toEqual('http://localhost:9876/iserver/services/data-world/rest/data/datasources/World/datasets/Countries/features/1/attachments');
39+
return Promise.resolve(new Response(JSON.stringify(resInfo)));
40+
})
41+
myService.getFeatureAttachments(params).then(res => {
42+
let serviceResult = res;
43+
expect(serviceResult.result.length).toBe(2);
44+
done();
45+
});
46+
})
47+
});
Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
import { FeatureService } from '../../../src/maplibregl/services/FeatureService';
2+
import { EditAttachmentsParameters } from '../../../src/common/iServer/EditAttachmentsParameters';
3+
import { FetchRequest } from '../../../src/common/util/FetchRequest';
4+
5+
var url = GlobeParameter.dataServiceURL;
6+
describe('maplibregl_GetFeatureAttachments', () => {
7+
var originalTimeout;
8+
beforeEach(() => {
9+
originalTimeout = jasmine.DEFAULT_TIMEOUT_INTERVAL;
10+
jasmine.DEFAULT_TIMEOUT_INTERVAL = 50000;
11+
});
12+
afterEach(() => {
13+
jasmine.DEFAULT_TIMEOUT_INTERVAL = originalTimeout;
14+
});
15+
16+
it('incomplete parameters', done => {
17+
let params = new EditAttachmentsParameters({
18+
dataSourceName: "World",
19+
dataSetName: "Countries",
20+
});
21+
var editFeatureAttachmentsService = new FeatureService(url, {});
22+
spyOn(FetchRequest, 'commit');
23+
editFeatureAttachmentsService.editFeatureAttachments(params);
24+
expect(FetchRequest.commit).not.toHaveBeenCalled();
25+
done();
26+
});
27+
it('complete parameters and add a file', done => {
28+
let file = new File(['file1 contents'], 'file1.txt', { type: 'text/plain' });
29+
let params = new EditAttachmentsParameters({
30+
dataSourceName: "World",
31+
dataSetName: "Countries",
32+
featureId: 1,
33+
file:file
34+
});
35+
let myService = new FeatureService(url)
36+
spyOn(FetchRequest, 'commit').and.callFake((method, url, params, options) => {
37+
expect(params.get('file') instanceof File).toBeTruthy();
38+
expect(method).toEqual('POST');
39+
expect(url).toEqual('http://localhost:9876/iserver/services/data-world/rest/data/datasources/World/datasets/Countries/features/1/attachments');
40+
expect(params).not.toBeNull();
41+
expect(options).not.toBeNull();
42+
return Promise.resolve(
43+
new Response(`{"size":56,"name":"1.txt","id":-1403040659,"contentType":"text/plain"}`)
44+
)
45+
})
46+
myService.editFeatureAttachments(params).then(res => {
47+
let serviceResult = res;
48+
expect(serviceResult.result.succeed).toBeTruthy();
49+
expect(serviceResult.result.name).toBe('1.txt');
50+
expect(serviceResult.result.contentType).toBe('text/plain');
51+
expect(serviceResult.result.size).toBe(56);
52+
done();
53+
});
54+
})
55+
});
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
import { FeatureService } from '../../../src/maplibregl/services/FeatureService';
2+
import { AttachmentsParameters } from '../../../src/common/iServer/AttachmentsParameters';
3+
import { FetchRequest } from '../../../src/common/util/FetchRequest';
4+
5+
var url = GlobeParameter.dataServiceURL;
6+
describe('maplibregl_GetFeatureAttachments', () => {
7+
var originalTimeout;
8+
beforeEach(() => {
9+
originalTimeout = jasmine.DEFAULT_TIMEOUT_INTERVAL;
10+
jasmine.DEFAULT_TIMEOUT_INTERVAL = 50000;
11+
});
12+
afterEach(() => {
13+
jasmine.DEFAULT_TIMEOUT_INTERVAL = originalTimeout;
14+
});
15+
16+
it('incomplete parameters', done => {
17+
let params = new AttachmentsParameters({
18+
dataSourceName: "World"
19+
});
20+
var getFeatureAttachmentsService = new FeatureService(url, {});
21+
spyOn(FetchRequest, 'commit');
22+
getFeatureAttachmentsService.getFeatureAttachments(params);
23+
expect(FetchRequest.commit).not.toHaveBeenCalled();
24+
done();
25+
});
26+
it('complete parameters', done => {
27+
let params = new AttachmentsParameters({
28+
dataSourceName: "World",
29+
dataSetName: "Countries",
30+
featureId: 1,
31+
});
32+
let resInfo = [{ "size": 56, "name": "1.txt", "id": 1966180689, "contentType": "text/plain" }, { "size": 34991, "name": "test.png", "id": 1590279732, "contentType": "image/png" }];
33+
let myService = new FeatureService(url)
34+
spyOn(FetchRequest, 'commit').and.callFake((method, url, params, options) => {
35+
expect(method).toEqual('GET');
36+
expect(params).toBeUndefined();
37+
expect(options).not.toBeNull();
38+
expect(url).toEqual('http://localhost:9876/iserver/services/data-world/rest/data/datasources/World/datasets/Countries/features/1/attachments');
39+
return Promise.resolve(new Response(JSON.stringify(resInfo)));
40+
})
41+
myService.getFeatureAttachments(params).then(res => {
42+
let serviceResult = res;
43+
expect(serviceResult.result.length).toBe(2);
44+
done();
45+
});
46+
})
47+
});

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy