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

Unified Diff: generated/googleapis/test/discovery/v1_test.dart

Issue 595873002: Api roll 1: 2014-09-23 (Closed) Base URL: git@github.com:dart-lang/googleapis.git@master
Patch Set: Created 6 years, 3 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: generated/googleapis/test/discovery/v1_test.dart
diff --git a/generated/googleapis/test/discovery/v1_test.dart b/generated/googleapis/test/discovery/v1_test.dart
index bd41021fd11f297e92bbcd52c9056a6211d42c05..e99bee2607c22c273f7be26f56792ecfdd134ac3 100644
--- a/generated/googleapis/test/discovery/v1_test.dart
+++ b/generated/googleapis/test/discovery/v1_test.dart
@@ -37,14 +37,14 @@ checkDirectoryListItemsIcons(api.DirectoryListItemsIcons o) {
buildCounterDirectoryListItemsIcons--;
}
-buildUnnamed299() {
+buildUnnamed302() {
var o = new core.List<core.String>();
o.add("foo");
o.add("foo");
return o;
}
-checkUnnamed299(core.List<core.String> o) {
+checkUnnamed302(core.List<core.String> o) {
unittest.expect(o, unittest.hasLength(2));
unittest.expect(o[0], unittest.equals('foo'));
unittest.expect(o[1], unittest.equals('foo'));
@@ -62,7 +62,7 @@ buildDirectoryListItems() {
o.icons = buildDirectoryListItemsIcons();
o.id = "foo";
o.kind = "foo";
- o.labels = buildUnnamed299();
+ o.labels = buildUnnamed302();
o.name = "foo";
o.preferred = true;
o.title = "foo";
@@ -82,7 +82,7 @@ checkDirectoryListItems(api.DirectoryListItems o) {
checkDirectoryListItemsIcons(o.icons);
unittest.expect(o.id, unittest.equals('foo'));
unittest.expect(o.kind, unittest.equals('foo'));
- checkUnnamed299(o.labels);
+ checkUnnamed302(o.labels);
unittest.expect(o.name, unittest.equals('foo'));
unittest.expect(o.preferred, unittest.isTrue);
unittest.expect(o.title, unittest.equals('foo'));
@@ -91,14 +91,14 @@ checkDirectoryListItems(api.DirectoryListItems o) {
buildCounterDirectoryListItems--;
}
-buildUnnamed300() {
+buildUnnamed303() {
var o = new core.List<api.DirectoryListItems>();
o.add(buildDirectoryListItems());
o.add(buildDirectoryListItems());
return o;
}
-checkUnnamed300(core.List<api.DirectoryListItems> o) {
+checkUnnamed303(core.List<api.DirectoryListItems> o) {
unittest.expect(o, unittest.hasLength(2));
checkDirectoryListItems(o[0]);
checkDirectoryListItems(o[1]);
@@ -110,7 +110,7 @@ buildDirectoryList() {
buildCounterDirectoryList++;
if (buildCounterDirectoryList < 3) {
o.discoveryVersion = "foo";
- o.items = buildUnnamed300();
+ o.items = buildUnnamed303();
o.kind = "foo";
}
buildCounterDirectoryList--;
@@ -121,20 +121,20 @@ checkDirectoryList(api.DirectoryList o) {
buildCounterDirectoryList++;
if (buildCounterDirectoryList < 3) {
unittest.expect(o.discoveryVersion, unittest.equals('foo'));
- checkUnnamed300(o.items);
+ checkUnnamed303(o.items);
unittest.expect(o.kind, unittest.equals('foo'));
}
buildCounterDirectoryList--;
}
-buildUnnamed301() {
+buildUnnamed304() {
var o = new core.List<core.String>();
o.add("foo");
o.add("foo");
return o;
}
-checkUnnamed301(core.List<core.String> o) {
+checkUnnamed304(core.List<core.String> o) {
unittest.expect(o, unittest.hasLength(2));
unittest.expect(o[0], unittest.equals('foo'));
unittest.expect(o[1], unittest.equals('foo'));
@@ -145,7 +145,7 @@ buildJsonSchemaAnnotations() {
var o = new api.JsonSchemaAnnotations();
buildCounterJsonSchemaAnnotations++;
if (buildCounterJsonSchemaAnnotations < 3) {
- o.required = buildUnnamed301();
+ o.required = buildUnnamed304();
}
buildCounterJsonSchemaAnnotations--;
return o;
@@ -154,45 +154,45 @@ buildJsonSchemaAnnotations() {
checkJsonSchemaAnnotations(api.JsonSchemaAnnotations o) {
buildCounterJsonSchemaAnnotations++;
if (buildCounterJsonSchemaAnnotations < 3) {
- checkUnnamed301(o.required);
+ checkUnnamed304(o.required);
}
buildCounterJsonSchemaAnnotations--;
}
-buildUnnamed302() {
+buildUnnamed305() {
var o = new core.List<core.String>();
o.add("foo");
o.add("foo");
return o;
}
-checkUnnamed302(core.List<core.String> o) {
+checkUnnamed305(core.List<core.String> o) {
unittest.expect(o, unittest.hasLength(2));
unittest.expect(o[0], unittest.equals('foo'));
unittest.expect(o[1], unittest.equals('foo'));
}
-buildUnnamed303() {
+buildUnnamed306() {
var o = new core.List<core.String>();
o.add("foo");
o.add("foo");
return o;
}
-checkUnnamed303(core.List<core.String> o) {
+checkUnnamed306(core.List<core.String> o) {
unittest.expect(o, unittest.hasLength(2));
unittest.expect(o[0], unittest.equals('foo'));
unittest.expect(o[1], unittest.equals('foo'));
}
-buildUnnamed304() {
+buildUnnamed307() {
var o = new core.Map<core.String, api.JsonSchema>();
o["x"] = buildJsonSchema();
o["y"] = buildJsonSchema();
return o;
}
-checkUnnamed304(core.Map<core.String, api.JsonSchema> o) {
+checkUnnamed307(core.Map<core.String, api.JsonSchema> o) {
unittest.expect(o, unittest.hasLength(2));
checkJsonSchema(o["x"]);
checkJsonSchema(o["y"]);
@@ -219,14 +219,14 @@ checkJsonSchemaVariantMap(api.JsonSchemaVariantMap o) {
buildCounterJsonSchemaVariantMap--;
}
-buildUnnamed305() {
+buildUnnamed308() {
var o = new core.List<api.JsonSchemaVariantMap>();
o.add(buildJsonSchemaVariantMap());
o.add(buildJsonSchemaVariantMap());
return o;
}
-checkUnnamed305(core.List<api.JsonSchemaVariantMap> o) {
+checkUnnamed308(core.List<api.JsonSchemaVariantMap> o) {
unittest.expect(o, unittest.hasLength(2));
checkJsonSchemaVariantMap(o[0]);
checkJsonSchemaVariantMap(o[1]);
@@ -238,7 +238,7 @@ buildJsonSchemaVariant() {
buildCounterJsonSchemaVariant++;
if (buildCounterJsonSchemaVariant < 3) {
o.discriminant = "foo";
- o.map = buildUnnamed305();
+ o.map = buildUnnamed308();
}
buildCounterJsonSchemaVariant--;
return o;
@@ -248,7 +248,7 @@ checkJsonSchemaVariant(api.JsonSchemaVariant o) {
buildCounterJsonSchemaVariant++;
if (buildCounterJsonSchemaVariant < 3) {
unittest.expect(o.discriminant, unittest.equals('foo'));
- checkUnnamed305(o.map);
+ checkUnnamed308(o.map);
}
buildCounterJsonSchemaVariant--;
}
@@ -263,8 +263,8 @@ buildJsonSchema() {
o.annotations = buildJsonSchemaAnnotations();
o.default_ = "foo";
o.description = "foo";
- o.enum_ = buildUnnamed302();
- o.enumDescriptions = buildUnnamed303();
+ o.enum_ = buildUnnamed305();
+ o.enumDescriptions = buildUnnamed306();
o.format = "foo";
o.id = "foo";
o.items = buildJsonSchema();
@@ -272,7 +272,7 @@ buildJsonSchema() {
o.maximum = "foo";
o.minimum = "foo";
o.pattern = "foo";
- o.properties = buildUnnamed304();
+ o.properties = buildUnnamed307();
o.readOnly = true;
o.repeated = true;
o.required = true;
@@ -291,8 +291,8 @@ checkJsonSchema(api.JsonSchema o) {
checkJsonSchemaAnnotations(o.annotations);
unittest.expect(o.default_, unittest.equals('foo'));
unittest.expect(o.description, unittest.equals('foo'));
- checkUnnamed302(o.enum_);
- checkUnnamed303(o.enumDescriptions);
+ checkUnnamed305(o.enum_);
+ checkUnnamed306(o.enumDescriptions);
unittest.expect(o.format, unittest.equals('foo'));
unittest.expect(o.id, unittest.equals('foo'));
checkJsonSchema(o.items);
@@ -300,7 +300,7 @@ checkJsonSchema(api.JsonSchema o) {
unittest.expect(o.maximum, unittest.equals('foo'));
unittest.expect(o.minimum, unittest.equals('foo'));
unittest.expect(o.pattern, unittest.equals('foo'));
- checkUnnamed304(o.properties);
+ checkUnnamed307(o.properties);
unittest.expect(o.readOnly, unittest.isTrue);
unittest.expect(o.repeated, unittest.isTrue);
unittest.expect(o.required, unittest.isTrue);
@@ -329,14 +329,14 @@ checkRestDescriptionAuthOauth2ScopesValue(api.RestDescriptionAuthOauth2ScopesVal
buildCounterRestDescriptionAuthOauth2ScopesValue--;
}
-buildUnnamed306() {
+buildUnnamed309() {
var o = new core.Map<core.String, api.RestDescriptionAuthOauth2ScopesValue>();
o["x"] = buildRestDescriptionAuthOauth2ScopesValue();
o["y"] = buildRestDescriptionAuthOauth2ScopesValue();
return o;
}
-checkUnnamed306(core.Map<core.String, api.RestDescriptionAuthOauth2ScopesValue> o) {
+checkUnnamed309(core.Map<core.String, api.RestDescriptionAuthOauth2ScopesValue> o) {
unittest.expect(o, unittest.hasLength(2));
checkRestDescriptionAuthOauth2ScopesValue(o["x"]);
checkRestDescriptionAuthOauth2ScopesValue(o["y"]);
@@ -347,7 +347,7 @@ buildRestDescriptionAuthOauth2() {
var o = new api.RestDescriptionAuthOauth2();
buildCounterRestDescriptionAuthOauth2++;
if (buildCounterRestDescriptionAuthOauth2 < 3) {
- o.scopes = buildUnnamed306();
+ o.scopes = buildUnnamed309();
}
buildCounterRestDescriptionAuthOauth2--;
return o;
@@ -356,7 +356,7 @@ buildRestDescriptionAuthOauth2() {
checkRestDescriptionAuthOauth2(api.RestDescriptionAuthOauth2 o) {
buildCounterRestDescriptionAuthOauth2++;
if (buildCounterRestDescriptionAuthOauth2 < 3) {
- checkUnnamed306(o.scopes);
+ checkUnnamed309(o.scopes);
}
buildCounterRestDescriptionAuthOauth2--;
}
@@ -380,14 +380,14 @@ checkRestDescriptionAuth(api.RestDescriptionAuth o) {
buildCounterRestDescriptionAuth--;
}
-buildUnnamed307() {
+buildUnnamed310() {
var o = new core.List<core.String>();
o.add("foo");
o.add("foo");
return o;
}
-checkUnnamed307(core.List<core.String> o) {
+checkUnnamed310(core.List<core.String> o) {
unittest.expect(o, unittest.hasLength(2));
unittest.expect(o[0], unittest.equals('foo'));
unittest.expect(o[1], unittest.equals('foo'));
@@ -414,66 +414,66 @@ checkRestDescriptionIcons(api.RestDescriptionIcons o) {
buildCounterRestDescriptionIcons--;
}
-buildUnnamed308() {
+buildUnnamed311() {
var o = new core.List<core.String>();
o.add("foo");
o.add("foo");
return o;
}
-checkUnnamed308(core.List<core.String> o) {
+checkUnnamed311(core.List<core.String> o) {
unittest.expect(o, unittest.hasLength(2));
unittest.expect(o[0], unittest.equals('foo'));
unittest.expect(o[1], unittest.equals('foo'));
}
-buildUnnamed309() {
+buildUnnamed312() {
var o = new core.Map<core.String, api.RestMethod>();
o["x"] = buildRestMethod();
o["y"] = buildRestMethod();
return o;
}
-checkUnnamed309(core.Map<core.String, api.RestMethod> o) {
+checkUnnamed312(core.Map<core.String, api.RestMethod> o) {
unittest.expect(o, unittest.hasLength(2));
checkRestMethod(o["x"]);
checkRestMethod(o["y"]);
}
-buildUnnamed310() {
+buildUnnamed313() {
var o = new core.Map<core.String, api.JsonSchema>();
o["x"] = buildJsonSchema();
o["y"] = buildJsonSchema();
return o;
}
-checkUnnamed310(core.Map<core.String, api.JsonSchema> o) {
+checkUnnamed313(core.Map<core.String, api.JsonSchema> o) {
unittest.expect(o, unittest.hasLength(2));
checkJsonSchema(o["x"]);
checkJsonSchema(o["y"]);
}
-buildUnnamed311() {
+buildUnnamed314() {
var o = new core.Map<core.String, api.RestResource>();
o["x"] = buildRestResource();
o["y"] = buildRestResource();
return o;
}
-checkUnnamed311(core.Map<core.String, api.RestResource> o) {
+checkUnnamed314(core.Map<core.String, api.RestResource> o) {
unittest.expect(o, unittest.hasLength(2));
checkRestResource(o["x"]);
checkRestResource(o["y"]);
}
-buildUnnamed312() {
+buildUnnamed315() {
var o = new core.Map<core.String, api.JsonSchema>();
o["x"] = buildJsonSchema();
o["y"] = buildJsonSchema();
return o;
}
-checkUnnamed312(core.Map<core.String, api.JsonSchema> o) {
+checkUnnamed315(core.Map<core.String, api.JsonSchema> o) {
unittest.expect(o, unittest.hasLength(2));
checkJsonSchema(o["x"]);
checkJsonSchema(o["y"]);
@@ -493,22 +493,22 @@ buildRestDescription() {
o.discoveryVersion = "foo";
o.documentationLink = "foo";
o.etag = "foo";
- o.features = buildUnnamed307();
+ o.features = buildUnnamed310();
o.icons = buildRestDescriptionIcons();
o.id = "foo";
o.kind = "foo";
- o.labels = buildUnnamed308();
- o.methods = buildUnnamed309();
+ o.labels = buildUnnamed311();
+ o.methods = buildUnnamed312();
o.name = "foo";
o.ownerDomain = "foo";
o.ownerName = "foo";
o.packagePath = "foo";
- o.parameters = buildUnnamed310();
+ o.parameters = buildUnnamed313();
o.protocol = "foo";
- o.resources = buildUnnamed311();
+ o.resources = buildUnnamed314();
o.revision = "foo";
o.rootUrl = "foo";
- o.schemas = buildUnnamed312();
+ o.schemas = buildUnnamed315();
o.servicePath = "foo";
o.title = "foo";
o.version = "foo";
@@ -529,22 +529,22 @@ checkRestDescription(api.RestDescription o) {
unittest.expect(o.discoveryVersion, unittest.equals('foo'));
unittest.expect(o.documentationLink, unittest.equals('foo'));
unittest.expect(o.etag, unittest.equals('foo'));
- checkUnnamed307(o.features);
+ checkUnnamed310(o.features);
checkRestDescriptionIcons(o.icons);
unittest.expect(o.id, unittest.equals('foo'));
unittest.expect(o.kind, unittest.equals('foo'));
- checkUnnamed308(o.labels);
- checkUnnamed309(o.methods);
+ checkUnnamed311(o.labels);
+ checkUnnamed312(o.methods);
unittest.expect(o.name, unittest.equals('foo'));
unittest.expect(o.ownerDomain, unittest.equals('foo'));
unittest.expect(o.ownerName, unittest.equals('foo'));
unittest.expect(o.packagePath, unittest.equals('foo'));
- checkUnnamed310(o.parameters);
+ checkUnnamed313(o.parameters);
unittest.expect(o.protocol, unittest.equals('foo'));
- checkUnnamed311(o.resources);
+ checkUnnamed314(o.resources);
unittest.expect(o.revision, unittest.equals('foo'));
unittest.expect(o.rootUrl, unittest.equals('foo'));
- checkUnnamed312(o.schemas);
+ checkUnnamed315(o.schemas);
unittest.expect(o.servicePath, unittest.equals('foo'));
unittest.expect(o.title, unittest.equals('foo'));
unittest.expect(o.version, unittest.equals('foo'));
@@ -552,14 +552,14 @@ checkRestDescription(api.RestDescription o) {
buildCounterRestDescription--;
}
-buildUnnamed313() {
+buildUnnamed316() {
var o = new core.List<core.String>();
o.add("foo");
o.add("foo");
return o;
}
-checkUnnamed313(core.List<core.String> o) {
+checkUnnamed316(core.List<core.String> o) {
unittest.expect(o, unittest.hasLength(2));
unittest.expect(o[0], unittest.equals('foo'));
unittest.expect(o[1], unittest.equals('foo'));
@@ -633,7 +633,7 @@ buildRestMethodMediaUpload() {
var o = new api.RestMethodMediaUpload();
buildCounterRestMethodMediaUpload++;
if (buildCounterRestMethodMediaUpload < 3) {
- o.accept = buildUnnamed313();
+ o.accept = buildUnnamed316();
o.maxSize = "foo";
o.protocols = buildRestMethodMediaUploadProtocols();
}
@@ -644,34 +644,34 @@ buildRestMethodMediaUpload() {
checkRestMethodMediaUpload(api.RestMethodMediaUpload o) {
buildCounterRestMethodMediaUpload++;
if (buildCounterRestMethodMediaUpload < 3) {
- checkUnnamed313(o.accept);
+ checkUnnamed316(o.accept);
unittest.expect(o.maxSize, unittest.equals('foo'));
checkRestMethodMediaUploadProtocols(o.protocols);
}
buildCounterRestMethodMediaUpload--;
}
-buildUnnamed314() {
+buildUnnamed317() {
var o = new core.List<core.String>();
o.add("foo");
o.add("foo");
return o;
}
-checkUnnamed314(core.List<core.String> o) {
+checkUnnamed317(core.List<core.String> o) {
unittest.expect(o, unittest.hasLength(2));
unittest.expect(o[0], unittest.equals('foo'));
unittest.expect(o[1], unittest.equals('foo'));
}
-buildUnnamed315() {
+buildUnnamed318() {
var o = new core.Map<core.String, api.JsonSchema>();
o["x"] = buildJsonSchema();
o["y"] = buildJsonSchema();
return o;
}
-checkUnnamed315(core.Map<core.String, api.JsonSchema> o) {
+checkUnnamed318(core.Map<core.String, api.JsonSchema> o) {
unittest.expect(o, unittest.hasLength(2));
checkJsonSchema(o["x"]);
checkJsonSchema(o["y"]);
@@ -717,14 +717,14 @@ checkRestMethodResponse(api.RestMethodResponse o) {
buildCounterRestMethodResponse--;
}
-buildUnnamed316() {
+buildUnnamed319() {
var o = new core.List<core.String>();
o.add("foo");
o.add("foo");
return o;
}
-checkUnnamed316(core.List<core.String> o) {
+checkUnnamed319(core.List<core.String> o) {
unittest.expect(o, unittest.hasLength(2));
unittest.expect(o[0], unittest.equals('foo'));
unittest.expect(o[1], unittest.equals('foo'));
@@ -740,12 +740,12 @@ buildRestMethod() {
o.httpMethod = "foo";
o.id = "foo";
o.mediaUpload = buildRestMethodMediaUpload();
- o.parameterOrder = buildUnnamed314();
- o.parameters = buildUnnamed315();
+ o.parameterOrder = buildUnnamed317();
+ o.parameters = buildUnnamed318();
o.path = "foo";
o.request = buildRestMethodRequest();
o.response = buildRestMethodResponse();
- o.scopes = buildUnnamed316();
+ o.scopes = buildUnnamed319();
o.supportsMediaDownload = true;
o.supportsMediaUpload = true;
o.supportsSubscription = true;
@@ -762,12 +762,12 @@ checkRestMethod(api.RestMethod o) {
unittest.expect(o.httpMethod, unittest.equals('foo'));
unittest.expect(o.id, unittest.equals('foo'));
checkRestMethodMediaUpload(o.mediaUpload);
- checkUnnamed314(o.parameterOrder);
- checkUnnamed315(o.parameters);
+ checkUnnamed317(o.parameterOrder);
+ checkUnnamed318(o.parameters);
unittest.expect(o.path, unittest.equals('foo'));
checkRestMethodRequest(o.request);
checkRestMethodResponse(o.response);
- checkUnnamed316(o.scopes);
+ checkUnnamed319(o.scopes);
unittest.expect(o.supportsMediaDownload, unittest.isTrue);
unittest.expect(o.supportsMediaUpload, unittest.isTrue);
unittest.expect(o.supportsSubscription, unittest.isTrue);
@@ -775,27 +775,27 @@ checkRestMethod(api.RestMethod o) {
buildCounterRestMethod--;
}
-buildUnnamed317() {
+buildUnnamed320() {
var o = new core.Map<core.String, api.RestMethod>();
o["x"] = buildRestMethod();
o["y"] = buildRestMethod();
return o;
}
-checkUnnamed317(core.Map<core.String, api.RestMethod> o) {
+checkUnnamed320(core.Map<core.String, api.RestMethod> o) {
unittest.expect(o, unittest.hasLength(2));
checkRestMethod(o["x"]);
checkRestMethod(o["y"]);
}
-buildUnnamed318() {
+buildUnnamed321() {
var o = new core.Map<core.String, api.RestResource>();
o["x"] = buildRestResource();
o["y"] = buildRestResource();
return o;
}
-checkUnnamed318(core.Map<core.String, api.RestResource> o) {
+checkUnnamed321(core.Map<core.String, api.RestResource> o) {
unittest.expect(o, unittest.hasLength(2));
checkRestResource(o["x"]);
checkRestResource(o["y"]);
@@ -806,8 +806,8 @@ buildRestResource() {
var o = new api.RestResource();
buildCounterRestResource++;
if (buildCounterRestResource < 3) {
- o.methods = buildUnnamed317();
- o.resources = buildUnnamed318();
+ o.methods = buildUnnamed320();
+ o.resources = buildUnnamed321();
}
buildCounterRestResource--;
return o;
@@ -816,8 +816,8 @@ buildRestResource() {
checkRestResource(api.RestResource o) {
buildCounterRestResource++;
if (buildCounterRestResource < 3) {
- checkUnnamed317(o.methods);
- checkUnnamed318(o.resources);
+ checkUnnamed320(o.methods);
+ checkUnnamed321(o.resources);
}
buildCounterRestResource--;
}
@@ -1016,8 +1016,10 @@ main() {
var pathOffset = 0;
var index;
var subPart;
- unittest.expect(path.substring(pathOffset, pathOffset + 14), unittest.equals("/discovery/v1/"));
- pathOffset += 14;
+ unittest.expect(path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
+ pathOffset += 1;
+ unittest.expect(path.substring(pathOffset, pathOffset + 13), unittest.equals("discovery/v1/"));
+ pathOffset += 13;
unittest.expect(path.substring(pathOffset, pathOffset + 5), unittest.equals("apis/"));
pathOffset += 5;
index = path.indexOf("/", pathOffset);
@@ -1075,8 +1077,10 @@ main() {
var pathOffset = 0;
var index;
var subPart;
- unittest.expect(path.substring(pathOffset, pathOffset + 14), unittest.equals("/discovery/v1/"));
- pathOffset += 14;
+ unittest.expect(path.substring(pathOffset, pathOffset + 1), unittest.equals("/"));
+ pathOffset += 1;
+ unittest.expect(path.substring(pathOffset, pathOffset + 13), unittest.equals("discovery/v1/"));
+ pathOffset += 13;
unittest.expect(path.substring(pathOffset, pathOffset + 4), unittest.equals("apis"));
pathOffset += 4;
« no previous file with comments | « generated/googleapis/test/dfareporting/v1_3_test.dart ('k') | generated/googleapis/test/doubleclickbidmanager/v1_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698