Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(10)

Unified Diff: third_party/pkg/angular/lib/mock/http_backend.dart

Issue 176943008: Update the Angular/DI tests to latest from github. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 6 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/pkg/angular/lib/mock/http_backend.dart
diff --git a/third_party/pkg/angular/lib/mock/http_backend.dart b/third_party/pkg/angular/lib/mock/http_backend.dart
index b7a5623c0f8c396e0826be24662de49425a95b95..20a8e97a7b3d167dc81fc2d2f86b03ee761d6e64 100644
--- a/third_party/pkg/angular/lib/mock/http_backend.dart
+++ b/third_party/pkg/angular/lib/mock/http_backend.dart
@@ -3,7 +3,7 @@ part of angular.mock;
class _MockXhr {
var $$method, $$url, $$async, $$reqHeaders, $$respHeaders;
- open(method, url, async) {
+ void open(method, url, async) {
$$method = method;
$$url = url;
$$async = async;
@@ -13,24 +13,21 @@ class _MockXhr {
var $$data;
- send(data) {
+ void send(data) {
$$data = data;
}
- setRequestHeader(key, value) {
+ void setRequestHeader(key, value) {
$$reqHeaders[key] = value;
}
- getResponseHeader(name) {
- // the lookup must be case insensitive, that's why we try two quick lookups and full scan at last
- if ($$respHeaders.containsKey(name)) {
- return $$respHeaders[name];
- }
+ String getResponseHeader(name) {
+ // the lookup must be case insensitive, that's why we try two quick
+ // lookups and full scan at last
+ if ($$respHeaders.containsKey(name)) return $$respHeaders[name];
name = name.toLowerCase();
- if ($$respHeaders.containsKey(name)) {
- return $$respHeaders[name];
- }
+ if ($$respHeaders.containsKey(name)) return $$respHeaders[name];
String header = null;
$$respHeaders.forEach((headerName, headerVal) {
@@ -59,53 +56,51 @@ class _MockXhr {
* An internal class used by [MockHttpBackend].
*/
class MockHttpExpectation {
-
- var method, url, data, headers;
+ final method;
+ final url;
+ final data;
+ final headers;
var response;
MockHttpExpectation(this.method, this.url, [this.data, this.headers]);
- match(m, u, [d, h]) {
- if (method != m) return false;
- if (!matchUrl(u)) return false;
- if (d != null && !matchData(d)) return false;
- if (h != null && !matchHeaders(h)) return false;
+ bool match(method, url, [data, headers]) {
+ if (method != method) return false;
+ if (!matchUrl(url)) return false;
+ if (data != null && !matchData(data)) return false;
+ if (headers != null && !matchHeaders(headers)) return false;
return true;
}
- matchUrl(u) {
+ bool matchUrl(u) {
if (url == null) return true;
if (url is RegExp) return url.hasMatch(u);
return url == u;
}
- matchHeaders(h) {
+ bool matchHeaders(h) {
if (headers == null) return true;
if (headers is Function) return headers(h);
return "$headers" == "$h";
}
- matchData(d) {
+ bool matchData(d) {
if (data == null) return true;
- if (d == null) return false; // data is not null, but d is.
+ if (d == null) return false;
if (data is File) return data == d;
assert(d is String);
if (data is RegExp) return data.hasMatch(d);
return JSON.encode(data) == JSON.encode(d);
}
- toString() {
- return "$method $url";
- }
+ String toString() => "$method $url";
}
class _Chain {
- var _respondFn;
- _Chain({respond}) {
- _respondFn = respond;
- }
+ final Function _respondFn;
+ _Chain({respond}): _respondFn = respond;
respond([x,y,z]) => _respondFn(x,y,z);
}
@@ -129,12 +124,12 @@ class MockHttpBackend implements HttpBackend {
if (status >= 200 && status < 300) {
c.complete(new MockHttpRequest(status, data, headers));
} else {
- c.completeError(
- new MockProgressEvent(
- new MockHttpRequest(status, data, headers)));
+ c.completeError(new MockProgressEvent(
+ new MockHttpRequest(status, data, headers)));
}
};
- call(method == null ? 'GET' : method, url, sendData, callback, requestHeaders);
+ call(method == null ? 'GET' : method, url, sendData, callback,
+ requestHeaders);
return c.future;
}
@@ -150,9 +145,7 @@ class MockHttpBackend implements HttpBackend {
data = statusOrDataOrFunction;
headers = dataOrHeaders;
}
- if (data is Map || data is List) {
- data = JSON.encode(data);
- }
+ if (data is Map || data is List) data = JSON.encode(data);
return ([a,b,c,d,e]) => [status, data, headers];
}
@@ -162,7 +155,7 @@ class MockHttpBackend implements HttpBackend {
* A callback oriented API. This function takes a callback with
* will be called with (status, data, headers)
*/
- call(method, [url, data, callback, headers, timeout]) {
+ void call(method, [url, data, callback, headers, timeout]) {
var xhr = new _MockXhr(),
expectation = expectations.isEmpty ? null : expectations[0],
wasExpected = false;
@@ -177,11 +170,12 @@ class MockHttpBackend implements HttpBackend {
var handleResponse = () {
var response = wrapped.response(method, url, data, headers);
xhr.$$respHeaders = response[2];
- utils.relaxFnApply(callback, [response[0], response[1], xhr.getAllResponseHeaders()]);
+ utils.relaxFnApply(callback, [response[0], response[1],
+ xhr.getAllResponseHeaders()]);
};
var handleTimeout = () {
- for (var i = 0, ii = responses.length; i < ii; i++) {
+ for (var i = 0; i < responses.length; i++) {
if (identical(responses[i], handleResponse)) {
responses.removeAt(i);
callback(-1, null, '');
@@ -200,8 +194,9 @@ class MockHttpBackend implements HttpBackend {
'EXPECTED: ${prettyPrint(expectation.data)}\nGOT: $data'];
if (!expectation.matchHeaders(headers))
- throw ['Expected $expectation with different headers\n' +
- 'EXPECTED: ${prettyPrint(expectation.headers)}\nGOT: ${prettyPrint(headers)}'];
+ throw ['Expected $expectation with different headers\n'
+ 'EXPECTED: ${prettyPrint(expectation.headers)}\n'
+ 'GOT: ${prettyPrint(headers)}'];
expectations.removeAt(0);
@@ -223,8 +218,9 @@ class MockHttpBackend implements HttpBackend {
}
throw wasExpected ?
['No response defined !'] :
- ['Unexpected request: $method $url\n' +
- (expectation != null ? 'Expected $expectation' : 'No more requests expected')];
+ ['Unexpected request: $method $url\n' + (expectation != null ?
+ 'Expected $expectation' :
+ 'No more requests expected')];
}
/**
@@ -233,21 +229,22 @@ class MockHttpBackend implements HttpBackend {
* @param {string} method HTTP method.
* @param {string|RegExp} url HTTP url.
* @param {(string|RegExp)=} data HTTP request body.
- * @param {(Object|function(Object))=} headers HTTP headers or function that receives http header
- * object and returns true if the headers match the current definition.
- * @returns {requestHandler} Returns an object with `respond` method that control how a matched
- * request is handled.
+ * @param {(Object|function(Object))=} headers HTTP headers or function that
+ * receives http header object and returns true if the headers match the
+ * current definition.
+ * @returns {requestHandler} Returns an object with `respond` method that
+ * control how a matched request is handled.
*
* - respond – `{function([status,] data[, headers])|function(function(method, url, data, headers)}`
* – The respond method takes a set of static data to be returned or a function that can return
* an array containing response status (number), response data (string) and response headers
* (Object).
*/
- when(method, [url, data, headers]) {
+ _Chain when(method, [url, data, headers]) {
var definition = new MockHttpExpectation(method, url, data, headers),
chain = new _Chain(respond: (status, data, headers) {
- definition.response = _createResponse(status, data, headers);
- });
+ definition.response = _createResponse(status, data, headers);
+ });
definitions.add(definition);
return chain;
@@ -265,54 +262,41 @@ class MockHttpBackend implements HttpBackend {
* @returns {requestHandler} Returns an object with `respond` method that control how a matched
* request is handled.
*/
-
-
- whenGET(url, [headers]) =>
- when('GET', url, null, headers);
- whenDELETE(url, [headers]) =>
- when('DELETE', url, null, headers);
- whenJSONP(url, [headers]) =>
- when('JSONP', url, null, headers);
-
- whenPUT(url, [data, headers]) =>
- when('PUT', url, data, headers);
- whenPOST(url, [data, headers]) =>
- when('POST', url, data, headers);
- whenPATCH(url, [data, headers]) =>
- when('PATCH', url, data, headers);
+ _Chain whenGET(url, [headers]) => when('GET', url, null, headers);
/**
* @ngdoc method
- * @name ngMock.$httpBackend#whenHEAD
+ * @name ngMock.$httpBackend#whenDELETE
* @methodOf ngMock.$httpBackend
* @description
- * Creates a new backend definition for HEAD requests. For more info see `when()`.
+ * Creates a new backend definition for DELETE requests. For more info see `when()`.
*
* @param {string|RegExp} url HTTP url.
* @param {(Object|function(Object))=} headers HTTP headers.
* @returns {requestHandler} Returns an object with `respond` method that control how a matched
* request is handled.
*/
+ _Chain whenDELETE(url, [headers]) => when('DELETE', url, null, headers);
/**
* @ngdoc method
- * @name ngMock.$httpBackend#whenDELETE
+ * @name ngMock.$httpBackend#whenJSONP
* @methodOf ngMock.$httpBackend
* @description
- * Creates a new backend definition for DELETE requests. For more info see `when()`.
+ * Creates a new backend definition for JSONP requests. For more info see `when()`.
*
* @param {string|RegExp} url HTTP url.
- * @param {(Object|function(Object))=} headers HTTP headers.
* @returns {requestHandler} Returns an object with `respond` method that control how a matched
* request is handled.
*/
+ _Chain whenJSONP(url, [headers]) => when('JSONP', url, null, headers);
/**
* @ngdoc method
- * @name ngMock.$httpBackend#whenPOST
+ * @name ngMock.$httpBackend#whenPUT
* @methodOf ngMock.$httpBackend
* @description
- * Creates a new backend definition for POST requests. For more info see `when()`.
+ * Creates a new backend definition for PUT requests. For more info see `when()`.
*
* @param {string|RegExp} url HTTP url.
* @param {(string|RegExp)=} data HTTP request body.
@@ -320,13 +304,14 @@ class MockHttpBackend implements HttpBackend {
* @returns {requestHandler} Returns an object with `respond` method that control how a matched
* request is handled.
*/
+ _Chain whenPUT(url, [data, headers]) => when('PUT', url, data, headers);
/**
* @ngdoc method
- * @name ngMock.$httpBackend#whenPUT
+ * @name ngMock.$httpBackend#whenPOST
* @methodOf ngMock.$httpBackend
* @description
- * Creates a new backend definition for PUT requests. For more info see `when()`.
+ * Creates a new backend definition for POST requests. For more info see `when()`.
*
* @param {string|RegExp} url HTTP url.
* @param {(string|RegExp)=} data HTTP request body.
@@ -334,20 +319,22 @@ class MockHttpBackend implements HttpBackend {
* @returns {requestHandler} Returns an object with `respond` method that control how a matched
* request is handled.
*/
+ _Chain whenPOST(url, [data, headers]) => when('POST', url, data, headers);
+
+ _Chain whenPATCH(url, [data, headers]) => when('PATCH', url, data, headers);
/**
* @ngdoc method
- * @name ngMock.$httpBackend#whenJSONP
+ * @name ngMock.$httpBackend#whenHEAD
* @methodOf ngMock.$httpBackend
* @description
- * Creates a new backend definition for JSONP requests. For more info see `when()`.
+ * Creates a new backend definition for HEAD requests. For more info see `when()`.
*
* @param {string|RegExp} url HTTP url.
+ * @param {(Object|function(Object))=} headers HTTP headers.
* @returns {requestHandler} Returns an object with `respond` method that control how a matched
* request is handled.
*/
- //createShortMethods('when');
-
/**
* @ngdoc method
@@ -369,12 +356,12 @@ class MockHttpBackend implements HttpBackend {
* an array containing response status (number), response data (string) and response headers
* (Object).
*/
- expect(method, [url, data, headers]) {
+ _Chain expect(method, [url, data, headers]) {
var expectation = new MockHttpExpectation(method, url, data, headers);
expectations.add(expectation);
return new _Chain(respond: (status, data, headers) {
- expectation.response = _createResponse(status, data, headers);
- });
+ expectation.response = _createResponse(status, data, headers);
+ });
}
@@ -390,52 +377,41 @@ class MockHttpBackend implements HttpBackend {
* @returns {requestHandler} Returns an object with `respond` method that control how a matched
* request is handled. See #expect for more info.
*/
- expectGET(url, [headers]) =>
- expect('GET', url, null, headers);
- expectDELETE(url, [headers]) =>
- expect('DELETE', url, null, headers);
- expectJSONP(url, [headers]) =>
- expect('JSONP', url, null, headers);
-
- expectPUT(url, [data, headers]) =>
- expect('PUT', url, data, headers);
- expectPOST(url, [data, headers]) =>
- expect('POST', url, data, headers);
- expectPATCH(url, [data, headers]) =>
- expect('PATCH', url, data, headers);
+ _Chain expectGET(url, [headers]) => expect('GET', url, null, headers);
/**
* @ngdoc method
- * @name ngMock.$httpBackend#expectHEAD
+ * @name ngMock.$httpBackend#expectDELETE
* @methodOf ngMock.$httpBackend
* @description
- * Creates a new request expectation for HEAD requests. For more info see `expect()`.
+ * Creates a new request expectation for DELETE requests. For more info see `expect()`.
*
* @param {string|RegExp} url HTTP url.
* @param {Object=} headers HTTP headers.
* @returns {requestHandler} Returns an object with `respond` method that control how a matched
* request is handled.
*/
+ _Chain expectDELETE(url, [headers]) => expect('DELETE', url, null, headers);
/**
* @ngdoc method
- * @name ngMock.$httpBackend#expectDELETE
+ * @name ngMock.$httpBackend#expectJSONP
* @methodOf ngMock.$httpBackend
* @description
- * Creates a new request expectation for DELETE requests. For more info see `expect()`.
+ * Creates a new request expectation for JSONP requests. For more info see `expect()`.
*
* @param {string|RegExp} url HTTP url.
- * @param {Object=} headers HTTP headers.
* @returns {requestHandler} Returns an object with `respond` method that control how a matched
* request is handled.
*/
+ _Chain expectJSONP(url, [headers]) => expect('JSONP', url, null, headers);
/**
* @ngdoc method
- * @name ngMock.$httpBackend#expectPOST
+ * @name ngMock.$httpBackend#expectPUT
* @methodOf ngMock.$httpBackend
* @description
- * Creates a new request expectation for POST requests. For more info see `expect()`.
+ * Creates a new request expectation for PUT requests. For more info see `expect()`.
*
* @param {string|RegExp} url HTTP url.
* @param {(string|RegExp)=} data HTTP request body.
@@ -443,13 +419,14 @@ class MockHttpBackend implements HttpBackend {
* @returns {requestHandler} Returns an object with `respond` method that control how a matched
* request is handled.
*/
+ _Chain expectPUT(url, [data, headers]) => expect('PUT', url, data, headers);
/**
* @ngdoc method
- * @name ngMock.$httpBackend#expectPUT
+ * @name ngMock.$httpBackend#expectPOST
* @methodOf ngMock.$httpBackend
* @description
- * Creates a new request expectation for PUT requests. For more info see `expect()`.
+ * Creates a new request expectation for POST requests. For more info see `expect()`.
*
* @param {string|RegExp} url HTTP url.
* @param {(string|RegExp)=} data HTTP request body.
@@ -457,6 +434,7 @@ class MockHttpBackend implements HttpBackend {
* @returns {requestHandler} Returns an object with `respond` method that control how a matched
* request is handled.
*/
+ _Chain expectPOST(url, [data, headers]) => expect('POST', url, data, headers);
/**
* @ngdoc method
@@ -471,20 +449,20 @@ class MockHttpBackend implements HttpBackend {
* @returns {requestHandler} Returns an object with `respond` method that control how a matched
* request is handled.
*/
+ _Chain expectPATCH(url, [data, headers]) => expect('PATCH', url, data, headers);
/**
* @ngdoc method
- * @name ngMock.$httpBackend#expectJSONP
+ * @name ngMock.$httpBackend#expectHEAD
* @methodOf ngMock.$httpBackend
* @description
- * Creates a new request expectation for JSONP requests. For more info see `expect()`.
+ * Creates a new request expectation for HEAD requests. For more info see `expect()`.
*
* @param {string|RegExp} url HTTP url.
+ * @param {Object=} headers HTTP headers.
* @returns {requestHandler} Returns an object with `respond` method that control how a matched
* request is handled.
*/
- //createShortMethods('expect');
-
/**
* @ngdoc method
@@ -497,7 +475,7 @@ class MockHttpBackend implements HttpBackend {
* all pending requests will be flushed. If there are no pending requests when the flush method
* is called an exception is thrown (as this typically a sign of programming error).
*/
- flush([count]) {
+ void flush([count]) {
if (responses.isEmpty) throw ['No pending request to flush !'];
if (count != null) {
@@ -529,7 +507,7 @@ class MockHttpBackend implements HttpBackend {
* afterEach($httpBackend.verifyNoOutstandingExpectation);
* </pre>
*/
- verifyNoOutstandingExpectation() {
+ void verifyNoOutstandingExpectation() {
if (!expectations.isEmpty) {
throw ['Unsatisfied requests: ${expectations.join(', ')}'];
}
@@ -550,10 +528,8 @@ class MockHttpBackend implements HttpBackend {
* afterEach($httpBackend.verifyNoOutstandingRequest);
* </pre>
*/
- verifyNoOutstandingRequest() {
- if (!responses.isEmpty) {
- throw ['Unflushed requests: ${responses.length}'];
- }
+ void verifyNoOutstandingRequest() {
+ if (!responses.isEmpty) throw ['Unflushed requests: ${responses.length}'];
}
@@ -566,7 +542,7 @@ class MockHttpBackend implements HttpBackend {
* call resetExpectations during a multiple-phase test when you want to reuse the same instance of
* $httpBackend mock.
*/
- resetExpectations() {
+ void resetExpectations() {
expectations.length = 0;
responses.length = 0;
}
@@ -611,10 +587,7 @@ class MockHttpRequest implements HttpRequest {
void abort() {}
bool dispatchEvent(Event event) => false;
- String getAllResponseHeaders() {
- if (headers == null) return null;
- return headers;
- }
+ String getAllResponseHeaders() => headers;
String getResponseHeader(String header) => null;
void open(String method, String url, {bool async, String user, String password}) {}

Powered by Google App Engine
This is Rietveld 408576698