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

Side by Side Diff: content/test/data/payments/payment_app.js

Issue 2646313002: PaymentApp: Implement invokePaymentApp() in renderer side. (Closed)
Patch Set: address comments Created 3 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 unified diff | Download patch
« no previous file with comments | « content/test/BUILD.gn ('k') | content/test/data/payments/payment_app_invocation.html » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 // Copyright 2017 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 function sendResultToTest(data) {
6 clients.matchAll({includeUncontrolled: true}).then(clients => {
7 clients.forEach(client => {
8 if (client.url.indexOf('payment_app_invocation.html') != -1) {
9 client.postMessage(data);
10 }
11 });
12 });
13 }
14
15 function getMessageFromPaymentAppWindow() {
16 return new Promise((resolve, reject) => {
17 var listener = self.addEventListener('message', e => {
18 resolve(e.data);
19 self.removeEventListener(listener);
20 });
21 });
22 }
23
24 self.addEventListener('paymentrequest', e => {
25 var payment_app_window;
26
27 // SW ------------------ openWindow() -----------------> payment_app_window
28 // SW <---- postMessage('payment_app_window_ready') ---- payment_app_window
29 // SW ------- postMessage('payment_app_request') ------> payment_app_window
30 // SW <------ postMessage('payment_app_response') ------ payment_app_window
31 e.waitUntil(clients.openWindow('payment_app_window.html')
32 .then(window_client => {
33 payment_app_window = window_client;
34 return getMessageFromPaymentAppWindow();
35 })
36 .then(message => {
37 sendResultToTest(message);
38 payment_app_window.postMessage('payment_app_request');
39 return getMessageFromPaymentAppWindow();
40 })
41 .then(message => { sendResultToTest(message); }));
42 });
OLDNEW
« no previous file with comments | « content/test/BUILD.gn ('k') | content/test/data/payments/payment_app_invocation.html » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698