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

Side by Side Diff: third_party/WebKit/LayoutTests/webshare/resources/mock-share-service.js

Issue 2321293002: Revert of Use the URL passed to navigator.share(). (Closed)
Patch Set: Created 4 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 unified diff | Download patch
OLDNEW
1 'use strict'; 1 'use strict';
2 2
3 let mockShareService = loadMojoModules( 3 let mockShareService = loadMojoModules(
4 'mockShareService', 4 'mockShareService',
5 ['mojo/public/js/router', 5 ['mojo/public/js/router',
6 'third_party/WebKit/public/platform/modules/webshare/webshare.mojom', 6 'third_party/WebKit/public/platform/modules/webshare/webshare.mojom',
7 ]).then(mojo => { 7 ]).then(mojo => {
8 let [router, webshare] = mojo.modules; 8 let [router, webshare] = mojo.modules;
9 9
10 class MockShareService extends webshare.ShareService.stubClass { 10 class MockShareService extends webshare.ShareService.stubClass {
(...skipping 10 matching lines...) Expand all
21 this.shareResultQueue_ = []; 21 this.shareResultQueue_ = [];
22 22
23 return new Promise((resolve, reject) => {this.reject_ = reject}); 23 return new Promise((resolve, reject) => {this.reject_ = reject});
24 } 24 }
25 25
26 connect_(handle) { 26 connect_(handle) {
27 this.router_ = new router.Router(handle); 27 this.router_ = new router.Router(handle);
28 this.router_.setIncomingReceiver(this); 28 this.router_.setIncomingReceiver(this);
29 } 29 }
30 30
31 share(title, text, url) { 31 share(title, text) {
32 let callback = null; 32 let callback = null;
33 let result = new Promise(resolve => {callback = resolve;}); 33 let result = new Promise(resolve => {callback = resolve;});
34 34
35 if (!this.shareResultQueue_.length) { 35 if (!this.shareResultQueue_.length) {
36 this.reject_('Unexpected call to mojo share method'); 36 this.reject_('Unexpected call to mojo share method');
37 return result; 37 return result;
38 } 38 }
39 39
40 let [expectedTitle, expectedText, expectedUrl, error] = 40 let expectedTitle, expectedText, error;
41 this.shareResultQueue_.shift(); 41 [expectedTitle, expectedText, error] = this.shareResultQueue_.shift();
42 try { 42 try {
43 assert_equals(title, expectedTitle); 43 assert_equals(title, expectedTitle);
44 assert_equals(text, expectedText); 44 assert_equals(text, expectedText);
45 assert_equals(url.url, expectedUrl);
46 } catch (e) { 45 } catch (e) {
47 this.reject_(e); 46 this.reject_(e);
48 return result; 47 return result;
49 } 48 }
50 callback({error: error}); 49 callback({error: error});
51 50
52 return result; 51 return result;
53 } 52 }
54 53
55 pushShareResult(expectedTitle, expectedText, expectedUrl, result) { 54 pushShareResult(expectedTitle, expectedText, result) {
56 this.shareResultQueue_.push( 55 this.shareResultQueue_.push([expectedTitle, expectedText, result]);
57 [expectedTitle, expectedText, expectedUrl, result]);
58 } 56 }
59 } 57 }
60 return new MockShareService(mojo.frameInterfaces); 58 return new MockShareService(mojo.frameInterfaces);
61 }); 59 });
62 60
63 function share_test(func, name, properties) { 61 function share_test(func, name, properties) {
64 promise_test(t => mockShareService.then(mock => { 62 promise_test(t => mockShareService.then(mock => {
65 let mockPromise = mock.init_(); 63 let mockPromise = mock.init_();
66 return Promise.race([func(t, mock), mockPromise]); 64 return Promise.race([func(t, mock), mockPromise]);
67 }), name, properties); 65 }), name, properties);
68 } 66 }
69 67
70 // Copied from resources/bluetooth/bluetooth-helpers.js. 68 // Copied from resources/bluetooth/bluetooth-helpers.js.
71 function callWithKeyDown(functionCalledOnKeyPress) { 69 function callWithKeyDown(functionCalledOnKeyPress) {
72 return new Promise(resolve => { 70 return new Promise(resolve => {
73 function onKeyPress() { 71 function onKeyPress() {
74 document.removeEventListener('keypress', onKeyPress, false); 72 document.removeEventListener('keypress', onKeyPress, false);
75 resolve(functionCalledOnKeyPress()); 73 resolve(functionCalledOnKeyPress());
76 } 74 }
77 document.addEventListener('keypress', onKeyPress, false); 75 document.addEventListener('keypress', onKeyPress, false);
78 76
79 eventSender.keyDown(' ', []); 77 eventSender.keyDown(' ', []);
80 }); 78 });
81 } 79 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698