author | Mark Banner <standard8@mozilla.com> |
Mon, 24 Apr 2017 18:52:57 +0100 | |
changeset 354733 | 5d4ef1185bea555c4ec85b751678ba8cba6c5dee |
parent 354732 | 8aceb515532cd27447a212fdad5a36fe0dc781a4 |
child 354734 | dfd000450675bf936d10cdb5ba47cd0037df5042 |
push id | 31711 |
push user | cbook@mozilla.com |
push date | Tue, 25 Apr 2017 09:24:00 +0000 |
treeherder | mozilla-central@a30dc237c3a6 [default view] [failures only] |
perfherder | [talos] [build metrics] [platform microbench] (compared to previous push) |
reviewers | markh |
bugs | 1359140 |
milestone | 55.0a1 |
first release with | nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
|
last release without | nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
|
--- a/services/cloudsync/tests/xpcshell/test_bookmarks.js +++ b/services/cloudsync/tests/xpcshell/test_bookmarks.js @@ -9,39 +9,60 @@ function run_test() { run_next_test(); } add_task(function* test_merge_bookmarks_flat() { try { let rootFolder = yield CloudSync().bookmarks.getRootFolder("TEST"); ok(rootFolder.id, "root folder id is ok"); - let items = [ - {"id":"G_UL4ZhOyX8m", "type":rootFolder.BOOKMARK, "title":"reddit: the front page of the internet 1", "uri":"http://www.reddit.com", index:2}, - {"id":"G_UL4ZhOyX8n", "type":rootFolder.BOOKMARK, "title":"reddit: the front page of the internet 2", "uri":"http://www.reddit.com?1", index:1}, - ]; + let items = [{ + "id": "G_UL4ZhOyX8m", + "type": rootFolder.BOOKMARK, + "title": "reddit: the front page of the internet 1", + "uri": "http://www.reddit.com", + index: 2 + }, { + "id": "G_UL4ZhOyX8n", + "type": rootFolder.BOOKMARK, + "title": "reddit: the front page of the internet 2", + "uri": "http://www.reddit.com?1", + index: 1 + }]; yield rootFolder.mergeRemoteItems(items); let localItems = yield rootFolder.getLocalItems(); equal(Object.keys(localItems).length, items.length, "found merged items"); } finally { yield CloudSync().bookmarks.deleteRootFolder("TEST"); } }); add_task(function* test_merge_bookmarks_in_folders() { try { let rootFolder = yield CloudSync().bookmarks.getRootFolder("TEST"); ok(rootFolder.id, "root folder id is ok"); - let items = [ - {"id":"G_UL4ZhOyX8m", "type":rootFolder.BOOKMARK, "title":"reddit: the front page of the internet 1", "uri":"http://www.reddit.com", index:2}, - {"id":"G_UL4ZhOyX8n", "type":rootFolder.BOOKMARK, parent:"G_UL4ZhOyX8x", "title":"reddit: the front page of the internet 2", "uri":"http://www.reddit.com/?a=å%20ä%20ö", index:1}, - {"id":"G_UL4ZhOyX8x", "type":rootFolder.FOLDER}, - ]; + let items = [{ + "id": "G_UL4ZhOyX8m", + "type": rootFolder.BOOKMARK, + "title": "reddit: the front page of the internet 1", + "uri": "http://www.reddit.com", + index: 2 + }, { + "id": "G_UL4ZhOyX8n", + "type": rootFolder.BOOKMARK, + parent: "G_UL4ZhOyX8x", + "title": "reddit: the front page of the internet 2", + "uri": "http://www.reddit.com/?a=å%20ä%20ö", + index: 1 + }, { + "id": "G_UL4ZhOyX8x", + "type": rootFolder.FOLDER + }]; yield rootFolder.mergeRemoteItems(items); let localItems = yield rootFolder.getLocalItems(); equal(localItems.length, items.length, "found merged items"); localItems.forEach(function(item) { ok(item.id == "G_UL4ZhOyX8m" || item.id == "G_UL4ZhOyX8n" ||
--- a/services/cloudsync/tests/xpcshell/test_tabs.js +++ b/services/cloudsync/tests/xpcshell/test_tabs.js @@ -12,18 +12,25 @@ function run_test() { add_task(function* test_get_remote_tabs() { let cloudSync = CloudSync(); let clients = yield cloudSync.tabs.getRemoteTabs(); equal(clients.length, 0); yield cloudSync.tabs.mergeRemoteTabs({ id: "001", name: "FakeClient", - }, [ - {url:"https://www.google.ca?a=å%20ä%20ö", title:"Google Canada", icon:"https://www.google.ca/favicon.ico", lastUsed:0}, - {url:"http://www.reddit.com", title:"Reddit", icon:"http://www.reddit.com/favicon.ico", lastUsed:1}, - ]); + }, [{ + url: "https://www.google.ca?a=å%20ä%20ö", + title: "Google Canada", + icon: "https://www.google.ca/favicon.ico", + lastUsed: 0 + }, { + url: "http://www.reddit.com", + title: "Reddit", + icon: "http://www.reddit.com/favicon.ico", + lastUsed: 1 + }]); ok(cloudSync.tabs.hasRemoteTabs()); clients = yield cloudSync.tabs.getRemoteTabs(); equal(clients.length, 1); equal(clients[0].tabs.size, 2); });
--- a/services/common/tests/unit/test_blocklist_certificates.js +++ b/services/common/tests/unit/test_blocklist_certificates.js @@ -164,89 +164,98 @@ function getSampleResponse(req, port) { "GET:/v1/?": { "sampleHeaders": [ "Access-Control-Allow-Origin: *", "Access-Control-Expose-Headers: Retry-After, Content-Length, Alert, Backoff", "Content-Type: application/json; charset=UTF-8", "Server: waitress" ], "status": {status: 200, statusText: "OK"}, - "responseBody": JSON.stringify({"settings":{"batch_max_requests":25}, "url":`http://localhost:${port}/v1/`, "documentation":"https://kinto.readthedocs.org/", "version":"1.5.1", "commit":"cbc6f58", "hello":"kinto"}) + "responseBody": JSON.stringify({ + "settings": { + "batch_max_requests": 25 + }, + "url": `http://localhost:${port}/v1/`, + "documentation": "https://kinto.readthedocs.org/", + "version": "1.5.1", + "commit": "cbc6f58", + "hello": "kinto" + }) }, "GET:/v1/buckets/blocklists/collections/certificates/records?_sort=-last_modified": { "sampleHeaders": [ "Access-Control-Allow-Origin: *", "Access-Control-Expose-Headers: Retry-After, Content-Length, Alert, Backoff", "Content-Type: application/json; charset=UTF-8", "Server: waitress", "Etag: \"1000\"" ], "status": {status: 200, statusText: "OK"}, - "responseBody": JSON.stringify({"data":[{}]}) + "responseBody": JSON.stringify({"data": [{}]}) }, "GET:/v1/buckets/blocklists/collections/certificates/records?_sort=-last_modified&_since=1000": { "sampleHeaders": [ "Access-Control-Allow-Origin: *", "Access-Control-Expose-Headers: Retry-After, Content-Length, Alert, Backoff", "Content-Type: application/json; charset=UTF-8", "Server: waitress", "Etag: \"3000\"" ], "status": {status: 200, statusText: "OK"}, - "responseBody": JSON.stringify({"data":[{ + "responseBody": JSON.stringify({"data": [{ "issuerName": "MEQxCzAJBgNVBAYTAlVTMRUwEwYDVQQKEwx0aGF3dGUsIEluYy4xHjAcBgNVBAMTFXRoYXd0ZSBFViBTU0wgQ0EgLSBHMw==", - "serialNumber":"CrTHPEE6AZSfI3jysin2bA==", - "id":"78cf8900-fdea-4ce5-f8fb-b78710617718", - "last_modified":3000 + "serialNumber": "CrTHPEE6AZSfI3jysin2bA==", + "id": "78cf8900-fdea-4ce5-f8fb-b78710617718", + "last_modified": 3000 }]}) }, "GET:/v1/buckets/blocklists/collections/certificates/records?_sort=-last_modified&_since=3000": { "sampleHeaders": [ "Access-Control-Allow-Origin: *", "Access-Control-Expose-Headers: Retry-After, Content-Length, Alert, Backoff", "Content-Type: application/json; charset=UTF-8", "Server: waitress", "Etag: \"4000\"" ], "status": {status: 200, statusText: "OK"}, - "responseBody": JSON.stringify({"data":[{ - "issuerName":"MFkxCzAJBgNVBAYTAk5MMR4wHAYDVQQKExVTdGFhdCBkZXIgTmVkZXJsYW5kZW4xKjAoBgNVBAMTIVN0YWF0IGRlciBOZWRlcmxhbmRlbiBPdmVyaGVpZCBDQQ", - "serialNumber":"ATFpsA==", - "id":"dabafde9-df4a-ddba-2548-748da04cc02c", - "last_modified":4000 + "responseBody": JSON.stringify({"data": [{ + "issuerName": "MFkxCzAJBgNVBAYTAk5MMR4wHAYDVQQKExVTdGFhdCBkZXIgTmVkZXJsYW5kZW4xKjAoBgNVBAMTIVN0YWF0IGRlciBOZWRlcmxhbmRlbiBPdmVyaGVpZCBDQQ", + "serialNumber": "ATFpsA==", + "id": "dabafde9-df4a-ddba-2548-748da04cc02c", + "last_modified": 4000 }, { - "subject":"MCIxIDAeBgNVBAMMF0Fub3RoZXIgVGVzdCBFbmQtZW50aXR5", - "pubKeyHash":"VCIlmPM9NkgFQtrs4Oa5TeFcDu6MWRTKSNdePEhOgD8=", - "id":"dabafde9-df4a-ddba-2548-748da04cc02d", - "last_modified":4000 + "subject": "MCIxIDAeBgNVBAMMF0Fub3RoZXIgVGVzdCBFbmQtZW50aXR5", + "pubKeyHash": "VCIlmPM9NkgFQtrs4Oa5TeFcDu6MWRTKSNdePEhOgD8=", + "id": "dabafde9-df4a-ddba-2548-748da04cc02d", + "last_modified": 4000 }]}) }, "GET:/v1/buckets/blocklists/collections/certificates/records?_sort=-last_modified&_since=4000": { "sampleHeaders": [ "Access-Control-Allow-Origin: *", "Access-Control-Expose-Headers: Retry-After, Content-Length, Alert, Backoff", "Content-Type: application/json; charset=UTF-8", "Server: waitress", "Etag: \"5000\"" ], "status": {status: 200, statusText: "OK"}, - "responseBody": JSON.stringify({"data":[{ - "issuerName":"not a base64 encoded issuer", - "serialNumber":"not a base64 encoded serial", - "id":"dabafde9-df4a-ddba-2548-748da04cc02e", - "last_modified":5000 + "responseBody": JSON.stringify({"data": [{ + "issuerName": "not a base64 encoded issuer", + "serialNumber": "not a base64 encoded serial", + "id": "dabafde9-df4a-ddba-2548-748da04cc02e", + "last_modified": 5000 }, { - "subject":"not a base64 encoded subject", - "pubKeyHash":"not a base64 encoded pubKeyHash", - "id":"dabafde9-df4a-ddba-2548-748da04cc02f", - "last_modified":5000 + "subject": "not a base64 encoded subject", + "pubKeyHash": "not a base64 encoded pubKeyHash", + "id": "dabafde9-df4a-ddba-2548-748da04cc02f", + "last_modified": 5000 }, { - "subject":"MCIxIDAeBgNVBAMMF0Fub3RoZXIgVGVzdCBFbmQtZW50aXR5", - "pubKeyHash":"VCIlmPM9NkgFQtrs4Oa5TeFcDu6MWRTKSNdePEhOgD8=", - "id":"dabafde9-df4a-ddba-2548-748da04cc02g", - "last_modified":5000 + "subject": "MCIxIDAeBgNVBAMMF0Fub3RoZXIgVGVzdCBFbmQtZW50aXR5", + "pubKeyHash": "VCIlmPM9NkgFQtrs4Oa5TeFcDu6MWRTKSNdePEhOgD8=", + "id": "dabafde9-df4a-ddba-2548-748da04cc02g", + "last_modified": 5000 }]}) } }; return responses[`${req.method}:${req.path}?${req.queryString}`] || responses[req.method]; }
--- a/services/common/tests/unit/test_blocklist_clients.js +++ b/services/common/tests/unit/test_blocklist_clients.js @@ -226,28 +226,37 @@ function getSampleResponse(req, port) { "GET:/v1/?": { "sampleHeaders": [ "Access-Control-Allow-Origin: *", "Access-Control-Expose-Headers: Retry-After, Content-Length, Alert, Backoff", "Content-Type: application/json; charset=UTF-8", "Server: waitress" ], "status": {status: 200, statusText: "OK"}, - "responseBody": JSON.stringify({"settings":{"batch_max_requests":25}, "url":`http://localhost:${port}/v1/`, "documentation":"https://kinto.readthedocs.org/", "version":"1.5.1", "commit":"cbc6f58", "hello":"kinto"}) + "responseBody": JSON.stringify({ + "settings": { + "batch_max_requests": 25 + }, + "url": `http://localhost:${port}/v1/`, + "documentation": "https://kinto.readthedocs.org/", + "version": "1.5.1", + "commit": "cbc6f58", + "hello": "kinto" + }) }, "GET:/v1/buckets/blocklists/collections/addons/records?_sort=-last_modified": { "sampleHeaders": [ "Access-Control-Allow-Origin: *", "Access-Control-Expose-Headers: Retry-After, Content-Length, Alert, Backoff", "Content-Type: application/json; charset=UTF-8", "Server: waitress", "Etag: \"3000\"" ], "status": {status: 200, statusText: "OK"}, - "responseBody": JSON.stringify({"data":[{ + "responseBody": JSON.stringify({"data": [{ "prefs": [], "blockID": "i539", "last_modified": 3000, "versionRange": [{ "targetApplication": [], "maxVersion": "*", "minVersion": "0", "severity": "1" @@ -260,34 +269,34 @@ function getSampleResponse(req, port) { "sampleHeaders": [ "Access-Control-Allow-Origin: *", "Access-Control-Expose-Headers: Retry-After, Content-Length, Alert, Backoff", "Content-Type: application/json; charset=UTF-8", "Server: waitress", "Etag: \"3000\"" ], "status": {status: 200, statusText: "OK"}, - "responseBody": JSON.stringify({"data":[{ + "responseBody": JSON.stringify({"data": [{ "matchFilename": "NPFFAddOn.dll", "blockID": "p28", "id": "7b1e0b3c-e390-a817-11b6-a6887f65f56e", "last_modified": 3000, "versionRange": [] }]}) }, "GET:/v1/buckets/blocklists/collections/gfx/records?_sort=-last_modified": { "sampleHeaders": [ "Access-Control-Allow-Origin: *", "Access-Control-Expose-Headers: Retry-After, Content-Length, Alert, Backoff", "Content-Type: application/json; charset=UTF-8", "Server: waitress", "Etag: \"3000\"" ], "status": {status: 200, statusText: "OK"}, - "responseBody": JSON.stringify({"data":[{ + "responseBody": JSON.stringify({"data": [{ "driverVersionComparator": "LESS_THAN_OR_EQUAL", "driverVersion": "8.17.12.5896", "vendor": "0x10de", "blockID": "g36", "feature": "DIRECT3D_9_LAYERS", "devices": ["0x0a6c"], "featureStatus": "BLOCKED_DRIVER_VERSION", "last_modified": 3000, @@ -299,17 +308,17 @@ function getSampleResponse(req, port) { "sampleHeaders": [ "Access-Control-Allow-Origin: *", "Access-Control-Expose-Headers: Retry-After, Content-Length, Alert, Backoff", "Content-Type: application/json; charset=UTF-8", "Server: waitress", "Etag: \"4000\"" ], "status": {status: 200, statusText: "OK"}, - "responseBody": JSON.stringify({"data":[{ + "responseBody": JSON.stringify({"data": [{ "prefs": [], "blockID": "i808", "last_modified": 4000, "versionRange": [{ "targetApplication": [], "maxVersion": "*", "minVersion": "0", "severity": "3" @@ -334,17 +343,17 @@ function getSampleResponse(req, port) { "sampleHeaders": [ "Access-Control-Allow-Origin: *", "Access-Control-Expose-Headers: Retry-After, Content-Length, Alert, Backoff", "Content-Type: application/json; charset=UTF-8", "Server: waitress", "Etag: \"4000\"" ], "status": {status: 200, statusText: "OK"}, - "responseBody": JSON.stringify({"data":[{ + "responseBody": JSON.stringify({"data": [{ "infoURL": "https://get.adobe.com/flashplayer/", "blockID": "p1044", "matchFilename": "libflashplayer\\.so", "last_modified": 4000, "versionRange": [{ "targetApplication": [], "minVersion": "11.2.202.509", "maxVersion": "11.2.202.539", @@ -371,17 +380,17 @@ function getSampleResponse(req, port) { "sampleHeaders": [ "Access-Control-Allow-Origin: *", "Access-Control-Expose-Headers: Retry-After, Content-Length, Alert, Backoff", "Content-Type: application/json; charset=UTF-8", "Server: waitress", "Etag: \"4000\"" ], "status": {status: 200, statusText: "OK"}, - "responseBody": JSON.stringify({"data":[{ + "responseBody": JSON.stringify({"data": [{ "vendor": "0x8086", "blockID": "g204", "feature": "WEBGL_MSAA", "devices": [], "id": "c96bca82-e6bd-044d-14c4-9c1d67e9283a", "last_modified": 4000, "os": "Darwin 10", "featureStatus": "BLOCKED_DEVICE"
--- a/services/common/tests/unit/test_blocklist_pinning.js +++ b/services/common/tests/unit/test_blocklist_pinning.js @@ -213,127 +213,136 @@ function getSampleResponse(req, port) { "GET:/v1/?": { "sampleHeaders": [ "Access-Control-Allow-Origin: *", "Access-Control-Expose-Headers: Retry-After, Content-Length, Alert, Backoff", "Content-Type: application/json; charset=UTF-8", "Server: waitress" ], "status": {status: 200, statusText: "OK"}, - "responseBody": JSON.stringify({"settings":{"batch_max_requests":25}, "url":`http://localhost:${port}/v1/`, "documentation":"https://kinto.readthedocs.org/", "version":"1.5.1", "commit":"cbc6f58", "hello":"kinto"}) + "responseBody": JSON.stringify({ + "settings": { + "batch_max_requests": 25 + }, + "url": `http://localhost:${port}/v1/`, + "documentation": "https://kinto.readthedocs.org/", + "version": "1.5.1", + "commit": "cbc6f58", + "hello": "kinto" + }) }, "GET:/v1/buckets/pinning/collections/pins/records?_sort=-last_modified": { "sampleHeaders": [ "Access-Control-Allow-Origin: *", "Access-Control-Expose-Headers: Retry-After, Content-Length, Alert, Backoff", "Content-Type: application/json; charset=UTF-8", "Server: waitress", "Etag: \"3000\"" ], "status": {status: 200, statusText: "OK"}, - "responseBody": JSON.stringify({"data":[{ + "responseBody": JSON.stringify({"data": [{ "pinType": "KeyPin", "hostName": "one.example.com", "includeSubdomains": false, "expires": new Date().getTime() + 1000000, - "pins" : ["cUPcTAZWKaASuYWhhneDttWpY3oBAkE3h2+soZS7sWs=", + "pins": ["cUPcTAZWKaASuYWhhneDttWpY3oBAkE3h2+soZS7sWs=", "M8HztCzM3elUxkcjR2S5P4hhyBNf6lHkmjAHKhpGPWE="], - "versions" : [appInfo.version], - "id":"78cf8900-fdea-4ce5-f8fb-b78710617718", - "last_modified":3000 + "versions": [appInfo.version], + "id": "78cf8900-fdea-4ce5-f8fb-b78710617718", + "last_modified": 3000 }]}) }, "GET:/v1/buckets/pinning/collections/pins/records?_sort=-last_modified&_since=3000": { "sampleHeaders": [ "Access-Control-Allow-Origin: *", "Access-Control-Expose-Headers: Retry-After, Content-Length, Alert, Backoff", "Content-Type: application/json; charset=UTF-8", "Server: waitress", "Etag: \"4000\"" ], "status": {status: 200, statusText: "OK"}, - "responseBody": JSON.stringify({"data":[{ + "responseBody": JSON.stringify({"data": [{ "pinType": "KeyPin", "hostName": "two.example.com", "includeSubdomains": false, "expires": new Date().getTime() + 1000000, - "pins" : ["cUPcTAZWKaASuYWhhneDttWpY3oBAkE3h2+soZS7sWs=", + "pins": ["cUPcTAZWKaASuYWhhneDttWpY3oBAkE3h2+soZS7sWs=", "M8HztCzM3elUxkcjR2S5P4hhyBNf6lHkmjAHKhpGPWE="], - "versions" : [appInfo.version], - "id":"dabafde9-df4a-ddba-2548-748da04cc02c", - "last_modified":4000 + "versions": [appInfo.version], + "id": "dabafde9-df4a-ddba-2548-748da04cc02c", + "last_modified": 4000 }, { "pinType": "KeyPin", "hostName": "three.example.com", "includeSubdomains": false, "expires": new Date().getTime() + 1000000, - "pins" : ["cUPcTAZWKaASuYWhhneDttWpY3oBAkE3h2+soZS7sWs=", + "pins": ["cUPcTAZWKaASuYWhhneDttWpY3oBAkE3h2+soZS7sWs=", "M8HztCzM3elUxkcjR2S5P4hhyBNf6lHkmjAHKhpGPWE="], - "versions" : [appInfo.version, "some other version that won't match"], - "id":"dabafde9-df4a-ddba-2548-748da04cc02d", - "last_modified":4000 + "versions": [appInfo.version, "some other version that won't match"], + "id": "dabafde9-df4a-ddba-2548-748da04cc02d", + "last_modified": 4000 }, { "pinType": "KeyPin", "hostName": "four.example.com", "includeSubdomains": false, "expires": new Date().getTime() + 1000000, - "pins" : ["cUPcTAZWKaASuYWhhneDttWpY3oBAkE3h2+soZS7sWs=", + "pins": ["cUPcTAZWKaASuYWhhneDttWpY3oBAkE3h2+soZS7sWs=", "M8HztCzM3elUxkcjR2S5P4hhyBNf6lHkmjAHKhpGPWE="], - "versions" : ["some version that won't match"], - "id":"dabafde9-df4a-ddba-2548-748da04cc02e", - "last_modified":4000 + "versions": ["some version that won't match"], + "id": "dabafde9-df4a-ddba-2548-748da04cc02e", + "last_modified": 4000 }, { "pinType": "STSPin", "hostName": "five.example.com", "includeSubdomains": false, "expires": new Date().getTime() + 1000000, - "versions" : [appInfo.version, "some version that won't match"], - "id":"dabafde9-df4a-ddba-2548-748da04cc032", - "last_modified":4000 + "versions": [appInfo.version, "some version that won't match"], + "id": "dabafde9-df4a-ddba-2548-748da04cc032", + "last_modified": 4000 }]}) }, "GET:/v1/buckets/pinning/collections/pins/records?_sort=-last_modified&_since=4000": { "sampleHeaders": [ "Access-Control-Allow-Origin: *", "Access-Control-Expose-Headers: Retry-After, Content-Length, Alert, Backoff", "Content-Type: application/json; charset=UTF-8", "Server: waitress", "Etag: \"5000\"" ], "status": {status: 200, statusText: "OK"}, - "responseBody": JSON.stringify({"data":[{ - "irrelevant":"this entry looks nothing whatsoever like a pin preload", + "responseBody": JSON.stringify({"data": [{ + "irrelevant": "this entry looks nothing whatsoever like a pin preload", "pinType": "KeyPin", - "id":"dabafde9-df4a-ddba-2548-748da04cc02f", - "last_modified":5000 + "id": "dabafde9-df4a-ddba-2548-748da04cc02f", + "last_modified": 5000 }, { - "irrelevant":"this entry has data of the wrong type", + "irrelevant": "this entry has data of the wrong type", "pinType": "KeyPin", "hostName": 3, "includeSubdomains": "nonsense", "expires": "more nonsense", - "pins" : [1, 2, 3, 4], - "id":"dabafde9-df4a-ddba-2548-748da04cc030", - "last_modified":5000 + "pins": [1, 2, 3, 4], + "id": "dabafde9-df4a-ddba-2548-748da04cc030", + "last_modified": 5000 }, { - "irrelevant":"this entry is missing the actual pins", + "irrelevant": "this entry is missing the actual pins", "pinType": "KeyPin", "hostName": "missingpins.example.com", "includeSubdomains": false, "expires": new Date().getTime() + 1000000, - "versions" : [appInfo.version], - "id":"dabafde9-df4a-ddba-2548-748da04cc031", - "last_modified":5000 + "versions": [appInfo.version], + "id": "dabafde9-df4a-ddba-2548-748da04cc031", + "last_modified": 5000 }, { "pinType": "STSPin", "hostName": "five.example.com", "includeSubdomains": true, "expires": new Date().getTime() + 1000000, - "versions" : [appInfo.version, "some version that won't match"], - "id":"dabafde9-df4a-ddba-2548-748da04cc032", - "last_modified":5000 + "versions": [appInfo.version, "some version that won't match"], + "id": "dabafde9-df4a-ddba-2548-748da04cc032", + "last_modified": 5000 }]}) } }; return responses[`${req.method}:${req.path}?${req.queryString}`] || responses[req.method]; }
--- a/services/common/tests/unit/test_blocklist_signatures.js +++ b/services/common/tests/unit/test_blocklist_signatures.js @@ -250,17 +250,26 @@ add_task(function* test_check_signatures comment: "RESPONSE_SERVER_SETTINGS", sampleHeaders: [ "Access-Control-Allow-Origin: *", "Access-Control-Expose-Headers: Retry-After, Content-Length, Alert, Backoff", "Content-Type: application/json; charset=UTF-8", "Server: waitress" ], status: {status: 200, statusText: "OK"}, - responseBody: JSON.stringify({"settings":{"batch_max_requests":25}, "url":`http://localhost:${port}/v1/`, "documentation":"https://kinto.readthedocs.org/", "version":"1.5.1", "commit":"cbc6f58", "hello":"kinto"}) + responseBody: JSON.stringify({ + "settings": { + "batch_max_requests": 25 + }, + "url": `http://localhost:${port}/v1/`, + "documentation": "https://kinto.readthedocs.org/", + "version": "1.5.1", + "commit": "cbc6f58", + "hello": "kinto" + }) }; // This is the initial, empty state of the collection. This is only used // for the first sync. const RESPONSE_EMPTY_INITIAL = { comment: "RESPONSE_EMPTY_INITIAL", sampleHeaders: [ "Content-Type: application/json; charset=UTF-8", @@ -276,17 +285,17 @@ add_task(function* test_check_signatures // The collection metadata containing the signature for the empty // collection. const RESPONSE_META_EMPTY_SIG = makeMetaResponse(1000, RESPONSE_BODY_META_EMPTY_SIG, "RESPONSE_META_EMPTY_SIG"); // Here, we map request method and path to the available responses const emptyCollectionResponses = { - "GET:/test_blocklist_signatures/test_cert_chain.pem?":[RESPONSE_CERT_CHAIN], + "GET:/test_blocklist_signatures/test_cert_chain.pem?": [RESPONSE_CERT_CHAIN], "GET:/v1/?": [RESPONSE_SERVER_SETTINGS], "GET:/v1/buckets/blocklists/collections/certificates/records?_sort=-last_modified": [RESPONSE_EMPTY_INITIAL], "GET:/v1/buckets/blocklists/collections/certificates?": [RESPONSE_META_EMPTY_SIG] }; // .. and use this map to register handlers for each path
--- a/services/common/tests/unit/test_kinto.js +++ b/services/common/tests/unit/test_kinto.js @@ -14,17 +14,17 @@ var server; const kintoFilename = "kinto.sqlite"; function do_get_kinto_sqliteHandle() { return FirefoxAdapter.openConnection({path: kintoFilename}); } function do_get_kinto_collection(sqliteHandle, collection = "test_collection") { let config = { - remote:`http://localhost:${server.identity.primaryPort}/v1/`, + remote: `http://localhost:${server.identity.primaryPort}/v1/`, headers: {Authorization: "Basic " + btoa("user:pass")}, adapter: FirefoxAdapter, adapterOptions: {sqliteHandle}, }; return new Kinto(config).collection(collection); } function* clear_collection() { @@ -373,48 +373,78 @@ function getSampleResponse(req, port) { "GET:/v1/?": { "sampleHeaders": [ "Access-Control-Allow-Origin: *", "Access-Control-Expose-Headers: Retry-After, Content-Length, Alert, Backoff", "Content-Type: application/json; charset=UTF-8", "Server: waitress" ], "status": {status: 200, statusText: "OK"}, - "responseBody": JSON.stringify({"settings":{"batch_max_requests":25}, "url":`http://localhost:${port}/v1/`, "documentation":"https://kinto.readthedocs.org/", "version":"1.5.1", "commit":"cbc6f58", "hello":"kinto"}) + "responseBody": JSON.stringify({ + "settings": { + "batch_max_requests": 25 + }, + "url": `http://localhost:${port}/v1/`, + "documentation": "https://kinto.readthedocs.org/", + "version": "1.5.1", + "commit": "cbc6f58", + "hello": "kinto" + }) }, "GET:/v1/buckets/default/collections/test_collection/records?_sort=-last_modified": { "sampleHeaders": [ "Access-Control-Allow-Origin: *", "Access-Control-Expose-Headers: Retry-After, Content-Length, Alert, Backoff", "Content-Type: application/json; charset=UTF-8", "Server: waitress", "Etag: \"1445606341071\"" ], "status": {status: 200, statusText: "OK"}, - "responseBody": JSON.stringify({"data":[{"last_modified":1445606341071, "done":false, "id":"68db8313-686e-4fff-835e-07d78ad6f2af", "title":"New test"}]}) + "responseBody": JSON.stringify({ + "data": [{ + "last_modified": 1445606341071, + "done": false, + "id": "68db8313-686e-4fff-835e-07d78ad6f2af", + "title": "New test" + }] + }) }, "GET:/v1/buckets/default/collections/test_collection/records?_sort=-last_modified&_since=1445606341071": { "sampleHeaders": [ "Access-Control-Allow-Origin: *", "Access-Control-Expose-Headers: Retry-After, Content-Length, Alert, Backoff", "Content-Type: application/json; charset=UTF-8", "Server: waitress", "Etag: \"1445607941223\"" ], "status": {status: 200, statusText: "OK"}, - "responseBody": JSON.stringify({"data":[{"last_modified":1445607941223, "done":false, "id":"901967b0-f729-4b30-8d8d-499cba7f4b1d", "title":"Another new test"}]}) + "responseBody": JSON.stringify({ + "data": [{ + "last_modified": 1445607941223, + "done": false, + "id": "901967b0-f729-4b30-8d8d-499cba7f4b1d", + "title": "Another new test" + }] + }) }, "GET:/v1/buckets/default/collections/test_collection/records?_sort=-last_modified&_since=1445607941223": { "sampleHeaders": [ "Access-Control-Allow-Origin: *", "Access-Control-Expose-Headers: Retry-After, Content-Length, Alert, Backoff", "Content-Type: application/json; charset=UTF-8", "Server: waitress", "Etag: \"1445607541265\"" ], "status": {status: 200, statusText: "OK"}, - "responseBody": JSON.stringify({"data":[{"last_modified":1445607541265, "done":false, "id":"901967b0-f729-4b30-8d8d-499cba7f4b1d", "title":"Modified title"}]}) + "responseBody": JSON.stringify({ + "data": [{ + "last_modified": 1445607541265, + "done": false, + "id": "901967b0-f729-4b30-8d8d-499cba7f4b1d", + "title": "Modified title" + }] + }) } }; return responses[`${req.method}:${req.path}?${req.queryString}`] || responses[req.method]; }
--- a/services/common/tests/unit/test_storage_adapter.js +++ b/services/common/tests/unit/test_storage_adapter.js @@ -38,30 +38,30 @@ function test_collection_operations() { yield adapter.clear(); yield sqliteHandle.close(); }); // test creating new records... and getting them again add_task(function* test_kinto_create_new_get_existing() { let sqliteHandle = yield do_get_kinto_connection(); let adapter = do_get_kinto_adapter(sqliteHandle); - let record = {id:"test-id", foo:"bar"}; + let record = {id: "test-id", foo: "bar"}; yield adapter.execute((transaction) => transaction.create(record)); let newRecord = yield adapter.get("test-id"); // ensure the record is the same as when it was added deepEqual(record, newRecord); yield sqliteHandle.close(); }); // test removing records add_task(function* test_kinto_can_remove_some_records() { let sqliteHandle = yield do_get_kinto_connection(); let adapter = do_get_kinto_adapter(sqliteHandle); // create a second record - let record = {id:"test-id-2", foo:"baz"}; + let record = {id: "test-id-2", foo: "baz"}; yield adapter.execute((transaction) => transaction.create(record)); let newRecord = yield adapter.get("test-id-2"); deepEqual(record, newRecord); // delete the record yield adapter.execute((transaction) => transaction.delete(record.id)); newRecord = yield adapter.get(record.id); // ... and ensure it's no longer there do_check_eq(newRecord, undefined); @@ -81,33 +81,33 @@ function test_collection_operations() { do_check_eq(newRecord, undefined); yield sqliteHandle.close(); }); // test updating records... and getting them again add_task(function* test_kinto_update_get_existing() { let sqliteHandle = yield do_get_kinto_connection(); let adapter = do_get_kinto_adapter(sqliteHandle); - let originalRecord = {id:"test-id", foo:"bar"}; - let updatedRecord = {id:"test-id", foo:"baz"}; + let originalRecord = {id: "test-id", foo: "bar"}; + let updatedRecord = {id: "test-id", foo: "baz"}; yield adapter.clear(); yield adapter.execute((transaction) => transaction.create(originalRecord)); yield adapter.execute((transaction) => transaction.update(updatedRecord)); // ensure the record exists let newRecord = yield adapter.get("test-id"); // ensure the record is the same as when it was added deepEqual(updatedRecord, newRecord); yield sqliteHandle.close(); }); // test listing records add_task(function* test_kinto_list() { let sqliteHandle = yield do_get_kinto_connection(); let adapter = do_get_kinto_adapter(sqliteHandle); - let originalRecord = {id:"test-id-1", foo:"bar"}; + let originalRecord = {id: "test-id-1", foo: "bar"}; let records = yield adapter.list(); do_check_eq(records.length, 1); yield adapter.execute((transaction) => transaction.create(originalRecord)); records = yield adapter.list(); do_check_eq(records.length, 2); yield sqliteHandle.close(); });
--- a/services/crypto/modules/WeaveCrypto.js +++ b/services/crypto/modules/WeaveCrypto.js @@ -23,24 +23,24 @@ const KEY_DERIVATION_HASHING_ALGO = "SHA const KEY_DERIVATION_ITERATIONS = 4096; // PKCS#5 recommends at least 1000. const DERIVED_KEY_ALGO = CRYPT_ALGO; this.WeaveCrypto = function WeaveCrypto() { this.init(); }; WeaveCrypto.prototype = { - prefBranch : null, - debug : true, // services.sync.log.cryptoDebug + prefBranch: null, + debug: true, // services.sync.log.cryptoDebug - observer : { - _self : null, + observer: { + _self: null, - QueryInterface : XPCOMUtils.generateQI([Ci.nsIObserver, - Ci.nsISupportsWeakReference]), + QueryInterface: XPCOMUtils.generateQI([Ci.nsIObserver, + Ci.nsISupportsWeakReference]), observe(subject, topic, data) { let self = this._self; self.log("Observed " + topic + " topic."); if (topic == "nsPref:changed") { self.debug = self.prefBranch.getBoolPref("cryptoDebug"); } }
--- a/services/crypto/modules/utils.js +++ b/services/crypto/modules/utils.js @@ -177,17 +177,17 @@ this.CryptoUtils = { * hmacLen: The hmac length * * The default value of 20 for hmacLen is appropriate for SHA1. For SHA256, * hmacLen should be 32. * * The output is an octet string of length dkLen, which you * can encode as you wish. */ - pbkdf2Generate : function pbkdf2Generate(P, S, c, dkLen, + pbkdf2Generate: function pbkdf2Generate(P, S, c, dkLen, hmacAlg = Ci.nsICryptoHMAC.SHA1, hmacLen = 20) { // We don't have a default in the algo itself, as NSS does. if (!dkLen) { throw new Error("dkLen should be defined"); } function F(S, c, i, h) {
--- a/services/sync/modules/engines/clients.js +++ b/services/sync/modules/engines/clients.js @@ -291,25 +291,25 @@ ClientEngine.prototype = { const allCommands = this._readCommands(); delete allCommands[clientId]; this._saveCommands(allCommands); }, // We assume that clients not present in the FxA Device Manager list have been // disconnected and so are stale _refreshKnownStaleClients() { - this._log.debug('Refreshing the known stale clients list'); + this._log.debug("Refreshing the known stale clients list"); let localClients = Object.values(this._store._remoteClients) .filter(client => client.fxaDeviceId) // iOS client records don't have fxaDeviceId .map(client => client.fxaDeviceId); let fxaClients; try { fxaClients = Async.promiseSpinningly(this.fxAccounts.getDeviceList()).map(device => device.id); } catch (ex) { - this._log.error('Could not retrieve the FxA device list', ex); + this._log.error("Could not retrieve the FxA device list", ex); this._knownStaleFxADeviceIds = []; return; } this._knownStaleFxADeviceIds = Utils.arraySub(localClients, fxaClients); }, _syncStartup() { // Reupload new client record periodically.
--- a/services/sync/modules/util.js +++ b/services/sync/modules/util.js @@ -297,38 +297,38 @@ this.Utils = { base64Key: function base64Key(keyData) { return btoa(keyData); }, /** * N.B., salt should be base64 encoded, even though we have to decode * it later! */ - derivePresentableKeyFromPassphrase : function derivePresentableKeyFromPassphrase(passphrase, salt, keyLength, forceJS) { + derivePresentableKeyFromPassphrase: function derivePresentableKeyFromPassphrase(passphrase, salt, keyLength, forceJS) { let k = CryptoUtils.deriveKeyFromPassphrase(passphrase, salt, keyLength, forceJS); return Utils.encodeKeyBase32(k); }, /** * N.B., salt should be base64 encoded, even though we have to decode * it later! */ - deriveEncodedKeyFromPassphrase : function deriveEncodedKeyFromPassphrase(passphrase, salt, keyLength, forceJS) { + deriveEncodedKeyFromPassphrase: function deriveEncodedKeyFromPassphrase(passphrase, salt, keyLength, forceJS) { let k = CryptoUtils.deriveKeyFromPassphrase(passphrase, salt, keyLength, forceJS); return Utils.base64Key(k); }, /** * Take a base64-encoded 128-bit AES key, returning it as five groups of five * uppercase alphanumeric characters, separated by hyphens. * A.K.A. base64-to-base32 encoding. */ - presentEncodedKeyAsSyncKey : function presentEncodedKeyAsSyncKey(encodedKey) { + presentEncodedKeyAsSyncKey: function presentEncodedKeyAsSyncKey(encodedKey) { return Utils.encodeKeyBase32(atob(encodedKey)); }, jsonFilePath(filePath) { return OS.Path.normalize(OS.Path.join(OS.Constants.Path.profileDir, "weave", filePath + ".json")); }, /** @@ -456,23 +456,23 @@ this.Utils = { } return OS.File.remove(path, { ignoreAbsent: true }); }, getErrorString: function Utils_getErrorString(error, args) { try { if (args) { return Str.errors.formatStringFromName(error, args, args.length); - } else { - return Str.errors.GetStringFromName(error); } + return Str.errors.GetStringFromName(error); + } catch (e) {} // basically returns "Unknown Error" - return Str.errors.GetStringFromName('error.reason.unknown'); + return Str.errors.GetStringFromName("error.reason.unknown"); }, /** * Generate 26 characters. */ generatePassphrase: function generatePassphrase() { // Note that this is a different base32 alphabet to the one we use for // other tasks. It's lowercase, uses different letters, and needs to be
--- a/services/sync/tests/tps/test_existing_bookmarks.js +++ b/services/sync/tests/tps/test_existing_bookmarks.js @@ -53,32 +53,32 @@ var bookmarks_after = { } ] }; /* * Test phases */ -Phase('phase1', [ +Phase("phase1", [ [Bookmarks.add, bookmarks_initial], [Bookmarks.verify, bookmarks_initial], [Sync] ]); -Phase('phase2', [ +Phase("phase2", [ [Bookmarks.add, bookmarks_initial], [Bookmarks.verify, bookmarks_initial], [Sync] ]); -Phase('phase3', [ +Phase("phase3", [ [Bookmarks.verify, bookmarks_initial], [Bookmarks.modify, bookmarks_initial], [Bookmarks.verify, bookmarks_after], [Sync] ]); -Phase('phase4', [ +Phase("phase4", [ [Sync], [Bookmarks.verify, bookmarks_after] ]);
--- a/services/sync/tests/unit/test_bookmark_engine.js +++ b/services/sync/tests/unit/test_bookmark_engine.js @@ -508,32 +508,32 @@ function FakeRecord(constructor, r) { // Bug 632287. add_task(async function test_mismatched_types() { _("Ensure that handling a record that changes type causes deletion " + "then re-adding."); let oldRecord = { "id": "l1nZZXfB8nC7", - "type":"folder", - "parentName":"Bookmarks Toolbar", - "title":"Innerst i Sneglehode", - "description":null, + "type": "folder", + "parentName": "Bookmarks Toolbar", + "title": "Innerst i Sneglehode", + "description": null, "parentid": "toolbar" }; oldRecord.cleartext = oldRecord; let newRecord = { "id": "l1nZZXfB8nC7", - "type":"livemark", - "siteUri":"http://sneglehode.wordpress.com/", - "feedUri":"http://sneglehode.wordpress.com/feed/", - "parentName":"Bookmarks Toolbar", - "title":"Innerst i Sneglehode", - "description":null, + "type": "livemark", + "siteUri": "http://sneglehode.wordpress.com/", + "feedUri": "http://sneglehode.wordpress.com/feed/", + "parentName": "Bookmarks Toolbar", + "title": "Innerst i Sneglehode", + "description": null, "children": ["HCRq40Rnxhrd", "YeyWCV1RVsYw", "GCceVZMhvMbP", "sYi2hevdArlF", "vjbZlPlSyGY8", "UtjUhVyrpeG6", "rVq8WMG2wfZI", "Lx0tcy43ZKhZ", "oT74WwV8_j4P", "IztsItWVSo3-"], "parentid": "toolbar" }; newRecord.cleartext = newRecord;
--- a/services/sync/tests/unit/test_bookmark_livemarks.js +++ b/services/sync/tests/unit/test_bookmark_livemarks.js @@ -16,24 +16,24 @@ var engine = Service.engineManager.get(" var store = engine._store; // Record borrowed from Bug 631361. var record631361 = { id: "M5bwUKK8hPyF", index: 150, modified: 1296768176.49, payload: - {"id":"M5bwUKK8hPyF", - "type":"livemark", - "siteUri":"http://www.bbc.co.uk/go/rss/int/news/-/news/", - "feedUri":"http://fxfeeds.mozilla.com/en-US/firefox/headlines.xml", - "parentName":"Bookmarks Toolbar", - "parentid":"toolbar", - "title":"Latest Headlines", - "description":"", + {"id": "M5bwUKK8hPyF", + "type": "livemark", + "siteUri": "http://www.bbc.co.uk/go/rss/int/news/-/news/", + "feedUri": "http://fxfeeds.mozilla.com/en-US/firefox/headlines.xml", + "parentName": "Bookmarks Toolbar", + "parentid": "toolbar", + "title": "Latest Headlines", + "description": "", "children": ["7oBdEZB-8BMO", "SUd1wktMNCTB", "eZe4QWzo1BcY", "YNBhGwhVnQsN", "92Aw2SMEkFg0", "uw0uKqrVFwd-", "x7mx2P3--8FJ", "d-jVF8UuC9Ye", "DV1XVtKLEiZ5", "g4mTaTjr837Z", "1Zi5W3lwBw8T", "FEYqlUHtbBWS", "qQd2u7LjosCB", "VUs2djqYfbvn", "KuhYnHocu7eg", "u2gcg9ILRg-3", "hfK_RP-EC7Ol", "Aq5qsa4E5msH", "6pZIbxuJTn-K", "k_fp0iN3yYMR", "59YD3iNOYO8O", "01afpSdAk2iz", "Cq-kjXDEPIoP", "HtNTjt9UwWWg", "IOU8QRSrTR--", "HJ5lSlBx6d1D", "j2dz5R5U6Khc", "5GvEjrNR0yJl",
--- a/services/sync/tests/unit/test_bookmark_repair.js +++ b/services/sync/tests/unit/test_bookmark_repair.js @@ -69,17 +69,17 @@ async function promiseValidationDone(exp let obs = promiseOneObserver("weave:engine:validate:finish"); let { subject: validationResult } = await obs; // check the results - anything non-zero is checked against |expected| let summary = validationResult.problems.getSummary(); let actual = summary.filter(({name, count}) => count); actual.sort((a, b) => String(a.name).localeCompare(b.name)); expected.sort((a, b) => String(a.name).localeCompare(b.name)); deepEqual(actual, expected); -}; +} async function cleanup(server) { bookmarksEngine._store.wipe(); clientsEngine._store.wipe(); Svc.Prefs.resetBranch(""); Service.recordManager.clearCache(); await promiseStopServer(server); } @@ -161,18 +161,18 @@ add_task(async function test_bookmark_re source: PlacesUtils.bookmarks.SOURCE_SYNC, }); deepEqual(bookmarksEngine.pullNewChanges(), {}, `Should not upload tombstone for ${bookmarkInfo.guid}`); // sync again - we should have a few problems... _("Sync again to trigger repair"); validationPromise = promiseValidationDone([ - {"name":"missingChildren","count":1}, - {"name":"structuralDifferences","count":1}, + {"name": "missingChildren", "count": 1}, + {"name": "structuralDifferences", "count": 1}, ]); Service.sync(); await validationPromise; let flowID = Svc.Prefs.get("repairs.bookmarks.flowID"); checkRecordedEvents([{ object: "repair", method: "started", value: undefined, @@ -391,18 +391,18 @@ add_task(async function test_repair_clie // sanity check we aren't going to sync this removal. do_check_empty(bookmarksEngine.pullNewChanges()); // sanity check that the bookmark is not there anymore do_check_false(await PlacesUtils.bookmarks.fetch(bookmarkInfo.guid)); // sync again - we should have a few problems... _("Syncing again."); validationPromise = promiseValidationDone([ - {"name":"clientMissing","count":1}, - {"name":"structuralDifferences","count":1}, + {"name": "clientMissing", "count": 1}, + {"name": "structuralDifferences", "count": 1}, ]); Service.sync(); await validationPromise; // We shouldn't have started a repair with our second client. equal(clientsEngine.getClientCommands(remoteID).length, 0); // Trigger a sync (will request the missing item) @@ -475,18 +475,18 @@ add_task(async function test_repair_serv await validationPromise; // Now we will reach into the server and hard-delete the bookmark user.collection("bookmarks").wbo(bookmarkInfo.guid).delete(); // sync again - we should have a few problems... _("Syncing again."); validationPromise = promiseValidationDone([ - {"name":"serverMissing","count":1}, - {"name":"missingChildren","count":1}, + {"name": "serverMissing", "count": 1}, + {"name": "missingChildren", "count": 1}, ]); Service.sync(); await validationPromise; // We shouldn't have started a repair with our second client. equal(clientsEngine.getClientCommands(remoteID).length, 0); // Trigger a sync (will upload the missing item) @@ -562,19 +562,19 @@ add_task(async function test_repair_serv server.insertWBO("foo", "bookmarks", new ServerWBO(bookmarkInfo.guid, encryptPayload({ id: bookmarkInfo.guid, deleted: true, }), Date.now() / 1000)); // sync again - we should have a few problems... _("Syncing again."); validationPromise = promiseValidationDone([ - {"name":"serverDeleted","count":1}, - {"name":"deletedChildren","count":1}, - {"name":"orphans","count":1} + {"name": "serverDeleted", "count": 1}, + {"name": "deletedChildren", "count": 1}, + {"name": "orphans", "count": 1} ]); Service.sync(); await validationPromise; // We shouldn't have started a repair with our second client. equal(clientsEngine.getClientCommands(remoteID).length, 0); // Trigger a sync (will upload the missing item)
--- a/services/sync/tests/unit/test_bookmark_repair_requestor.js +++ b/services/sync/tests/unit/test_bookmark_repair_requestor.js @@ -491,24 +491,24 @@ add_task(async function test_requestor_a requestor.continueRepairs(response); // We should have aborted now checkRepairFinished(); const expected = [ { method: "started", object: "repair", value: undefined, - extra: { flowID: flowID, numIDs: "3" }, + extra: { flowID, numIDs: "3" }, }, { method: "request", object: "repair", value: "upload", - extra: { flowID: flowID, numIDs: "3", deviceID: "client-a" }, + extra: { flowID, numIDs: "3", deviceID: "client-a" }, }, { method: "aborted", object: "repair", value: undefined, - extra: { flowID: flowID, numIDs: "3", reason: "other clients repairing" }, + extra: { flowID, numIDs: "3", reason: "other clients repairing" }, } ]; deepEqual(mockService._recordedEvents, expected); });
--- a/services/sync/tests/unit/test_errorhandler_2.js +++ b/services/sync/tests/unit/test_errorhandler_2.js @@ -942,17 +942,17 @@ add_task(async function test_engine_appl enableValidationPrefs(); let server = EHTestsCommon.sync_httpd_setup(); let engine = engineManager.get("catapult"); engine.enabled = true; delete engine.exception; engine.sync = function sync() { - Svc.Obs.notify("weave:engine:sync:applied", {newFailed:1}, "catapult"); + Svc.Obs.notify("weave:engine:sync:applied", {newFailed: 1}, "catapult"); }; Svc.Prefs.set("log.appender.file.logOnError", true); let promiseObserved = promiseOneObserver("weave:service:reset-file-log"); do_check_eq(Status.engines["catapult"], undefined); do_check_true(await EHTestsCommon.setUp(server));
--- a/services/sync/tps/extensions/tps/components/tps-cmdline.js +++ b/services/sync/tps/extensions/tps/components/tps-cmdline.js @@ -20,33 +20,33 @@ const nsISupportsString = C const nsIWindowWatcher = Components.interfaces.nsIWindowWatcher; Components.utils.import("resource://gre/modules/XPCOMUtils.jsm"); function TPSCmdLineHandler() {} TPSCmdLineHandler.prototype = { classDescription: "TPSCmdLineHandler", - classID : TPS_CMDLINE_CLSID, - contractID : TPS_CMDLINE_CONTRACTID, + classID: TPS_CMDLINE_CLSID, + contractID: TPS_CMDLINE_CONTRACTID, QueryInterface: XPCOMUtils.generateQI([nsISupports, nsICommandLineHandler, nsICmdLineHandler]), /* nsISupports */ /* nsICmdLineHandler */ - commandLineArgument : "-tps", - prefNameForStartup : "general.startup.tps", - helpText : "Run TPS tests with the given test file.", - handlesArgs : true, - defaultArgs : "", - openWindowWithArgs : true, + commandLineArgument: "-tps", + prefNameForStartup: "general.startup.tps", + helpText: "Run TPS tests with the given test file.", + handlesArgs: true, + defaultArgs: "", + openWindowWithArgs: true, /* nsICommandLineHandler */ - handle : function handler_handle(cmdLine) { + handle: function handler_handle(cmdLine) { let options = {}; let uristr = cmdLine.handleFlagWithParam("tps", false); if (uristr == null) return; let phase = cmdLine.handleFlagWithParam("tpsphase", false); if (phase == null) throw Error("must specify --tpsphase with --tps"); @@ -67,20 +67,20 @@ TPSCmdLineHandler.prototype = { Components.utils.import("resource://tps/tps.jsm"); Components.utils.import("resource://tps/quit.js", TPS); let uri = cmdLine.resolveURI(uristr).spec; TPS.RunTestPhase(uri, phase, logfile, options); // cmdLine.preventDefault = true; }, - helpInfo : " --tps <file> Run TPS tests with the given test file.\n" + - " --tpsphase <phase> Run the specified phase in the TPS test.\n" + - " --tpslogfile <file> Logfile for TPS output.\n" + - " --ignore-unused-engines Don't load engines not used in tests.\n", + helpInfo: " --tps <file> Run TPS tests with the given test file.\n" + + " --tpsphase <phase> Run the specified phase in the TPS test.\n" + + " --tpslogfile <file> Logfile for TPS output.\n" + + " --ignore-unused-engines Don't load engines not used in tests.\n", }; var TPSCmdLineFactory = { createInstance(outer, iid) { if (outer != null) { throw new Error(Components.results.NS_ERROR_NO_AGGREGATION); }