refactor(): use const and let instead of var
This commit is contained in:

committed by
Victor Berchet

parent
73593d4bf3
commit
77ee27c59e
@ -11,7 +11,7 @@ import {global} from '../facade/lang';
|
||||
|
||||
let _nextRequestId = 0;
|
||||
export const JSONP_HOME = '__ng_jsonp__';
|
||||
var _jsonpConnections: {[key: string]: any} = null;
|
||||
let _jsonpConnections: {[key: string]: any} = null;
|
||||
|
||||
function _getJsonpConnections(): {[key: string]: any} {
|
||||
if (_jsonpConnections === null) {
|
||||
@ -25,7 +25,7 @@ function _getJsonpConnections(): {[key: string]: any} {
|
||||
export class BrowserJsonp {
|
||||
// Construct a <script> element with the specified URL
|
||||
build(url: string): any {
|
||||
let node = document.createElement('script');
|
||||
const node = document.createElement('script');
|
||||
node.src = url;
|
||||
return node;
|
||||
}
|
||||
@ -35,12 +35,12 @@ export class BrowserJsonp {
|
||||
requestCallback(id: string): string { return `${JSONP_HOME}.${id}.finished`; }
|
||||
|
||||
exposeConnection(id: string, connection: any) {
|
||||
let connections = _getJsonpConnections();
|
||||
const connections = _getJsonpConnections();
|
||||
connections[id] = connection;
|
||||
}
|
||||
|
||||
removeConnection(id: string) {
|
||||
var connections = _getJsonpConnections();
|
||||
const connections = _getJsonpConnections();
|
||||
connections[id] = null;
|
||||
}
|
||||
|
||||
|
@ -66,13 +66,13 @@ export class JSONPConnection_ extends JSONPConnection {
|
||||
this.response = new Observable<Response>((responseObserver: Observer<Response>) => {
|
||||
|
||||
this.readyState = ReadyState.Loading;
|
||||
let id = this._id = _dom.nextRequestID();
|
||||
const id = this._id = _dom.nextRequestID();
|
||||
|
||||
_dom.exposeConnection(id, this);
|
||||
|
||||
// Workaround Dart
|
||||
// url = url.replace(/=JSONP_CALLBACK(&|$)/, `generated method`);
|
||||
let callback = _dom.requestCallback(this._id);
|
||||
const callback = _dom.requestCallback(this._id);
|
||||
let url: string = req.url;
|
||||
if (url.indexOf('=JSONP_CALLBACK&') > -1) {
|
||||
url = url.replace('=JSONP_CALLBACK&', `=${callback}&`);
|
||||
@ -80,9 +80,9 @@ export class JSONPConnection_ extends JSONPConnection {
|
||||
url = url.substring(0, url.length - '=JSONP_CALLBACK'.length) + `=${callback}`;
|
||||
}
|
||||
|
||||
let script = this._script = _dom.build(url);
|
||||
const script = this._script = _dom.build(url);
|
||||
|
||||
let onLoad = (event: Event) => {
|
||||
const onLoad = (event: Event) => {
|
||||
if (this.readyState === ReadyState.Cancelled) return;
|
||||
this.readyState = ReadyState.Done;
|
||||
_dom.cleanup(script);
|
||||
@ -105,7 +105,7 @@ export class JSONPConnection_ extends JSONPConnection {
|
||||
responseObserver.complete();
|
||||
};
|
||||
|
||||
let onError = (error: Error) => {
|
||||
const onError = (error: Error) => {
|
||||
if (this.readyState === ReadyState.Cancelled) return;
|
||||
this.readyState = ReadyState.Done;
|
||||
_dom.cleanup(script);
|
||||
|
@ -45,22 +45,22 @@ export class XHRConnection implements Connection {
|
||||
constructor(req: Request, browserXHR: BrowserXhr, baseResponseOptions?: ResponseOptions) {
|
||||
this.request = req;
|
||||
this.response = new Observable<Response>((responseObserver: Observer<Response>) => {
|
||||
let _xhr: XMLHttpRequest = browserXHR.build();
|
||||
const _xhr: XMLHttpRequest = browserXHR.build();
|
||||
_xhr.open(RequestMethod[req.method].toUpperCase(), req.url);
|
||||
if (isPresent(req.withCredentials)) {
|
||||
_xhr.withCredentials = req.withCredentials;
|
||||
}
|
||||
// load event handler
|
||||
let onLoad = () => {
|
||||
const onLoad = () => {
|
||||
// responseText is the old-school way of retrieving response (supported by IE8 & 9)
|
||||
// response/responseType properties were introduced in ResourceLoader Level2 spec (supported
|
||||
// by IE10)
|
||||
let body = _xhr.response === undefined ? _xhr.responseText : _xhr.response;
|
||||
// Implicitly strip a potential XSSI prefix.
|
||||
if (typeof body === 'string') body = body.replace(XSSI_PREFIX, '');
|
||||
let headers = Headers.fromResponseHeaderString(_xhr.getAllResponseHeaders());
|
||||
const headers = Headers.fromResponseHeaderString(_xhr.getAllResponseHeaders());
|
||||
|
||||
let url = getResponseURL(_xhr);
|
||||
const url = getResponseURL(_xhr);
|
||||
|
||||
// normalize IE9 bug (http://bugs.jquery.com/ticket/1450)
|
||||
let status: number = _xhr.status === 1223 ? 204 : _xhr.status;
|
||||
@ -72,13 +72,13 @@ export class XHRConnection implements Connection {
|
||||
status = body ? 200 : 0;
|
||||
}
|
||||
|
||||
let statusText = _xhr.statusText || 'OK';
|
||||
const statusText = _xhr.statusText || 'OK';
|
||||
|
||||
var responseOptions = new ResponseOptions({body, status, headers, statusText, url});
|
||||
let responseOptions = new ResponseOptions({body, status, headers, statusText, url});
|
||||
if (isPresent(baseResponseOptions)) {
|
||||
responseOptions = baseResponseOptions.merge(responseOptions);
|
||||
}
|
||||
let response = new Response(responseOptions);
|
||||
const response = new Response(responseOptions);
|
||||
response.ok = isSuccess(status);
|
||||
if (response.ok) {
|
||||
responseObserver.next(response);
|
||||
@ -89,8 +89,8 @@ export class XHRConnection implements Connection {
|
||||
responseObserver.error(response);
|
||||
};
|
||||
// error event handler
|
||||
let onError = (err: any) => {
|
||||
var responseOptions = new ResponseOptions({
|
||||
const onError = (err: any) => {
|
||||
let responseOptions = new ResponseOptions({
|
||||
body: err,
|
||||
type: ResponseType.Error,
|
||||
status: _xhr.status,
|
||||
@ -161,7 +161,7 @@ export class XHRConnection implements Connection {
|
||||
_xhr.setRequestHeader('content-type', 'text/plain');
|
||||
break;
|
||||
case ContentType.BLOB:
|
||||
var blob = req.blob();
|
||||
let blob = req.blob();
|
||||
if (blob.type) {
|
||||
_xhr.setRequestHeader('content-type', blob.type);
|
||||
}
|
||||
@ -186,7 +186,7 @@ export class CookieXSRFStrategy implements XSRFStrategy {
|
||||
private _cookieName: string = 'XSRF-TOKEN', private _headerName: string = 'X-XSRF-TOKEN') {}
|
||||
|
||||
configureRequest(req: Request) {
|
||||
let xsrfToken = __platform_browser_private__.getDOM().getCookie(this._cookieName);
|
||||
const xsrfToken = __platform_browser_private__.getDOM().getCookie(this._cookieName);
|
||||
if (xsrfToken) {
|
||||
req.headers.set(this._headerName, xsrfToken);
|
||||
}
|
||||
|
@ -43,8 +43,8 @@ export function getResponseURL(xhr: any): string {
|
||||
}
|
||||
|
||||
export function stringToArrayBuffer(input: String): ArrayBuffer {
|
||||
let view = new Uint16Array(input.length);
|
||||
for (var i = 0, strLen = input.length; i < strLen; i++) {
|
||||
const view = new Uint16Array(input.length);
|
||||
for (let i = 0, strLen = input.length; i < strLen; i++) {
|
||||
view[i] = input.charCodeAt(i);
|
||||
}
|
||||
return view.buffer;
|
||||
|
@ -76,10 +76,10 @@ export class Request extends Body {
|
||||
constructor(requestOptions: RequestArgs) {
|
||||
super();
|
||||
// TODO: assert that url is present
|
||||
let url = requestOptions.url;
|
||||
const url = requestOptions.url;
|
||||
this.url = requestOptions.url;
|
||||
if (isPresent(requestOptions.search)) {
|
||||
let search = requestOptions.search.toString();
|
||||
const search = requestOptions.search.toString();
|
||||
if (search.length > 0) {
|
||||
let prefix = '?';
|
||||
if (this.url.indexOf('?') != -1) {
|
||||
|
@ -86,7 +86,7 @@ export class URLSearchParams {
|
||||
}
|
||||
|
||||
clone(): URLSearchParams {
|
||||
var clone = new URLSearchParams('', this.queryEncoder);
|
||||
const clone = new URLSearchParams('', this.queryEncoder);
|
||||
clone.appendAll(this);
|
||||
return clone;
|
||||
}
|
||||
@ -163,7 +163,7 @@ export class URLSearchParams {
|
||||
searchParams.paramsMap.forEach((value, param) => {
|
||||
const list = this.paramsMap.get(param) || [];
|
||||
list.length = 0;
|
||||
for (var i = 0; i < value.length; ++i) {
|
||||
for (let i = 0; i < value.length; ++i) {
|
||||
list.push(value[i]);
|
||||
}
|
||||
this.paramsMap.set(param, list);
|
||||
|
@ -17,7 +17,7 @@ import {ReadyState, RequestMethod, ResponseType} from '../../src/enums';
|
||||
import {isPresent} from '../../src/facade/lang';
|
||||
import {Request} from '../../src/static_request';
|
||||
|
||||
var existingScripts: MockBrowserJsonp[] = [];
|
||||
let existingScripts: MockBrowserJsonp[] = [];
|
||||
|
||||
class MockBrowserJsonp extends BrowserJsonp {
|
||||
src: string;
|
||||
@ -32,14 +32,14 @@ class MockBrowserJsonp extends BrowserJsonp {
|
||||
if (!isPresent(argument)) {
|
||||
argument = {};
|
||||
}
|
||||
let cb = this.callbacks.get(type);
|
||||
const cb = this.callbacks.get(type);
|
||||
if (isPresent(cb)) {
|
||||
cb(argument);
|
||||
}
|
||||
}
|
||||
|
||||
build(url: string) {
|
||||
var script = new MockBrowserJsonp();
|
||||
const script = new MockBrowserJsonp();
|
||||
script.src = url;
|
||||
existingScripts.push(script);
|
||||
return script;
|
||||
@ -57,20 +57,20 @@ export function main() {
|
||||
let sampleRequest: Request;
|
||||
|
||||
beforeEach(() => {
|
||||
let injector = ReflectiveInjector.resolveAndCreate([
|
||||
const injector = ReflectiveInjector.resolveAndCreate([
|
||||
{provide: ResponseOptions, useClass: BaseResponseOptions},
|
||||
{provide: BrowserJsonp, useClass: MockBrowserJsonp},
|
||||
{provide: JSONPBackend, useClass: JSONPBackend_}
|
||||
]);
|
||||
backend = injector.get(JSONPBackend);
|
||||
let base = new BaseRequestOptions();
|
||||
const base = new BaseRequestOptions();
|
||||
sampleRequest = new Request(base.merge(new RequestOptions({url: 'https://google.com'})));
|
||||
});
|
||||
|
||||
afterEach(() => { existingScripts = []; });
|
||||
|
||||
it('should create a connection', () => {
|
||||
var instance: JSONPConnection;
|
||||
let instance: JSONPConnection;
|
||||
expect(() => instance = backend.createConnection(sampleRequest)).not.toThrow();
|
||||
expect(instance).toBeAnInstanceOf(JSONPConnection);
|
||||
});
|
||||
@ -79,7 +79,7 @@ export function main() {
|
||||
describe('JSONPConnection', () => {
|
||||
it('should use the injected BaseResponseOptions to create the response',
|
||||
inject([AsyncTestCompleter], (async: AsyncTestCompleter) => {
|
||||
let connection = new JSONPConnection_(
|
||||
const connection = new JSONPConnection_(
|
||||
sampleRequest, new MockBrowserJsonp(),
|
||||
new ResponseOptions({type: ResponseType.Error}));
|
||||
connection.response.subscribe(res => {
|
||||
@ -92,13 +92,13 @@ export function main() {
|
||||
|
||||
it('should ignore load/callback when disposed',
|
||||
inject([AsyncTestCompleter], (async: AsyncTestCompleter) => {
|
||||
var connection = new JSONPConnection_(sampleRequest, new MockBrowserJsonp());
|
||||
let spy = new SpyObject();
|
||||
let loadSpy = spy.spy('load');
|
||||
let errorSpy = spy.spy('error');
|
||||
let returnSpy = spy.spy('cancelled');
|
||||
const connection = new JSONPConnection_(sampleRequest, new MockBrowserJsonp());
|
||||
const spy = new SpyObject();
|
||||
const loadSpy = spy.spy('load');
|
||||
const errorSpy = spy.spy('error');
|
||||
const returnSpy = spy.spy('cancelled');
|
||||
|
||||
let request = connection.response.subscribe(loadSpy, errorSpy, returnSpy);
|
||||
const request = connection.response.subscribe(loadSpy, errorSpy, returnSpy);
|
||||
request.unsubscribe();
|
||||
|
||||
connection.finished('Fake data');
|
||||
@ -115,7 +115,7 @@ export function main() {
|
||||
|
||||
it('should report error if loaded without invoking callback',
|
||||
inject([AsyncTestCompleter], (async: AsyncTestCompleter) => {
|
||||
let connection = new JSONPConnection_(sampleRequest, new MockBrowserJsonp());
|
||||
const connection = new JSONPConnection_(sampleRequest, new MockBrowserJsonp());
|
||||
connection.response.subscribe(
|
||||
res => {
|
||||
expect('response listener called').toBe(false);
|
||||
@ -131,7 +131,7 @@ export function main() {
|
||||
|
||||
it('should report error if script contains error',
|
||||
inject([AsyncTestCompleter], (async: AsyncTestCompleter) => {
|
||||
let connection = new JSONPConnection_(sampleRequest, new MockBrowserJsonp());
|
||||
const connection = new JSONPConnection_(sampleRequest, new MockBrowserJsonp());
|
||||
|
||||
connection.response.subscribe(
|
||||
res => {
|
||||
@ -150,8 +150,8 @@ export function main() {
|
||||
[RequestMethod.Post, RequestMethod.Put, RequestMethod.Delete, RequestMethod.Options,
|
||||
RequestMethod.Head, RequestMethod.Patch]
|
||||
.forEach(method => {
|
||||
let base = new BaseRequestOptions();
|
||||
let req = new Request(
|
||||
const base = new BaseRequestOptions();
|
||||
const req = new Request(
|
||||
base.merge(new RequestOptions({url: 'https://google.com', method: method})));
|
||||
expect(() => new JSONPConnection_(req, new MockBrowserJsonp()).response.subscribe())
|
||||
.toThrowError();
|
||||
@ -160,7 +160,7 @@ export function main() {
|
||||
|
||||
it('should respond with data passed to callback',
|
||||
inject([AsyncTestCompleter], (async: AsyncTestCompleter) => {
|
||||
let connection = new JSONPConnection_(sampleRequest, new MockBrowserJsonp());
|
||||
const connection = new JSONPConnection_(sampleRequest, new MockBrowserJsonp());
|
||||
|
||||
connection.response.subscribe(res => {
|
||||
expect(res.json()).toEqual(({fake_payload: true, blob_id: 12345}));
|
||||
|
@ -20,17 +20,17 @@ import {MockBackend, MockConnection} from '../../testing/mock_backend';
|
||||
export function main() {
|
||||
describe('MockBackend', () => {
|
||||
|
||||
var backend: MockBackend;
|
||||
var sampleRequest1: Request;
|
||||
var sampleResponse1: Response;
|
||||
var sampleRequest2: Request;
|
||||
var sampleResponse2: Response;
|
||||
let backend: MockBackend;
|
||||
let sampleRequest1: Request;
|
||||
let sampleResponse1: Response;
|
||||
let sampleRequest2: Request;
|
||||
let sampleResponse2: Response;
|
||||
|
||||
beforeEach(() => {
|
||||
var injector = ReflectiveInjector.resolveAndCreate(
|
||||
const injector = ReflectiveInjector.resolveAndCreate(
|
||||
[{provide: ResponseOptions, useClass: BaseResponseOptions}, MockBackend]);
|
||||
backend = injector.get(MockBackend);
|
||||
var base = new BaseRequestOptions();
|
||||
const base = new BaseRequestOptions();
|
||||
sampleRequest1 = new Request(base.merge(new RequestOptions({url: 'https://google.com'})));
|
||||
sampleResponse1 = new Response(new ResponseOptions({body: 'response1'}));
|
||||
sampleRequest2 = new Request(base.merge(new RequestOptions({url: 'https://google.com'})));
|
||||
@ -44,34 +44,34 @@ export function main() {
|
||||
});
|
||||
|
||||
it('should create a new connection and allow subscription', () => {
|
||||
let connection: MockConnection = backend.createConnection(sampleRequest1);
|
||||
const connection: MockConnection = backend.createConnection(sampleRequest1);
|
||||
connection.response.subscribe(() => {});
|
||||
});
|
||||
|
||||
it('should allow responding after subscription',
|
||||
inject([AsyncTestCompleter], (async: AsyncTestCompleter) => {
|
||||
let connection: MockConnection = backend.createConnection(sampleRequest1);
|
||||
const connection: MockConnection = backend.createConnection(sampleRequest1);
|
||||
connection.response.subscribe(() => { async.done(); });
|
||||
connection.mockRespond(sampleResponse1);
|
||||
}));
|
||||
|
||||
it('should allow subscribing after responding',
|
||||
inject([AsyncTestCompleter], (async: AsyncTestCompleter) => {
|
||||
let connection: MockConnection = backend.createConnection(sampleRequest1);
|
||||
const connection: MockConnection = backend.createConnection(sampleRequest1);
|
||||
connection.mockRespond(sampleResponse1);
|
||||
connection.response.subscribe(() => { async.done(); });
|
||||
}));
|
||||
|
||||
it('should allow responding after subscription with an error',
|
||||
inject([AsyncTestCompleter], (async: AsyncTestCompleter) => {
|
||||
let connection: MockConnection = backend.createConnection(sampleRequest1);
|
||||
const connection: MockConnection = backend.createConnection(sampleRequest1);
|
||||
connection.response.subscribe(null, () => { async.done(); });
|
||||
connection.mockError(new Error('nope'));
|
||||
}));
|
||||
|
||||
it('should not throw when there are no unresolved requests',
|
||||
inject([AsyncTestCompleter], (async: AsyncTestCompleter) => {
|
||||
let connection: MockConnection = backend.createConnection(sampleRequest1);
|
||||
const connection: MockConnection = backend.createConnection(sampleRequest1);
|
||||
connection.response.subscribe(() => { async.done(); });
|
||||
connection.mockRespond(sampleResponse1);
|
||||
backend.verifyNoPendingRequests();
|
||||
@ -79,15 +79,15 @@ export function main() {
|
||||
|
||||
xit('should throw when there are unresolved requests',
|
||||
inject([AsyncTestCompleter], (async: AsyncTestCompleter) => {
|
||||
let connection: MockConnection = backend.createConnection(sampleRequest1);
|
||||
const connection: MockConnection = backend.createConnection(sampleRequest1);
|
||||
connection.response.subscribe(() => { async.done(); });
|
||||
backend.verifyNoPendingRequests();
|
||||
}));
|
||||
|
||||
it('should work when requests are resolved out of order',
|
||||
inject([AsyncTestCompleter], (async: AsyncTestCompleter) => {
|
||||
let connection1: MockConnection = backend.createConnection(sampleRequest1);
|
||||
let connection2: MockConnection = backend.createConnection(sampleRequest1);
|
||||
const connection1: MockConnection = backend.createConnection(sampleRequest1);
|
||||
const connection2: MockConnection = backend.createConnection(sampleRequest1);
|
||||
connection1.response.subscribe(() => { async.done(); });
|
||||
connection2.response.subscribe(() => {});
|
||||
connection2.mockRespond(sampleResponse1);
|
||||
@ -97,9 +97,9 @@ export function main() {
|
||||
|
||||
xit('should allow double subscribing',
|
||||
inject([AsyncTestCompleter], (async: AsyncTestCompleter) => {
|
||||
let responses: Response[] = [sampleResponse1, sampleResponse2];
|
||||
const responses: Response[] = [sampleResponse1, sampleResponse2];
|
||||
backend.connections.subscribe((c: MockConnection) => c.mockRespond(responses.shift()));
|
||||
let responseObservable: ReplaySubject<Response> =
|
||||
const responseObservable: ReplaySubject<Response> =
|
||||
backend.createConnection(sampleRequest1).response;
|
||||
responseObservable.subscribe(res => expect(res.text()).toBe('response1'));
|
||||
responseObservable.subscribe(
|
||||
@ -108,8 +108,8 @@ export function main() {
|
||||
|
||||
// TODO(robwormald): readyStates are leaving?
|
||||
it('should allow resolution of requests manually', () => {
|
||||
let connection1: MockConnection = backend.createConnection(sampleRequest1);
|
||||
let connection2: MockConnection = backend.createConnection(sampleRequest1);
|
||||
const connection1: MockConnection = backend.createConnection(sampleRequest1);
|
||||
const connection2: MockConnection = backend.createConnection(sampleRequest1);
|
||||
connection1.response.subscribe(() => {});
|
||||
connection2.response.subscribe(() => {});
|
||||
backend.resolveAllConnections();
|
||||
|
@ -21,11 +21,11 @@ import {Request} from '../../src/static_request';
|
||||
import {Response} from '../../src/static_response';
|
||||
import {URLSearchParams} from '../../src/url_search_params';
|
||||
|
||||
var abortSpy: any;
|
||||
var sendSpy: any;
|
||||
var openSpy: any;
|
||||
var setRequestHeaderSpy: any;
|
||||
var existingXHRs: MockBrowserXHR[] = [];
|
||||
let abortSpy: any;
|
||||
let sendSpy: any;
|
||||
let openSpy: any;
|
||||
let setRequestHeaderSpy: any;
|
||||
let existingXHRs: MockBrowserXHR[] = [];
|
||||
|
||||
class MockBrowserXHR extends BrowserXhr {
|
||||
abort: any;
|
||||
@ -44,7 +44,7 @@ class MockBrowserXHR extends BrowserXhr {
|
||||
|
||||
constructor() {
|
||||
super();
|
||||
var spy = new SpyObject();
|
||||
const spy = new SpyObject();
|
||||
this.abort = abortSpy = spy.spy('abort');
|
||||
this.send = sendSpy = spy.spy('send');
|
||||
this.open = openSpy = spy.spy('open');
|
||||
@ -79,7 +79,7 @@ class MockBrowserXHR extends BrowserXhr {
|
||||
dispatchEvent(type: string) { this.callbacks.get(type)({}); }
|
||||
|
||||
build() {
|
||||
var xhr = new MockBrowserXHR();
|
||||
const xhr = new MockBrowserXHR();
|
||||
existingXHRs.push(xhr);
|
||||
return xhr;
|
||||
}
|
||||
@ -87,8 +87,8 @@ class MockBrowserXHR extends BrowserXhr {
|
||||
|
||||
export function main() {
|
||||
describe('XHRBackend', () => {
|
||||
var backend: XHRBackend;
|
||||
var sampleRequest: Request;
|
||||
let backend: XHRBackend;
|
||||
let sampleRequest: Request;
|
||||
|
||||
beforeEachProviders(
|
||||
() =>
|
||||
@ -99,7 +99,7 @@ export function main() {
|
||||
|
||||
beforeEach(inject([XHRBackend], (be: XHRBackend) => {
|
||||
backend = be;
|
||||
let base = new BaseRequestOptions();
|
||||
const base = new BaseRequestOptions();
|
||||
sampleRequest = new Request(base.merge(new RequestOptions({url: 'https://google.com'})));
|
||||
}));
|
||||
|
||||
@ -149,7 +149,7 @@ export function main() {
|
||||
describe('XHRConnection', () => {
|
||||
it('should use the injected BaseResponseOptions to create the response',
|
||||
inject([AsyncTestCompleter], (async: AsyncTestCompleter) => {
|
||||
var connection = new XHRConnection(
|
||||
const connection = new XHRConnection(
|
||||
sampleRequest, new MockBrowserXHR(),
|
||||
new ResponseOptions({type: ResponseType.Error}));
|
||||
connection.response.subscribe((res: Response) => {
|
||||
@ -161,7 +161,7 @@ export function main() {
|
||||
}));
|
||||
|
||||
it('should complete a request', inject([AsyncTestCompleter], (async: AsyncTestCompleter) => {
|
||||
var connection = new XHRConnection(
|
||||
const connection = new XHRConnection(
|
||||
sampleRequest, new MockBrowserXHR(),
|
||||
new ResponseOptions({type: ResponseType.Error}));
|
||||
connection.response.subscribe(
|
||||
@ -172,15 +172,15 @@ export function main() {
|
||||
}));
|
||||
|
||||
it('should call abort when disposed', () => {
|
||||
var connection = new XHRConnection(sampleRequest, new MockBrowserXHR());
|
||||
var request = connection.response.subscribe();
|
||||
const connection = new XHRConnection(sampleRequest, new MockBrowserXHR());
|
||||
const request = connection.response.subscribe();
|
||||
request.unsubscribe();
|
||||
expect(abortSpy).toHaveBeenCalled();
|
||||
});
|
||||
|
||||
it('should create an error Response on error',
|
||||
inject([AsyncTestCompleter], (async: AsyncTestCompleter) => {
|
||||
var connection = new XHRConnection(
|
||||
const connection = new XHRConnection(
|
||||
sampleRequest, new MockBrowserXHR(),
|
||||
new ResponseOptions({type: ResponseType.Error}));
|
||||
connection.response.subscribe(null, (res: Response) => {
|
||||
@ -192,7 +192,7 @@ export function main() {
|
||||
|
||||
it('should set the status text and status code on error',
|
||||
inject([AsyncTestCompleter], (async: AsyncTestCompleter) => {
|
||||
var connection = new XHRConnection(
|
||||
const connection = new XHRConnection(
|
||||
sampleRequest, new MockBrowserXHR(),
|
||||
new ResponseOptions({type: ResponseType.Error}));
|
||||
connection.response.subscribe(null, (res: Response) => {
|
||||
@ -209,16 +209,16 @@ export function main() {
|
||||
}));
|
||||
|
||||
it('should call open with method and url when subscribed to', () => {
|
||||
var connection = new XHRConnection(sampleRequest, new MockBrowserXHR());
|
||||
const connection = new XHRConnection(sampleRequest, new MockBrowserXHR());
|
||||
expect(openSpy).not.toHaveBeenCalled();
|
||||
connection.response.subscribe();
|
||||
expect(openSpy).toHaveBeenCalledWith('GET', sampleRequest.url);
|
||||
});
|
||||
|
||||
it('should call send on the backend with request body when subscribed to', () => {
|
||||
var body = 'Some body to love';
|
||||
var base = new BaseRequestOptions();
|
||||
var connection = new XHRConnection(
|
||||
const body = 'Some body to love';
|
||||
const base = new BaseRequestOptions();
|
||||
const connection = new XHRConnection(
|
||||
new Request(base.merge(new RequestOptions({body: body}))), new MockBrowserXHR());
|
||||
expect(sendSpy).not.toHaveBeenCalled();
|
||||
connection.response.subscribe();
|
||||
@ -226,11 +226,11 @@ export function main() {
|
||||
});
|
||||
|
||||
it('should attach headers to the request', () => {
|
||||
var headers =
|
||||
const headers =
|
||||
new Headers({'Content-Type': 'text/xml', 'Breaking-Bad': '<3', 'X-Multi': ['a', 'b']});
|
||||
|
||||
var base = new BaseRequestOptions();
|
||||
var connection = new XHRConnection(
|
||||
const base = new BaseRequestOptions();
|
||||
const connection = new XHRConnection(
|
||||
new Request(base.merge(new RequestOptions({headers: headers}))), new MockBrowserXHR());
|
||||
connection.response.subscribe();
|
||||
expect(setRequestHeaderSpy).toHaveBeenCalledWith('Content-Type', 'text/xml');
|
||||
@ -239,10 +239,10 @@ export function main() {
|
||||
});
|
||||
|
||||
it('should skip content type detection if custom content type header is set', () => {
|
||||
let headers = new Headers({'Content-Type': 'text/plain'});
|
||||
let body = {test: 'val'};
|
||||
let base = new BaseRequestOptions();
|
||||
let connection = new XHRConnection(
|
||||
const headers = new Headers({'Content-Type': 'text/plain'});
|
||||
const body = {test: 'val'};
|
||||
const base = new BaseRequestOptions();
|
||||
const connection = new XHRConnection(
|
||||
new Request(base.merge(new RequestOptions({body: body, headers: headers}))),
|
||||
new MockBrowserXHR());
|
||||
connection.response.subscribe();
|
||||
@ -252,9 +252,9 @@ export function main() {
|
||||
});
|
||||
|
||||
it('should use object body and detect content type header to the request', () => {
|
||||
var body = {test: 'val'};
|
||||
var base = new BaseRequestOptions();
|
||||
var connection = new XHRConnection(
|
||||
const body = {test: 'val'};
|
||||
const base = new BaseRequestOptions();
|
||||
const connection = new XHRConnection(
|
||||
new Request(base.merge(new RequestOptions({body: body}))), new MockBrowserXHR());
|
||||
connection.response.subscribe();
|
||||
expect(sendSpy).toHaveBeenCalledWith(JSON.stringify(body, null, 2));
|
||||
@ -262,9 +262,9 @@ export function main() {
|
||||
});
|
||||
|
||||
it('should use number body and detect content type header to the request', () => {
|
||||
var body = 23;
|
||||
var base = new BaseRequestOptions();
|
||||
var connection = new XHRConnection(
|
||||
const body = 23;
|
||||
const base = new BaseRequestOptions();
|
||||
const connection = new XHRConnection(
|
||||
new Request(base.merge(new RequestOptions({body: body}))), new MockBrowserXHR());
|
||||
connection.response.subscribe();
|
||||
expect(sendSpy).toHaveBeenCalledWith('23');
|
||||
@ -272,9 +272,9 @@ export function main() {
|
||||
});
|
||||
|
||||
it('should use string body and detect content type header to the request', () => {
|
||||
var body = 'some string';
|
||||
var base = new BaseRequestOptions();
|
||||
var connection = new XHRConnection(
|
||||
const body = 'some string';
|
||||
const base = new BaseRequestOptions();
|
||||
const connection = new XHRConnection(
|
||||
new Request(base.merge(new RequestOptions({body: body}))), new MockBrowserXHR());
|
||||
connection.response.subscribe();
|
||||
expect(sendSpy).toHaveBeenCalledWith(body);
|
||||
@ -282,11 +282,11 @@ export function main() {
|
||||
});
|
||||
|
||||
it('should use URLSearchParams body and detect content type header to the request', () => {
|
||||
var body = new URLSearchParams();
|
||||
const body = new URLSearchParams();
|
||||
body.set('test1', 'val1');
|
||||
body.set('test2', 'val2');
|
||||
var base = new BaseRequestOptions();
|
||||
var connection = new XHRConnection(
|
||||
const base = new BaseRequestOptions();
|
||||
const connection = new XHRConnection(
|
||||
new Request(base.merge(new RequestOptions({body: body}))), new MockBrowserXHR());
|
||||
connection.response.subscribe();
|
||||
expect(sendSpy).toHaveBeenCalledWith('test1=val1&test2=val2');
|
||||
@ -313,13 +313,13 @@ export function main() {
|
||||
};
|
||||
|
||||
it('should use FormData body and detect content type header to the request', () => {
|
||||
var body = new FormData();
|
||||
const body = new FormData();
|
||||
body.append('test1', 'val1');
|
||||
body.append('test2', 123456);
|
||||
var blob = createBlob(['body { color: red; }'], 'text/css');
|
||||
const blob = createBlob(['body { color: red; }'], 'text/css');
|
||||
body.append('userfile', blob);
|
||||
var base = new BaseRequestOptions();
|
||||
var connection = new XHRConnection(
|
||||
const base = new BaseRequestOptions();
|
||||
const connection = new XHRConnection(
|
||||
new Request(base.merge(new RequestOptions({body: body}))), new MockBrowserXHR());
|
||||
connection.response.subscribe();
|
||||
expect(sendSpy).toHaveBeenCalledWith(body);
|
||||
@ -327,9 +327,9 @@ export function main() {
|
||||
});
|
||||
|
||||
it('should use blob body and detect content type header to the request', () => {
|
||||
var body = createBlob(['body { color: red; }'], 'text/css');
|
||||
var base = new BaseRequestOptions();
|
||||
var connection = new XHRConnection(
|
||||
const body = createBlob(['body { color: red; }'], 'text/css');
|
||||
const base = new BaseRequestOptions();
|
||||
const connection = new XHRConnection(
|
||||
new Request(base.merge(new RequestOptions({body: body}))), new MockBrowserXHR());
|
||||
connection.response.subscribe();
|
||||
expect(sendSpy).toHaveBeenCalledWith(body);
|
||||
@ -337,9 +337,9 @@ export function main() {
|
||||
});
|
||||
|
||||
it('should use blob body without type to the request', () => {
|
||||
var body = createBlob(['body { color: red; }'], null);
|
||||
var base = new BaseRequestOptions();
|
||||
var connection = new XHRConnection(
|
||||
const body = createBlob(['body { color: red; }'], null);
|
||||
const base = new BaseRequestOptions();
|
||||
const connection = new XHRConnection(
|
||||
new Request(base.merge(new RequestOptions({body: body}))), new MockBrowserXHR());
|
||||
connection.response.subscribe();
|
||||
expect(sendSpy).toHaveBeenCalledWith(body);
|
||||
@ -348,10 +348,10 @@ export function main() {
|
||||
|
||||
it('should use blob body without type with custom content type header to the request',
|
||||
() => {
|
||||
var headers = new Headers({'Content-Type': 'text/css'});
|
||||
var body = createBlob(['body { color: red; }'], null);
|
||||
var base = new BaseRequestOptions();
|
||||
var connection = new XHRConnection(
|
||||
const headers = new Headers({'Content-Type': 'text/css'});
|
||||
const body = createBlob(['body { color: red; }'], null);
|
||||
const base = new BaseRequestOptions();
|
||||
const connection = new XHRConnection(
|
||||
new Request(base.merge(new RequestOptions({body: body, headers: headers}))),
|
||||
new MockBrowserXHR());
|
||||
connection.response.subscribe();
|
||||
@ -360,13 +360,13 @@ export function main() {
|
||||
});
|
||||
|
||||
it('should use array buffer body to the request', () => {
|
||||
var body = new ArrayBuffer(512);
|
||||
var longInt8View = new Uint8Array(body);
|
||||
for (var i = 0; i < longInt8View.length; i++) {
|
||||
const body = new ArrayBuffer(512);
|
||||
const longInt8View = new Uint8Array(body);
|
||||
for (let i = 0; i < longInt8View.length; i++) {
|
||||
longInt8View[i] = i % 255;
|
||||
}
|
||||
var base = new BaseRequestOptions();
|
||||
var connection = new XHRConnection(
|
||||
const base = new BaseRequestOptions();
|
||||
const connection = new XHRConnection(
|
||||
new Request(base.merge(new RequestOptions({body: body}))), new MockBrowserXHR());
|
||||
connection.response.subscribe();
|
||||
expect(sendSpy).toHaveBeenCalledWith(body);
|
||||
@ -375,14 +375,14 @@ export function main() {
|
||||
|
||||
it('should use array buffer body without type with custom content type header to the request',
|
||||
() => {
|
||||
var headers = new Headers({'Content-Type': 'text/css'});
|
||||
var body = new ArrayBuffer(512);
|
||||
var longInt8View = new Uint8Array(body);
|
||||
for (var i = 0; i < longInt8View.length; i++) {
|
||||
const headers = new Headers({'Content-Type': 'text/css'});
|
||||
const body = new ArrayBuffer(512);
|
||||
const longInt8View = new Uint8Array(body);
|
||||
for (let i = 0; i < longInt8View.length; i++) {
|
||||
longInt8View[i] = i % 255;
|
||||
}
|
||||
var base = new BaseRequestOptions();
|
||||
var connection = new XHRConnection(
|
||||
const base = new BaseRequestOptions();
|
||||
const connection = new XHRConnection(
|
||||
new Request(base.merge(new RequestOptions({body: body, headers: headers}))),
|
||||
new MockBrowserXHR());
|
||||
connection.response.subscribe();
|
||||
@ -393,8 +393,8 @@ export function main() {
|
||||
|
||||
it('should return the correct status code',
|
||||
inject([AsyncTestCompleter], (async: AsyncTestCompleter) => {
|
||||
var statusCode = 418;
|
||||
var connection = new XHRConnection(
|
||||
const statusCode = 418;
|
||||
const connection = new XHRConnection(
|
||||
sampleRequest, new MockBrowserXHR(), new ResponseOptions({status: statusCode}));
|
||||
|
||||
connection.response.subscribe(
|
||||
@ -412,10 +412,10 @@ export function main() {
|
||||
|
||||
it('should call next and complete on 200 codes',
|
||||
inject([AsyncTestCompleter], (async: AsyncTestCompleter) => {
|
||||
var nextCalled = false;
|
||||
var errorCalled = false;
|
||||
var statusCode = 200;
|
||||
var connection = new XHRConnection(
|
||||
let nextCalled = false;
|
||||
let errorCalled = false;
|
||||
const statusCode = 200;
|
||||
const connection = new XHRConnection(
|
||||
sampleRequest, new MockBrowserXHR(), new ResponseOptions({status: statusCode}));
|
||||
|
||||
connection.response.subscribe(
|
||||
@ -436,8 +436,8 @@ export function main() {
|
||||
|
||||
it('should set ok to true on 200 return',
|
||||
inject([AsyncTestCompleter], (async: AsyncTestCompleter) => {
|
||||
var statusCode = 200;
|
||||
var connection = new XHRConnection(
|
||||
const statusCode = 200;
|
||||
const connection = new XHRConnection(
|
||||
sampleRequest, new MockBrowserXHR(), new ResponseOptions({status: statusCode}));
|
||||
|
||||
connection.response.subscribe(res => {
|
||||
@ -451,8 +451,8 @@ export function main() {
|
||||
|
||||
it('should set ok to false on 300 return',
|
||||
inject([AsyncTestCompleter], (async: AsyncTestCompleter) => {
|
||||
var statusCode = 300;
|
||||
var connection = new XHRConnection(
|
||||
const statusCode = 300;
|
||||
const connection = new XHRConnection(
|
||||
sampleRequest, new MockBrowserXHR(), new ResponseOptions({status: statusCode}));
|
||||
|
||||
connection.response.subscribe(
|
||||
@ -468,10 +468,10 @@ export function main() {
|
||||
|
||||
it('should call error and not complete on 300+ codes',
|
||||
inject([AsyncTestCompleter], (async: AsyncTestCompleter) => {
|
||||
var nextCalled = false;
|
||||
var errorCalled = false;
|
||||
var statusCode = 301;
|
||||
var connection = new XHRConnection(
|
||||
let nextCalled = false;
|
||||
const errorCalled = false;
|
||||
const statusCode = 301;
|
||||
const connection = new XHRConnection(
|
||||
sampleRequest, new MockBrowserXHR(), new ResponseOptions({status: statusCode}));
|
||||
|
||||
connection.response.subscribe(
|
||||
@ -488,9 +488,9 @@ export function main() {
|
||||
}));
|
||||
it('should normalize IE\'s 1223 status code into 204',
|
||||
inject([AsyncTestCompleter], (async: AsyncTestCompleter) => {
|
||||
var statusCode = 1223;
|
||||
var normalizedCode = 204;
|
||||
var connection = new XHRConnection(
|
||||
const statusCode = 1223;
|
||||
const normalizedCode = 204;
|
||||
const connection = new XHRConnection(
|
||||
sampleRequest, new MockBrowserXHR(), new ResponseOptions({status: statusCode}));
|
||||
|
||||
connection.response.subscribe((res: Response) => {
|
||||
@ -504,12 +504,12 @@ export function main() {
|
||||
|
||||
it('should normalize responseText and response',
|
||||
inject([AsyncTestCompleter], (async: AsyncTestCompleter) => {
|
||||
var responseBody = 'Doge';
|
||||
const responseBody = 'Doge';
|
||||
|
||||
var connection1 =
|
||||
const connection1 =
|
||||
new XHRConnection(sampleRequest, new MockBrowserXHR(), new ResponseOptions());
|
||||
|
||||
var connection2 =
|
||||
const connection2 =
|
||||
new XHRConnection(sampleRequest, new MockBrowserXHR(), new ResponseOptions());
|
||||
|
||||
connection1.response.subscribe((res: Response) => {
|
||||
@ -529,7 +529,8 @@ export function main() {
|
||||
}));
|
||||
|
||||
it('should strip XSSI prefixes', inject([AsyncTestCompleter], (async: AsyncTestCompleter) => {
|
||||
var conn = new XHRConnection(sampleRequest, new MockBrowserXHR(), new ResponseOptions());
|
||||
const conn =
|
||||
new XHRConnection(sampleRequest, new MockBrowserXHR(), new ResponseOptions());
|
||||
conn.response.subscribe((res: Response) => {
|
||||
expect(res.text()).toBe('{json: "object"}');
|
||||
async.done();
|
||||
@ -540,7 +541,8 @@ export function main() {
|
||||
}));
|
||||
|
||||
it('should strip XSSI prefixes', inject([AsyncTestCompleter], (async: AsyncTestCompleter) => {
|
||||
var conn = new XHRConnection(sampleRequest, new MockBrowserXHR(), new ResponseOptions());
|
||||
const conn =
|
||||
new XHRConnection(sampleRequest, new MockBrowserXHR(), new ResponseOptions());
|
||||
conn.response.subscribe((res: Response) => {
|
||||
expect(res.text()).toBe('{json: "object"}');
|
||||
async.done();
|
||||
@ -552,7 +554,8 @@ export function main() {
|
||||
|
||||
it('should strip XSSI prefix from errors',
|
||||
inject([AsyncTestCompleter], (async: AsyncTestCompleter) => {
|
||||
var conn = new XHRConnection(sampleRequest, new MockBrowserXHR(), new ResponseOptions());
|
||||
const conn =
|
||||
new XHRConnection(sampleRequest, new MockBrowserXHR(), new ResponseOptions());
|
||||
conn.response.subscribe(null, (res: Response) => {
|
||||
expect(res.text()).toBe('{json: "object"}');
|
||||
async.done();
|
||||
@ -564,11 +567,11 @@ export function main() {
|
||||
|
||||
it('should parse response headers and add them to the response',
|
||||
inject([AsyncTestCompleter], (async: AsyncTestCompleter) => {
|
||||
var statusCode = 200;
|
||||
var connection = new XHRConnection(
|
||||
const statusCode = 200;
|
||||
const connection = new XHRConnection(
|
||||
sampleRequest, new MockBrowserXHR(), new ResponseOptions({status: statusCode}));
|
||||
|
||||
let responseHeaderString = `Date: Fri, 20 Nov 2015 01:45:26 GMT
|
||||
const responseHeaderString = `Date: Fri, 20 Nov 2015 01:45:26 GMT
|
||||
Content-Type: application/json; charset=utf-8
|
||||
Transfer-Encoding: chunked
|
||||
Connection: keep-alive`;
|
||||
@ -588,8 +591,8 @@ Connection: keep-alive`;
|
||||
|
||||
it('should add the responseURL to the response',
|
||||
inject([AsyncTestCompleter], (async: AsyncTestCompleter) => {
|
||||
var statusCode = 200;
|
||||
var connection = new XHRConnection(
|
||||
const statusCode = 200;
|
||||
const connection = new XHRConnection(
|
||||
sampleRequest, new MockBrowserXHR(), new ResponseOptions({status: statusCode}));
|
||||
|
||||
connection.response.subscribe((res: Response) => {
|
||||
@ -604,10 +607,10 @@ Connection: keep-alive`;
|
||||
|
||||
it('should add use the X-Request-URL in CORS situations',
|
||||
inject([AsyncTestCompleter], (async: AsyncTestCompleter) => {
|
||||
var statusCode = 200;
|
||||
var connection = new XHRConnection(
|
||||
const statusCode = 200;
|
||||
const connection = new XHRConnection(
|
||||
sampleRequest, new MockBrowserXHR(), new ResponseOptions({status: statusCode}));
|
||||
var responseHeaders = `X-Request-URL: http://somedomain.com
|
||||
const responseHeaders = `X-Request-URL: http://somedomain.com
|
||||
Foo: Bar`;
|
||||
|
||||
connection.response.subscribe((res: Response) => {
|
||||
@ -622,8 +625,8 @@ Connection: keep-alive`;
|
||||
|
||||
it('should set the status text property from the XMLHttpRequest instance if present',
|
||||
inject([AsyncTestCompleter], (async: AsyncTestCompleter) => {
|
||||
var statusText = 'test';
|
||||
var connection = new XHRConnection(sampleRequest, new MockBrowserXHR());
|
||||
const statusText = 'test';
|
||||
const connection = new XHRConnection(sampleRequest, new MockBrowserXHR());
|
||||
|
||||
connection.response.subscribe((res: Response) => {
|
||||
expect(res.statusText).toBe(statusText);
|
||||
@ -637,7 +640,7 @@ Connection: keep-alive`;
|
||||
|
||||
it('should set status text to "OK" if it is not present in XMLHttpRequest instance',
|
||||
inject([AsyncTestCompleter], (async: AsyncTestCompleter) => {
|
||||
var connection = new XHRConnection(sampleRequest, new MockBrowserXHR());
|
||||
const connection = new XHRConnection(sampleRequest, new MockBrowserXHR());
|
||||
|
||||
connection.response.subscribe((res: Response) => {
|
||||
expect(res.statusText).toBe('OK');
|
||||
@ -650,12 +653,12 @@ Connection: keep-alive`;
|
||||
|
||||
it('should set withCredentials to true when defined in request options for CORS situations',
|
||||
inject([AsyncTestCompleter], (async: AsyncTestCompleter) => {
|
||||
var statusCode = 200;
|
||||
const statusCode = 200;
|
||||
sampleRequest.withCredentials = true;
|
||||
var mockXhr = new MockBrowserXHR();
|
||||
var connection =
|
||||
const mockXhr = new MockBrowserXHR();
|
||||
const connection =
|
||||
new XHRConnection(sampleRequest, mockXhr, new ResponseOptions({status: statusCode}));
|
||||
var responseHeaders = `X-Request-URL: http://somedomain.com
|
||||
const responseHeaders = `X-Request-URL: http://somedomain.com
|
||||
Foo: Bar`;
|
||||
|
||||
connection.response.subscribe((res: Response) => {
|
||||
@ -671,9 +674,9 @@ Connection: keep-alive`;
|
||||
|
||||
it('should set the responseType attribute to blob when the corresponding response content type is present',
|
||||
inject([AsyncTestCompleter], (async: AsyncTestCompleter) => {
|
||||
var statusCode = 200;
|
||||
var base = new BaseRequestOptions();
|
||||
var connection = new XHRConnection(
|
||||
const statusCode = 200;
|
||||
const base = new BaseRequestOptions();
|
||||
const connection = new XHRConnection(
|
||||
new Request(
|
||||
base.merge(new RequestOptions({responseType: ResponseContentType.Blob}))),
|
||||
new MockBrowserXHR());
|
||||
|
@ -13,15 +13,15 @@ import {RequestMethod} from '../src/enums';
|
||||
export function main() {
|
||||
describe('BaseRequestOptions', () => {
|
||||
it('should create a new object when calling merge', () => {
|
||||
var options1 = new BaseRequestOptions();
|
||||
var options2 = options1.merge(new RequestOptions({method: RequestMethod.Delete}));
|
||||
const options1 = new BaseRequestOptions();
|
||||
const options2 = options1.merge(new RequestOptions({method: RequestMethod.Delete}));
|
||||
expect(options2).not.toBe(options1);
|
||||
expect(options2.method).toBe(RequestMethod.Delete);
|
||||
});
|
||||
|
||||
it('should retain previously merged values when merging again', () => {
|
||||
var options1 = new BaseRequestOptions();
|
||||
var options2 = options1.merge(new RequestOptions({method: RequestMethod.Delete}));
|
||||
const options1 = new BaseRequestOptions();
|
||||
const options2 = options1.merge(new RequestOptions({method: RequestMethod.Delete}));
|
||||
expect(options2.method).toBe(RequestMethod.Delete);
|
||||
});
|
||||
});
|
||||
|
@ -19,12 +19,12 @@ import {MockBackend, MockConnection} from '../testing/mock_backend';
|
||||
|
||||
export function main() {
|
||||
describe('injectables', () => {
|
||||
var url = 'http://foo.bar';
|
||||
var http: Http;
|
||||
var injector: Injector;
|
||||
var jsonpBackend: MockBackend;
|
||||
var xhrBackend: MockBackend;
|
||||
var jsonp: Jsonp;
|
||||
const url = 'http://foo.bar';
|
||||
let http: Http;
|
||||
let injector: Injector;
|
||||
let jsonpBackend: MockBackend;
|
||||
let xhrBackend: MockBackend;
|
||||
let jsonp: Jsonp;
|
||||
|
||||
beforeEach(() => {
|
||||
TestBed.configureTestingModule({
|
||||
@ -45,8 +45,8 @@ export function main() {
|
||||
jsonpBackend = injector.get(JSONPBackend);
|
||||
xhrBackend = injector.get(XHRBackend);
|
||||
|
||||
var xhrCreatedConnections = 0;
|
||||
var jsonpCreatedConnections = 0;
|
||||
let xhrCreatedConnections = 0;
|
||||
let jsonpCreatedConnections = 0;
|
||||
|
||||
xhrBackend.connections.subscribe(() => {
|
||||
xhrCreatedConnections++;
|
||||
@ -71,7 +71,7 @@ export function main() {
|
||||
});
|
||||
|
||||
describe('http', () => {
|
||||
let url = 'http://foo.bar';
|
||||
const url = 'http://foo.bar';
|
||||
let http: Http;
|
||||
let injector: Injector;
|
||||
let backend: MockBackend;
|
||||
@ -163,7 +163,7 @@ export function main() {
|
||||
expect(c.request.method).toEqual(RequestMethod.Post);
|
||||
c.mockRespond(baseResponse);
|
||||
});
|
||||
let requestOptions = {method: RequestMethod.Post};
|
||||
const requestOptions = {method: RequestMethod.Post};
|
||||
http.request('http://basic.connection', requestOptions).subscribe((res: Response) => {
|
||||
expect(res.text()).toBe('base response');
|
||||
async.done();
|
||||
@ -342,7 +342,7 @@ export function main() {
|
||||
describe('searchParams', () => {
|
||||
it('should append search params to url',
|
||||
inject([AsyncTestCompleter], (async: AsyncTestCompleter) => {
|
||||
var params = new URLSearchParams();
|
||||
const params = new URLSearchParams();
|
||||
params.append('q', 'puppies');
|
||||
backend.connections.subscribe((c: MockConnection) => {
|
||||
expect(c.request.url).toEqual('https://www.google.com?q=puppies');
|
||||
@ -404,7 +404,7 @@ export function main() {
|
||||
describe('Jsonp', () => {
|
||||
describe('.request()', () => {
|
||||
it('should throw if url is not a string or Request', () => {
|
||||
var req = <Request>{};
|
||||
const req = <Request>{};
|
||||
expect(() => jsonp.request(req))
|
||||
.toThrowError('First argument must be a url string or Request instance.');
|
||||
});
|
||||
@ -439,7 +439,7 @@ export function main() {
|
||||
|
||||
it('should be able to consume a buffer containing an ArrayBuffer as any response type',
|
||||
inject([AsyncTestCompleter], (async: AsyncTestCompleter) => {
|
||||
let arrayBuffer = stringToArrayBuffer('{"response": "ok"}');
|
||||
const arrayBuffer = stringToArrayBuffer('{"response": "ok"}');
|
||||
backend.connections.subscribe(
|
||||
(c: MockConnection) =>
|
||||
c.mockRespond(new Response(new ResponseOptions({body: arrayBuffer}))));
|
||||
@ -453,7 +453,7 @@ export function main() {
|
||||
|
||||
it('should be able to consume a buffer containing an Object as any response type',
|
||||
inject([AsyncTestCompleter], (async: AsyncTestCompleter) => {
|
||||
let simpleObject = {'content': 'ok'};
|
||||
const simpleObject = {'content': 'ok'};
|
||||
backend.connections.subscribe(
|
||||
(c: MockConnection) =>
|
||||
c.mockRespond(new Response(new ResponseOptions({body: simpleObject}))));
|
||||
@ -467,8 +467,8 @@ export function main() {
|
||||
|
||||
it('should preserve encoding of ArrayBuffer response',
|
||||
inject([AsyncTestCompleter], (async: AsyncTestCompleter) => {
|
||||
let message = 'é@θЂ';
|
||||
let arrayBuffer = stringToArrayBuffer(message);
|
||||
const message = 'é@θЂ';
|
||||
const arrayBuffer = stringToArrayBuffer(message);
|
||||
backend.connections.subscribe(
|
||||
(c: MockConnection) =>
|
||||
c.mockRespond(new Response(new ResponseOptions({body: arrayBuffer}))));
|
||||
@ -481,7 +481,7 @@ export function main() {
|
||||
|
||||
it('should preserve encoding of String response',
|
||||
inject([AsyncTestCompleter], (async: AsyncTestCompleter) => {
|
||||
let message = 'é@θЂ';
|
||||
const message = 'é@θЂ';
|
||||
backend.connections.subscribe(
|
||||
(c: MockConnection) =>
|
||||
c.mockRespond(new Response(new ResponseOptions({body: message}))));
|
||||
@ -493,10 +493,10 @@ export function main() {
|
||||
|
||||
it('should have an equivalent response independently of the buffer used',
|
||||
inject([AsyncTestCompleter], (async: AsyncTestCompleter) => {
|
||||
let message = {'param': 'content'};
|
||||
const message = {'param': 'content'};
|
||||
|
||||
backend.connections.subscribe((c: MockConnection) => {
|
||||
let body = (): any => {
|
||||
const body = (): any => {
|
||||
switch (c.request.responseType) {
|
||||
case ResponseContentType.Text:
|
||||
return JSON.stringify(message, null, 2);
|
||||
|
@ -12,8 +12,8 @@ import {URLSearchParams} from '../src/url_search_params';
|
||||
export function main() {
|
||||
describe('URLSearchParams', () => {
|
||||
it('should conform to spec', () => {
|
||||
var paramsString = 'q=URLUtils.searchParams&topic=api';
|
||||
var searchParams = new URLSearchParams(paramsString);
|
||||
const paramsString = 'q=URLUtils.searchParams&topic=api';
|
||||
const searchParams = new URLSearchParams(paramsString);
|
||||
|
||||
// Tests borrowed from example at
|
||||
// https://developer.mozilla.org/en-US/docs/Web/API/URLSearchParams
|
||||
@ -35,18 +35,18 @@ export function main() {
|
||||
|
||||
|
||||
it('should optionally accept a custom parser', () => {
|
||||
let fooEveryThingParser = {
|
||||
const fooEveryThingParser = {
|
||||
encodeKey() { return 'I AM KEY'; },
|
||||
encodeValue() { return 'I AM VALUE'; }
|
||||
};
|
||||
let params = new URLSearchParams('', fooEveryThingParser);
|
||||
const params = new URLSearchParams('', fooEveryThingParser);
|
||||
params.set('myKey', 'myValue');
|
||||
expect(params.toString()).toBe('I AM KEY=I AM VALUE');
|
||||
});
|
||||
|
||||
|
||||
it('should encode special characters in params', () => {
|
||||
var searchParams = new URLSearchParams();
|
||||
const searchParams = new URLSearchParams();
|
||||
searchParams.append('a', '1+1');
|
||||
searchParams.append('b c', '2');
|
||||
searchParams.append('d%', '3$');
|
||||
@ -88,8 +88,8 @@ export function main() {
|
||||
|
||||
|
||||
it('should support map-like merging operation via setAll()', () => {
|
||||
var mapA = new URLSearchParams('a=1&a=2&a=3&c=8');
|
||||
var mapB = new URLSearchParams('a=4&a=5&a=6&b=7');
|
||||
const mapA = new URLSearchParams('a=1&a=2&a=3&c=8');
|
||||
const mapB = new URLSearchParams('a=4&a=5&a=6&b=7');
|
||||
mapA.setAll(mapB);
|
||||
expect(mapA.has('a')).toBe(true);
|
||||
expect(mapA.has('b')).toBe(true);
|
||||
@ -102,8 +102,8 @@ export function main() {
|
||||
|
||||
|
||||
it('should support multimap-like merging operation via appendAll()', () => {
|
||||
var mapA = new URLSearchParams('a=1&a=2&a=3&c=8');
|
||||
var mapB = new URLSearchParams('a=4&a=5&a=6&b=7');
|
||||
const mapA = new URLSearchParams('a=1&a=2&a=3&c=8');
|
||||
const mapB = new URLSearchParams('a=4&a=5&a=6&b=7');
|
||||
mapA.appendAll(mapB);
|
||||
expect(mapA.has('a')).toBe(true);
|
||||
expect(mapA.has('b')).toBe(true);
|
||||
@ -116,8 +116,8 @@ export function main() {
|
||||
|
||||
|
||||
it('should support multimap-like merging operation via replaceAll()', () => {
|
||||
var mapA = new URLSearchParams('a=1&a=2&a=3&c=8');
|
||||
var mapB = new URLSearchParams('a=4&a=5&a=6&b=7');
|
||||
const mapA = new URLSearchParams('a=1&a=2&a=3&c=8');
|
||||
const mapB = new URLSearchParams('a=4&a=5&a=6&b=7');
|
||||
mapA.replaceAll(mapB);
|
||||
expect(mapA.has('a')).toBe(true);
|
||||
expect(mapA.has('b')).toBe(true);
|
||||
@ -129,20 +129,20 @@ export function main() {
|
||||
});
|
||||
|
||||
it('should support a clone operation via clone()', () => {
|
||||
var fooQueryEncoder = {
|
||||
const fooQueryEncoder = {
|
||||
encodeKey(k: string) { return encodeURIComponent(k); },
|
||||
encodeValue(v: string) { return encodeURIComponent(v); }
|
||||
};
|
||||
var paramsA = new URLSearchParams('', fooQueryEncoder);
|
||||
const paramsA = new URLSearchParams('', fooQueryEncoder);
|
||||
paramsA.set('a', '2');
|
||||
paramsA.set('q', '4+');
|
||||
paramsA.set('c', '8');
|
||||
var paramsB = new URLSearchParams();
|
||||
const paramsB = new URLSearchParams();
|
||||
paramsB.set('a', '2');
|
||||
paramsB.set('q', '4+');
|
||||
paramsB.set('c', '8');
|
||||
expect(paramsB.toString()).toEqual('a=2&q=4+&c=8');
|
||||
var paramsC = paramsA.clone();
|
||||
const paramsC = paramsA.clone();
|
||||
expect(paramsC.has('a')).toBe(true);
|
||||
expect(paramsC.has('b')).toBe(false);
|
||||
expect(paramsC.has('c')).toBe(true);
|
||||
|
@ -229,7 +229,7 @@ export class MockBackend implements ConnectionBackend {
|
||||
if (!req || !(req instanceof Request)) {
|
||||
throw new Error(`createConnection requires an instance of Request, got ${req}`);
|
||||
}
|
||||
let connection = new MockConnection(req);
|
||||
const connection = new MockConnection(req);
|
||||
this.connections.next(connection);
|
||||
return connection;
|
||||
}
|
||||
|
Reference in New Issue
Block a user