@alterior/http 3.13.3 → 3.13.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/backend.d.ts +38 -38
- package/dist/backend.js +38 -38
- package/dist/client.d.ts +2108 -2108
- package/dist/client.js +265 -265
- package/dist/client.js.map +1 -1
- package/dist/headers.d.ts +57 -57
- package/dist/headers.js +187 -187
- package/dist/headers.js.map +1 -1
- package/dist/index.d.ts +18 -18
- package/dist/index.js +42 -42
- package/dist/interceptor.d.ts +63 -63
- package/dist/interceptor.js +43 -43
- package/dist/interceptor.js.map +1 -1
- package/dist/module.d.ts +101 -101
- package/dist/module.js +188 -188
- package/dist/module.js.map +1 -1
- package/dist/params.d.ts +98 -98
- package/dist/params.js +184 -184
- package/dist/params.js.map +1 -1
- package/dist/request.d.ts +130 -130
- package/dist/request.js +260 -260
- package/dist/request.js.map +1 -1
- package/dist/response.d.ts +267 -267
- package/dist/response.js +165 -165
- package/dist/response.js.map +1 -1
- package/dist/server.d.ts +28 -28
- package/dist/server.js +119 -119
- package/dist/server.js.map +1 -1
- package/dist/test/client.test.d.ts +8 -8
- package/dist/test/client.test.js +163 -163
- package/dist/test/client.test.js.map +1 -1
- package/dist/test/headers.test.d.ts +1 -1
- package/dist/test/headers.test.js +126 -126
- package/dist/test/module.test.d.ts +1 -1
- package/dist/test/module.test.js +117 -117
- package/dist/test/module.test.js.map +1 -1
- package/dist/test/params.test.d.ts +1 -1
- package/dist/test/params.test.js +63 -63
- package/dist/test/request.test.d.ts +8 -8
- package/dist/test/request.test.js +159 -159
- package/dist/test/request.test.js.map +1 -1
- package/dist/test/response.test.d.ts +1 -1
- package/dist/test/response.test.js +79 -79
- package/dist/test/response.test.js.map +1 -1
- package/dist/test/test.d.ts +1 -1
- package/dist/test/test.js +16 -16
- package/dist/test/xhr.mock.d.ts +48 -48
- package/dist/test/xhr.mock.js +94 -94
- package/dist/test/xhr.mock.js.map +1 -1
- package/dist/test/xhr.test.d.ts +1 -1
- package/dist/test/xhr.test.js +344 -344
- package/dist/test/xhr.test.js.map +1 -1
- package/dist/test/xsrf.test.d.ts +1 -1
- package/dist/test/xsrf.test.js +63 -63
- package/dist/test/xsrf.test.js.map +1 -1
- package/dist/testing/api.d.ts +102 -102
- package/dist/testing/api.js +19 -19
- package/dist/testing/backend.d.ts +63 -63
- package/dist/testing/backend.js +141 -141
- package/dist/testing/backend.js.map +1 -1
- package/dist/testing/index.d.ts +10 -10
- package/dist/testing/index.js +16 -16
- package/dist/testing/module.d.ts +16 -16
- package/dist/testing/module.js +38 -38
- package/dist/testing/module.js.map +1 -1
- package/dist/testing/request.d.ts +56 -56
- package/dist/testing/request.js +177 -177
- package/dist/testing/request.js.map +1 -1
- package/dist/testing/request.test.d.ts +8 -8
- package/dist/testing/request.test.js +24 -24
- package/dist/xhr.d.ts +42 -42
- package/dist/xhr.js +298 -298
- package/dist/xhr.js.map +1 -1
- package/dist/xsrf.d.ts +37 -37
- package/dist/xsrf.js +55 -55
- package/dist/xsrf.js.map +1 -1
- package/dist.esm/backend.d.ts +38 -38
- package/dist.esm/backend.js +33 -33
- package/dist.esm/client.d.ts +2108 -2108
- package/dist.esm/client.js +262 -262
- package/dist.esm/client.js.map +1 -1
- package/dist.esm/headers.d.ts +57 -57
- package/dist.esm/headers.js +183 -183
- package/dist.esm/headers.js.map +1 -1
- package/dist.esm/index.d.ts +18 -18
- package/dist.esm/index.js +18 -18
- package/dist.esm/interceptor.d.ts +63 -63
- package/dist.esm/interceptor.js +39 -39
- package/dist.esm/interceptor.js.map +1 -1
- package/dist.esm/module.d.ts +101 -101
- package/dist.esm/module.js +183 -183
- package/dist.esm/module.js.map +1 -1
- package/dist.esm/params.d.ts +98 -98
- package/dist.esm/params.js +179 -179
- package/dist.esm/params.js.map +1 -1
- package/dist.esm/request.d.ts +130 -130
- package/dist.esm/request.js +256 -256
- package/dist.esm/request.js.map +1 -1
- package/dist.esm/response.d.ts +267 -267
- package/dist.esm/response.js +158 -158
- package/dist.esm/response.js.map +1 -1
- package/dist.esm/server.d.ts +28 -28
- package/dist.esm/server.js +113 -113
- package/dist.esm/server.js.map +1 -1
- package/dist.esm/test/client.test.d.ts +8 -8
- package/dist.esm/test/client.test.js +161 -161
- package/dist.esm/test/client.test.js.map +1 -1
- package/dist.esm/test/headers.test.d.ts +1 -1
- package/dist.esm/test/headers.test.js +124 -124
- package/dist.esm/test/module.test.d.ts +1 -1
- package/dist.esm/test/module.test.js +115 -115
- package/dist.esm/test/module.test.js.map +1 -1
- package/dist.esm/test/params.test.d.ts +1 -1
- package/dist.esm/test/params.test.js +61 -61
- package/dist.esm/test/request.test.d.ts +8 -8
- package/dist.esm/test/request.test.js +157 -157
- package/dist.esm/test/request.test.js.map +1 -1
- package/dist.esm/test/response.test.d.ts +1 -1
- package/dist.esm/test/response.test.js +77 -77
- package/dist.esm/test/response.test.js.map +1 -1
- package/dist.esm/test/test.d.ts +1 -1
- package/dist.esm/test/test.js +14 -14
- package/dist.esm/test/xhr.mock.d.ts +48 -48
- package/dist.esm/test/xhr.mock.js +88 -88
- package/dist.esm/test/xhr.mock.js.map +1 -1
- package/dist.esm/test/xhr.test.d.ts +1 -1
- package/dist.esm/test/xhr.test.js +342 -342
- package/dist.esm/test/xhr.test.js.map +1 -1
- package/dist.esm/test/xsrf.test.d.ts +1 -1
- package/dist.esm/test/xsrf.test.js +61 -61
- package/dist.esm/test/xsrf.test.js.map +1 -1
- package/dist.esm/testing/api.d.ts +102 -102
- package/dist.esm/testing/api.js +15 -15
- package/dist.esm/testing/backend.d.ts +63 -63
- package/dist.esm/testing/backend.js +138 -138
- package/dist.esm/testing/backend.js.map +1 -1
- package/dist.esm/testing/index.d.ts +10 -10
- package/dist.esm/testing/index.js +10 -10
- package/dist.esm/testing/module.d.ts +16 -16
- package/dist.esm/testing/module.js +35 -35
- package/dist.esm/testing/module.js.map +1 -1
- package/dist.esm/testing/request.d.ts +56 -56
- package/dist.esm/testing/request.js +173 -173
- package/dist.esm/testing/request.js.map +1 -1
- package/dist.esm/testing/request.test.d.ts +8 -8
- package/dist.esm/testing/request.test.js +22 -22
- package/dist.esm/xhr.d.ts +42 -42
- package/dist.esm/xhr.js +294 -294
- package/dist.esm/xhr.js.map +1 -1
- package/dist.esm/xsrf.d.ts +37 -37
- package/dist.esm/xsrf.js +51 -51
- package/dist.esm/xsrf.js.map +1 -1
- package/package.json +9 -9
- package/tsconfig.esm.tsbuildinfo +1 -0
- package/tsconfig.json +0 -2
- package/tsconfig.tsbuildinfo +1 -8046
|
@@ -1,162 +1,162 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright Google Inc. All Rights Reserved.
|
|
4
|
-
*
|
|
5
|
-
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
-
* found in the LICENSE file at https://angular.io/license
|
|
7
|
-
*/
|
|
8
|
-
import { beforeEach, afterEach, describe, it } from 'razmin';
|
|
9
|
-
import { toArray } from 'rxjs/operators';
|
|
10
|
-
import { expect } from 'chai';
|
|
11
|
-
import { HttpClient } from '../client';
|
|
12
|
-
import { HttpEventType, HttpResponse } from '../response';
|
|
13
|
-
import { HttpClientTestingBackend } from '../testing/backend';
|
|
14
|
-
describe('HttpClient', () => {
|
|
15
|
-
let client = null;
|
|
16
|
-
let backend = null;
|
|
17
|
-
beforeEach(() => {
|
|
18
|
-
backend = new HttpClientTestingBackend();
|
|
19
|
-
client = new HttpClient(backend);
|
|
20
|
-
});
|
|
21
|
-
afterEach(() => { backend.verify(); });
|
|
22
|
-
describe('makes a basic request', () => {
|
|
23
|
-
it('for JSON data', done => {
|
|
24
|
-
client.get('/test').subscribe(res => {
|
|
25
|
-
expect(res['data']).to.eq('hello world');
|
|
26
|
-
done();
|
|
27
|
-
});
|
|
28
|
-
backend.expectOne('/test').flush({ 'data': 'hello world' });
|
|
29
|
-
});
|
|
30
|
-
it('for text data', done => {
|
|
31
|
-
client.get('/test', { responseType: 'text' }).subscribe(res => {
|
|
32
|
-
expect(res).to.eq('hello world');
|
|
33
|
-
done();
|
|
34
|
-
});
|
|
35
|
-
backend.expectOne('/test').flush('hello world');
|
|
36
|
-
});
|
|
37
|
-
it('with headers', done => {
|
|
38
|
-
client.get('/test', { headers: { 'X-Option': 'true' } }).subscribe(() => done());
|
|
39
|
-
const req = backend.expectOne('/test');
|
|
40
|
-
expect(req.request.headers.get('X-Option')).to.eq('true');
|
|
41
|
-
req.flush({});
|
|
42
|
-
});
|
|
43
|
-
it('with params', done => {
|
|
44
|
-
client.get('/test', { params: { 'test': 'true' } }).subscribe(() => done());
|
|
45
|
-
backend.expectOne('/test?test=true').flush({});
|
|
46
|
-
});
|
|
47
|
-
it('for an arraybuffer', done => {
|
|
48
|
-
const body = new ArrayBuffer(4);
|
|
49
|
-
client.get('/test', { responseType: 'arraybuffer' }).subscribe(res => {
|
|
50
|
-
expect(res).to.eq(body);
|
|
51
|
-
done();
|
|
52
|
-
});
|
|
53
|
-
backend.expectOne('/test').flush(body);
|
|
54
|
-
});
|
|
55
|
-
if (typeof Blob !== 'undefined') {
|
|
56
|
-
it('for a blob', done => {
|
|
57
|
-
const body = new Blob([new ArrayBuffer(4)]);
|
|
58
|
-
client.get('/test', { responseType: 'blob' }).subscribe(res => {
|
|
59
|
-
expect(res).to.eq(body);
|
|
60
|
-
done();
|
|
61
|
-
});
|
|
62
|
-
backend.expectOne('/test').flush(body);
|
|
63
|
-
});
|
|
64
|
-
}
|
|
65
|
-
it('that returns a response', done => {
|
|
66
|
-
const body = { 'data': 'hello world' };
|
|
67
|
-
client.get('/test', { observe: 'response' }).subscribe(res => {
|
|
68
|
-
expect(res instanceof HttpResponse).to.equal(true);
|
|
69
|
-
expect(res.body).to.eq(body);
|
|
70
|
-
done();
|
|
71
|
-
});
|
|
72
|
-
backend.expectOne('/test').flush(body);
|
|
73
|
-
});
|
|
74
|
-
it('that returns a stream of events', done => {
|
|
75
|
-
client.get('/test', { observe: 'events' }).pipe(toArray()).toPromise().then(events => {
|
|
76
|
-
expect(events.length).to.eq(2);
|
|
77
|
-
let x = HttpResponse;
|
|
78
|
-
expect(events[0].type).to.eq(HttpEventType.Sent);
|
|
79
|
-
expect(events[1].type).to.eq(HttpEventType.Response);
|
|
80
|
-
expect(events[1] instanceof HttpResponse).to.be.ok;
|
|
81
|
-
done();
|
|
82
|
-
});
|
|
83
|
-
backend.expectOne('/test').flush({ 'data': 'hello world' });
|
|
84
|
-
});
|
|
85
|
-
it('with progress events enabled', done => {
|
|
86
|
-
client.get('/test', { reportProgress: true }).subscribe(() => done());
|
|
87
|
-
const req = backend.expectOne('/test');
|
|
88
|
-
expect(req.request.reportProgress).to.be.true;
|
|
89
|
-
req.flush({});
|
|
90
|
-
});
|
|
91
|
-
});
|
|
92
|
-
describe('makes a POST request', () => {
|
|
93
|
-
it('with text data', done => {
|
|
94
|
-
client.post('/test', 'text body', { observe: 'response', responseType: 'text' })
|
|
95
|
-
.subscribe(res => {
|
|
96
|
-
expect(res.ok).to.be.ok;
|
|
97
|
-
expect(res.status).to.equal(200);
|
|
98
|
-
done();
|
|
99
|
-
});
|
|
100
|
-
backend.expectOne('/test').flush('hello world');
|
|
101
|
-
});
|
|
102
|
-
it('with json data', done => {
|
|
103
|
-
const body = { data: 'json body' };
|
|
104
|
-
client.post('/test', body, { observe: 'response', responseType: 'text' }).subscribe(res => {
|
|
105
|
-
expect(res.ok).to.be.ok;
|
|
106
|
-
expect(res.status).to.equal(200);
|
|
107
|
-
done();
|
|
108
|
-
});
|
|
109
|
-
const testReq = backend.expectOne('/test');
|
|
110
|
-
expect(testReq.request.body).to.equal(body);
|
|
111
|
-
testReq.flush('hello world');
|
|
112
|
-
});
|
|
113
|
-
it('with a json body of false', done => {
|
|
114
|
-
client.post('/test', false, { observe: 'response', responseType: 'text' }).subscribe(res => {
|
|
115
|
-
expect(res.ok).to.be.ok;
|
|
116
|
-
expect(res.status).to.equal(200);
|
|
117
|
-
done();
|
|
118
|
-
});
|
|
119
|
-
const testReq = backend.expectOne('/test');
|
|
120
|
-
expect(testReq.request.body).to.equal(false);
|
|
121
|
-
testReq.flush('hello world');
|
|
122
|
-
});
|
|
123
|
-
it('with a json body of 0', done => {
|
|
124
|
-
client.post('/test', 0, { observe: 'response', responseType: 'text' }).subscribe(res => {
|
|
125
|
-
expect(res.ok).to.be.ok;
|
|
126
|
-
expect(res.status).to.equal(200);
|
|
127
|
-
done();
|
|
128
|
-
});
|
|
129
|
-
const testReq = backend.expectOne('/test');
|
|
130
|
-
expect(testReq.request.body).to.equal(0);
|
|
131
|
-
testReq.flush('hello world');
|
|
132
|
-
});
|
|
133
|
-
it('with an arraybuffer', done => {
|
|
134
|
-
const body = new ArrayBuffer(4);
|
|
135
|
-
client.post('/test', body, { observe: 'response', responseType: 'text' }).subscribe(res => {
|
|
136
|
-
expect(res.ok).to.be.ok;
|
|
137
|
-
expect(res.status).to.be.equal(200);
|
|
138
|
-
done();
|
|
139
|
-
});
|
|
140
|
-
const testReq = backend.expectOne('/test');
|
|
141
|
-
expect(testReq.request.body).to.equal(body);
|
|
142
|
-
testReq.flush('hello world');
|
|
143
|
-
});
|
|
144
|
-
});
|
|
145
|
-
describe('makes a JSONP request', () => {
|
|
146
|
-
it('with properly set method and callback', done => {
|
|
147
|
-
client.jsonp('/test', 'myCallback').subscribe(() => done());
|
|
148
|
-
backend.expectOne({ method: 'JSONP', url: '/test?myCallback=JSONP_CALLBACK' })
|
|
149
|
-
.flush('hello world');
|
|
150
|
-
});
|
|
151
|
-
});
|
|
152
|
-
describe('makes a request for an error response', () => {
|
|
153
|
-
it('with a JSON body', done => {
|
|
154
|
-
client.get('/test').subscribe(() => { }, (res) => {
|
|
155
|
-
expect(res.error.data).to.equal('hello world');
|
|
156
|
-
done();
|
|
157
|
-
});
|
|
158
|
-
backend.expectOne('/test').flush({ 'data': 'hello world' }, { status: 500, statusText: 'Server error' });
|
|
159
|
-
});
|
|
160
|
-
});
|
|
161
|
-
});
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Google Inc. All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
+
* found in the LICENSE file at https://angular.io/license
|
|
7
|
+
*/
|
|
8
|
+
import { beforeEach, afterEach, describe, it } from 'razmin';
|
|
9
|
+
import { toArray } from 'rxjs/operators';
|
|
10
|
+
import { expect } from 'chai';
|
|
11
|
+
import { HttpClient } from '../client';
|
|
12
|
+
import { HttpEventType, HttpResponse } from '../response';
|
|
13
|
+
import { HttpClientTestingBackend } from '../testing/backend';
|
|
14
|
+
describe('HttpClient', () => {
|
|
15
|
+
let client = null;
|
|
16
|
+
let backend = null;
|
|
17
|
+
beforeEach(() => {
|
|
18
|
+
backend = new HttpClientTestingBackend();
|
|
19
|
+
client = new HttpClient(backend);
|
|
20
|
+
});
|
|
21
|
+
afterEach(() => { backend.verify(); });
|
|
22
|
+
describe('makes a basic request', () => {
|
|
23
|
+
it('for JSON data', done => {
|
|
24
|
+
client.get('/test').subscribe(res => {
|
|
25
|
+
expect(res['data']).to.eq('hello world');
|
|
26
|
+
done();
|
|
27
|
+
});
|
|
28
|
+
backend.expectOne('/test').flush({ 'data': 'hello world' });
|
|
29
|
+
});
|
|
30
|
+
it('for text data', done => {
|
|
31
|
+
client.get('/test', { responseType: 'text' }).subscribe(res => {
|
|
32
|
+
expect(res).to.eq('hello world');
|
|
33
|
+
done();
|
|
34
|
+
});
|
|
35
|
+
backend.expectOne('/test').flush('hello world');
|
|
36
|
+
});
|
|
37
|
+
it('with headers', done => {
|
|
38
|
+
client.get('/test', { headers: { 'X-Option': 'true' } }).subscribe(() => done());
|
|
39
|
+
const req = backend.expectOne('/test');
|
|
40
|
+
expect(req.request.headers.get('X-Option')).to.eq('true');
|
|
41
|
+
req.flush({});
|
|
42
|
+
});
|
|
43
|
+
it('with params', done => {
|
|
44
|
+
client.get('/test', { params: { 'test': 'true' } }).subscribe(() => done());
|
|
45
|
+
backend.expectOne('/test?test=true').flush({});
|
|
46
|
+
});
|
|
47
|
+
it('for an arraybuffer', done => {
|
|
48
|
+
const body = new ArrayBuffer(4);
|
|
49
|
+
client.get('/test', { responseType: 'arraybuffer' }).subscribe(res => {
|
|
50
|
+
expect(res).to.eq(body);
|
|
51
|
+
done();
|
|
52
|
+
});
|
|
53
|
+
backend.expectOne('/test').flush(body);
|
|
54
|
+
});
|
|
55
|
+
if (typeof Blob !== 'undefined') {
|
|
56
|
+
it('for a blob', done => {
|
|
57
|
+
const body = new Blob([new ArrayBuffer(4)]);
|
|
58
|
+
client.get('/test', { responseType: 'blob' }).subscribe(res => {
|
|
59
|
+
expect(res).to.eq(body);
|
|
60
|
+
done();
|
|
61
|
+
});
|
|
62
|
+
backend.expectOne('/test').flush(body);
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
it('that returns a response', done => {
|
|
66
|
+
const body = { 'data': 'hello world' };
|
|
67
|
+
client.get('/test', { observe: 'response' }).subscribe(res => {
|
|
68
|
+
expect(res instanceof HttpResponse).to.equal(true);
|
|
69
|
+
expect(res.body).to.eq(body);
|
|
70
|
+
done();
|
|
71
|
+
});
|
|
72
|
+
backend.expectOne('/test').flush(body);
|
|
73
|
+
});
|
|
74
|
+
it('that returns a stream of events', done => {
|
|
75
|
+
client.get('/test', { observe: 'events' }).pipe(toArray()).toPromise().then(events => {
|
|
76
|
+
expect(events.length).to.eq(2);
|
|
77
|
+
let x = HttpResponse;
|
|
78
|
+
expect(events[0].type).to.eq(HttpEventType.Sent);
|
|
79
|
+
expect(events[1].type).to.eq(HttpEventType.Response);
|
|
80
|
+
expect(events[1] instanceof HttpResponse).to.be.ok;
|
|
81
|
+
done();
|
|
82
|
+
});
|
|
83
|
+
backend.expectOne('/test').flush({ 'data': 'hello world' });
|
|
84
|
+
});
|
|
85
|
+
it('with progress events enabled', done => {
|
|
86
|
+
client.get('/test', { reportProgress: true }).subscribe(() => done());
|
|
87
|
+
const req = backend.expectOne('/test');
|
|
88
|
+
expect(req.request.reportProgress).to.be.true;
|
|
89
|
+
req.flush({});
|
|
90
|
+
});
|
|
91
|
+
});
|
|
92
|
+
describe('makes a POST request', () => {
|
|
93
|
+
it('with text data', done => {
|
|
94
|
+
client.post('/test', 'text body', { observe: 'response', responseType: 'text' })
|
|
95
|
+
.subscribe(res => {
|
|
96
|
+
expect(res.ok).to.be.ok;
|
|
97
|
+
expect(res.status).to.equal(200);
|
|
98
|
+
done();
|
|
99
|
+
});
|
|
100
|
+
backend.expectOne('/test').flush('hello world');
|
|
101
|
+
});
|
|
102
|
+
it('with json data', done => {
|
|
103
|
+
const body = { data: 'json body' };
|
|
104
|
+
client.post('/test', body, { observe: 'response', responseType: 'text' }).subscribe(res => {
|
|
105
|
+
expect(res.ok).to.be.ok;
|
|
106
|
+
expect(res.status).to.equal(200);
|
|
107
|
+
done();
|
|
108
|
+
});
|
|
109
|
+
const testReq = backend.expectOne('/test');
|
|
110
|
+
expect(testReq.request.body).to.equal(body);
|
|
111
|
+
testReq.flush('hello world');
|
|
112
|
+
});
|
|
113
|
+
it('with a json body of false', done => {
|
|
114
|
+
client.post('/test', false, { observe: 'response', responseType: 'text' }).subscribe(res => {
|
|
115
|
+
expect(res.ok).to.be.ok;
|
|
116
|
+
expect(res.status).to.equal(200);
|
|
117
|
+
done();
|
|
118
|
+
});
|
|
119
|
+
const testReq = backend.expectOne('/test');
|
|
120
|
+
expect(testReq.request.body).to.equal(false);
|
|
121
|
+
testReq.flush('hello world');
|
|
122
|
+
});
|
|
123
|
+
it('with a json body of 0', done => {
|
|
124
|
+
client.post('/test', 0, { observe: 'response', responseType: 'text' }).subscribe(res => {
|
|
125
|
+
expect(res.ok).to.be.ok;
|
|
126
|
+
expect(res.status).to.equal(200);
|
|
127
|
+
done();
|
|
128
|
+
});
|
|
129
|
+
const testReq = backend.expectOne('/test');
|
|
130
|
+
expect(testReq.request.body).to.equal(0);
|
|
131
|
+
testReq.flush('hello world');
|
|
132
|
+
});
|
|
133
|
+
it('with an arraybuffer', done => {
|
|
134
|
+
const body = new ArrayBuffer(4);
|
|
135
|
+
client.post('/test', body, { observe: 'response', responseType: 'text' }).subscribe(res => {
|
|
136
|
+
expect(res.ok).to.be.ok;
|
|
137
|
+
expect(res.status).to.be.equal(200);
|
|
138
|
+
done();
|
|
139
|
+
});
|
|
140
|
+
const testReq = backend.expectOne('/test');
|
|
141
|
+
expect(testReq.request.body).to.equal(body);
|
|
142
|
+
testReq.flush('hello world');
|
|
143
|
+
});
|
|
144
|
+
});
|
|
145
|
+
describe('makes a JSONP request', () => {
|
|
146
|
+
it('with properly set method and callback', done => {
|
|
147
|
+
client.jsonp('/test', 'myCallback').subscribe(() => done());
|
|
148
|
+
backend.expectOne({ method: 'JSONP', url: '/test?myCallback=JSONP_CALLBACK' })
|
|
149
|
+
.flush('hello world');
|
|
150
|
+
});
|
|
151
|
+
});
|
|
152
|
+
describe('makes a request for an error response', () => {
|
|
153
|
+
it('with a JSON body', done => {
|
|
154
|
+
client.get('/test').subscribe(() => { }, (res) => {
|
|
155
|
+
expect(res.error.data).to.equal('hello world');
|
|
156
|
+
done();
|
|
157
|
+
});
|
|
158
|
+
backend.expectOne('/test').flush({ 'data': 'hello world' }, { status: 500, statusText: 'Server error' });
|
|
159
|
+
});
|
|
160
|
+
});
|
|
161
|
+
});
|
|
162
162
|
//# sourceMappingURL=client.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.test.js","sourceRoot":"","sources":["../../src/test/client.test.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"client.test.js","sourceRoot":"","sources":["../../src/test/client.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export {};
|
|
1
|
+
export {};
|
|
2
2
|
//# sourceMappingURL=headers.test.d.ts.map
|
|
@@ -1,125 +1,125 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright Google Inc. All Rights Reserved.
|
|
4
|
-
*
|
|
5
|
-
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
-
* found in the LICENSE file at https://angular.io/license
|
|
7
|
-
*/
|
|
8
|
-
import { describe, it } from 'razmin';
|
|
9
|
-
import { expect } from 'chai';
|
|
10
|
-
import { HttpHeaders } from '../headers';
|
|
11
|
-
describe('HttpHeaders', () => {
|
|
12
|
-
describe('initialization', () => {
|
|
13
|
-
it('should conform to spec', () => {
|
|
14
|
-
const httpHeaders = {
|
|
15
|
-
'Content-Type': 'image/jpeg',
|
|
16
|
-
'Accept-Charset': 'utf-8',
|
|
17
|
-
'X-My-Custom-Header': 'Zeke are cool',
|
|
18
|
-
};
|
|
19
|
-
const secondHeaders = new HttpHeaders(httpHeaders);
|
|
20
|
-
expect(secondHeaders.get('Content-Type')).to.equal('image/jpeg');
|
|
21
|
-
});
|
|
22
|
-
it('should merge values in provided dictionary', () => {
|
|
23
|
-
const headers = new HttpHeaders({ 'foo': 'bar' });
|
|
24
|
-
expect(headers.get('foo')).to.equal('bar');
|
|
25
|
-
expect(headers.getAll('foo')).to.eql(['bar']);
|
|
26
|
-
});
|
|
27
|
-
it('should lazily append values', () => {
|
|
28
|
-
const src = new HttpHeaders();
|
|
29
|
-
const a = src.append('foo', 'a');
|
|
30
|
-
const b = a.append('foo', 'b');
|
|
31
|
-
const c = b.append('foo', 'c');
|
|
32
|
-
expect(src.getAll('foo')).to.be.null;
|
|
33
|
-
expect(a.getAll('foo')).to.eql(['a']);
|
|
34
|
-
expect(b.getAll('foo')).to.eql(['a', 'b']);
|
|
35
|
-
expect(c.getAll('foo')).to.eql(['a', 'b', 'c']);
|
|
36
|
-
});
|
|
37
|
-
it('should keep the last value when initialized from an object', () => {
|
|
38
|
-
const headers = new HttpHeaders({
|
|
39
|
-
'foo': 'first',
|
|
40
|
-
'fOo': 'second',
|
|
41
|
-
});
|
|
42
|
-
expect(headers.getAll('foo')).to.eql(['second']);
|
|
43
|
-
});
|
|
44
|
-
});
|
|
45
|
-
describe('.set()', () => {
|
|
46
|
-
it('should clear all values and re-set for the provided key', () => {
|
|
47
|
-
const headers = new HttpHeaders({ 'foo': 'bar' });
|
|
48
|
-
expect(headers.get('foo')).to.equal('bar');
|
|
49
|
-
const second = headers.set('foo', 'baz');
|
|
50
|
-
expect(second.get('foo')).to.equal('baz');
|
|
51
|
-
const third = headers.set('fOO', 'bat');
|
|
52
|
-
expect(third.get('foo')).to.equal('bat');
|
|
53
|
-
});
|
|
54
|
-
it('should preserve the case of the first call', () => {
|
|
55
|
-
const headers = new HttpHeaders();
|
|
56
|
-
const second = headers.set('fOo', 'baz');
|
|
57
|
-
const third = second.set('foo', 'bat');
|
|
58
|
-
expect(third.keys()).to.eql(['fOo']);
|
|
59
|
-
});
|
|
60
|
-
});
|
|
61
|
-
describe('.get()', () => {
|
|
62
|
-
it('should be case insensitive', () => {
|
|
63
|
-
const headers = new HttpHeaders({ 'foo': 'baz' });
|
|
64
|
-
expect(headers.get('foo')).to.equal('baz');
|
|
65
|
-
expect(headers.get('FOO')).to.equal('baz');
|
|
66
|
-
});
|
|
67
|
-
it('should return null if the header is not present', () => {
|
|
68
|
-
const headers = new HttpHeaders({ bar: [] });
|
|
69
|
-
expect(headers.get('bar')).to.equal(null);
|
|
70
|
-
expect(headers.get('foo')).to.equal(null);
|
|
71
|
-
});
|
|
72
|
-
});
|
|
73
|
-
describe('.getAll()', () => {
|
|
74
|
-
it('should be case insensitive', () => {
|
|
75
|
-
const headers = new HttpHeaders({ foo: ['bar', 'baz'] });
|
|
76
|
-
expect(headers.getAll('foo')).to.eql(['bar', 'baz']);
|
|
77
|
-
expect(headers.getAll('FOO')).to.eql(['bar', 'baz']);
|
|
78
|
-
});
|
|
79
|
-
it('should return null if the header is not present', () => {
|
|
80
|
-
const headers = new HttpHeaders();
|
|
81
|
-
expect(headers.getAll('foo')).to.equal(null);
|
|
82
|
-
});
|
|
83
|
-
});
|
|
84
|
-
describe('.delete', () => {
|
|
85
|
-
it('should be case insensitive', () => {
|
|
86
|
-
const headers = new HttpHeaders({ 'foo': 'baz' });
|
|
87
|
-
expect(headers.has('foo')).to.equal(true);
|
|
88
|
-
const second = headers.delete('foo');
|
|
89
|
-
expect(second.has('foo')).to.equal(false);
|
|
90
|
-
const third = second.set('foo', 'baz');
|
|
91
|
-
expect(third.has('foo')).to.equal(true);
|
|
92
|
-
const fourth = third.delete('FOO');
|
|
93
|
-
expect(fourth.has('foo')).to.equal(false);
|
|
94
|
-
});
|
|
95
|
-
});
|
|
96
|
-
describe('.append', () => {
|
|
97
|
-
it('should append a value to the list', () => {
|
|
98
|
-
const headers = new HttpHeaders();
|
|
99
|
-
const second = headers.append('foo', 'bar');
|
|
100
|
-
const third = second.append('foo', 'baz');
|
|
101
|
-
expect(third.get('foo')).to.equal('bar');
|
|
102
|
-
expect(third.getAll('foo')).to.eql(['bar', 'baz']);
|
|
103
|
-
});
|
|
104
|
-
it('should preserve the case of the first call', () => {
|
|
105
|
-
const headers = new HttpHeaders();
|
|
106
|
-
const second = headers.append('FOO', 'bar');
|
|
107
|
-
const third = second.append('foo', 'baz');
|
|
108
|
-
expect(third.keys()).to.eql(['FOO']);
|
|
109
|
-
});
|
|
110
|
-
});
|
|
111
|
-
describe('response header strings', () => {
|
|
112
|
-
it('should be parsed by the constructor', () => {
|
|
113
|
-
const response = `Date: Fri, 20 Nov 2015 01:45:26 GMT\n` +
|
|
114
|
-
`Content-Type: application/json; charset=utf-8\n` +
|
|
115
|
-
`Transfer-Encoding: chunked\n` +
|
|
116
|
-
`Connection: keep-alive`;
|
|
117
|
-
const headers = new HttpHeaders(response);
|
|
118
|
-
expect(headers.get('Date')).to.equal('Fri, 20 Nov 2015 01:45:26 GMT');
|
|
119
|
-
expect(headers.get('Content-Type')).to.equal('application/json; charset=utf-8');
|
|
120
|
-
expect(headers.get('Transfer-Encoding')).to.equal('chunked');
|
|
121
|
-
expect(headers.get('Connection')).to.equal('keep-alive');
|
|
122
|
-
});
|
|
123
|
-
});
|
|
124
|
-
});
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Google Inc. All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
+
* found in the LICENSE file at https://angular.io/license
|
|
7
|
+
*/
|
|
8
|
+
import { describe, it } from 'razmin';
|
|
9
|
+
import { expect } from 'chai';
|
|
10
|
+
import { HttpHeaders } from '../headers';
|
|
11
|
+
describe('HttpHeaders', () => {
|
|
12
|
+
describe('initialization', () => {
|
|
13
|
+
it('should conform to spec', () => {
|
|
14
|
+
const httpHeaders = {
|
|
15
|
+
'Content-Type': 'image/jpeg',
|
|
16
|
+
'Accept-Charset': 'utf-8',
|
|
17
|
+
'X-My-Custom-Header': 'Zeke are cool',
|
|
18
|
+
};
|
|
19
|
+
const secondHeaders = new HttpHeaders(httpHeaders);
|
|
20
|
+
expect(secondHeaders.get('Content-Type')).to.equal('image/jpeg');
|
|
21
|
+
});
|
|
22
|
+
it('should merge values in provided dictionary', () => {
|
|
23
|
+
const headers = new HttpHeaders({ 'foo': 'bar' });
|
|
24
|
+
expect(headers.get('foo')).to.equal('bar');
|
|
25
|
+
expect(headers.getAll('foo')).to.eql(['bar']);
|
|
26
|
+
});
|
|
27
|
+
it('should lazily append values', () => {
|
|
28
|
+
const src = new HttpHeaders();
|
|
29
|
+
const a = src.append('foo', 'a');
|
|
30
|
+
const b = a.append('foo', 'b');
|
|
31
|
+
const c = b.append('foo', 'c');
|
|
32
|
+
expect(src.getAll('foo')).to.be.null;
|
|
33
|
+
expect(a.getAll('foo')).to.eql(['a']);
|
|
34
|
+
expect(b.getAll('foo')).to.eql(['a', 'b']);
|
|
35
|
+
expect(c.getAll('foo')).to.eql(['a', 'b', 'c']);
|
|
36
|
+
});
|
|
37
|
+
it('should keep the last value when initialized from an object', () => {
|
|
38
|
+
const headers = new HttpHeaders({
|
|
39
|
+
'foo': 'first',
|
|
40
|
+
'fOo': 'second',
|
|
41
|
+
});
|
|
42
|
+
expect(headers.getAll('foo')).to.eql(['second']);
|
|
43
|
+
});
|
|
44
|
+
});
|
|
45
|
+
describe('.set()', () => {
|
|
46
|
+
it('should clear all values and re-set for the provided key', () => {
|
|
47
|
+
const headers = new HttpHeaders({ 'foo': 'bar' });
|
|
48
|
+
expect(headers.get('foo')).to.equal('bar');
|
|
49
|
+
const second = headers.set('foo', 'baz');
|
|
50
|
+
expect(second.get('foo')).to.equal('baz');
|
|
51
|
+
const third = headers.set('fOO', 'bat');
|
|
52
|
+
expect(third.get('foo')).to.equal('bat');
|
|
53
|
+
});
|
|
54
|
+
it('should preserve the case of the first call', () => {
|
|
55
|
+
const headers = new HttpHeaders();
|
|
56
|
+
const second = headers.set('fOo', 'baz');
|
|
57
|
+
const third = second.set('foo', 'bat');
|
|
58
|
+
expect(third.keys()).to.eql(['fOo']);
|
|
59
|
+
});
|
|
60
|
+
});
|
|
61
|
+
describe('.get()', () => {
|
|
62
|
+
it('should be case insensitive', () => {
|
|
63
|
+
const headers = new HttpHeaders({ 'foo': 'baz' });
|
|
64
|
+
expect(headers.get('foo')).to.equal('baz');
|
|
65
|
+
expect(headers.get('FOO')).to.equal('baz');
|
|
66
|
+
});
|
|
67
|
+
it('should return null if the header is not present', () => {
|
|
68
|
+
const headers = new HttpHeaders({ bar: [] });
|
|
69
|
+
expect(headers.get('bar')).to.equal(null);
|
|
70
|
+
expect(headers.get('foo')).to.equal(null);
|
|
71
|
+
});
|
|
72
|
+
});
|
|
73
|
+
describe('.getAll()', () => {
|
|
74
|
+
it('should be case insensitive', () => {
|
|
75
|
+
const headers = new HttpHeaders({ foo: ['bar', 'baz'] });
|
|
76
|
+
expect(headers.getAll('foo')).to.eql(['bar', 'baz']);
|
|
77
|
+
expect(headers.getAll('FOO')).to.eql(['bar', 'baz']);
|
|
78
|
+
});
|
|
79
|
+
it('should return null if the header is not present', () => {
|
|
80
|
+
const headers = new HttpHeaders();
|
|
81
|
+
expect(headers.getAll('foo')).to.equal(null);
|
|
82
|
+
});
|
|
83
|
+
});
|
|
84
|
+
describe('.delete', () => {
|
|
85
|
+
it('should be case insensitive', () => {
|
|
86
|
+
const headers = new HttpHeaders({ 'foo': 'baz' });
|
|
87
|
+
expect(headers.has('foo')).to.equal(true);
|
|
88
|
+
const second = headers.delete('foo');
|
|
89
|
+
expect(second.has('foo')).to.equal(false);
|
|
90
|
+
const third = second.set('foo', 'baz');
|
|
91
|
+
expect(third.has('foo')).to.equal(true);
|
|
92
|
+
const fourth = third.delete('FOO');
|
|
93
|
+
expect(fourth.has('foo')).to.equal(false);
|
|
94
|
+
});
|
|
95
|
+
});
|
|
96
|
+
describe('.append', () => {
|
|
97
|
+
it('should append a value to the list', () => {
|
|
98
|
+
const headers = new HttpHeaders();
|
|
99
|
+
const second = headers.append('foo', 'bar');
|
|
100
|
+
const third = second.append('foo', 'baz');
|
|
101
|
+
expect(third.get('foo')).to.equal('bar');
|
|
102
|
+
expect(third.getAll('foo')).to.eql(['bar', 'baz']);
|
|
103
|
+
});
|
|
104
|
+
it('should preserve the case of the first call', () => {
|
|
105
|
+
const headers = new HttpHeaders();
|
|
106
|
+
const second = headers.append('FOO', 'bar');
|
|
107
|
+
const third = second.append('foo', 'baz');
|
|
108
|
+
expect(third.keys()).to.eql(['FOO']);
|
|
109
|
+
});
|
|
110
|
+
});
|
|
111
|
+
describe('response header strings', () => {
|
|
112
|
+
it('should be parsed by the constructor', () => {
|
|
113
|
+
const response = `Date: Fri, 20 Nov 2015 01:45:26 GMT\n` +
|
|
114
|
+
`Content-Type: application/json; charset=utf-8\n` +
|
|
115
|
+
`Transfer-Encoding: chunked\n` +
|
|
116
|
+
`Connection: keep-alive`;
|
|
117
|
+
const headers = new HttpHeaders(response);
|
|
118
|
+
expect(headers.get('Date')).to.equal('Fri, 20 Nov 2015 01:45:26 GMT');
|
|
119
|
+
expect(headers.get('Content-Type')).to.equal('application/json; charset=utf-8');
|
|
120
|
+
expect(headers.get('Transfer-Encoding')).to.equal('chunked');
|
|
121
|
+
expect(headers.get('Connection')).to.equal('keep-alive');
|
|
122
|
+
});
|
|
123
|
+
});
|
|
124
|
+
});
|
|
125
125
|
//# sourceMappingURL=headers.test.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export {};
|
|
1
|
+
export {};
|
|
2
2
|
//# sourceMappingURL=module.test.d.ts.map
|