-
Notifications
You must be signed in to change notification settings - Fork 0
/
demo2.mjs
43 lines (39 loc) · 1.77 KB
/
demo2.mjs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
import * as common from './common.mjs';
Object.assign(global, common);
(async () => {
const default_param = {
manifestId: 'https://developer.chrome.com/'
};
await waitfor_enter('Now I will show the chrome://apps, there should not ' +
'be any apps so far.');
await (await browser.newPage()).goto('chrome://apps');
await waitfor_enter('The first launch should fail since the app has not ' +
'been installed yet.');
await send(null, 'PWA.launch', default_param);
await waitfor_enter('Now I will install the web app.');
await send(null, 'PWA.install', {
manifestId: 'https://developer.chrome.com/',
installUrlOrBundleUrl: 'https://developer.chrome.com/'
});
await waitfor_enter('You should see the newly installed app in the ' +
'chrome://apps tab now. It will be launched.');
await send(null, 'PWA.launch', default_param);
await waitfor_enter('The second launch should succeed. Now I will inspect ' +
'its information.');
await send(await current_page_session(),
'Page.getAppManifest',
default_param);
await send(null, 'PWA.getOsAppState', default_param);
await waitfor_enter('Now I will open the page in its own window.');
await send(await current_page_session(),
'PWA.openCurrentPageInApp',
default_param);
await waitfor_enter('Now I will close the page and uninstall the webapp.');
await (await browser.pages()).pop().close();
await send(null, 'PWA.uninstall', default_param);
await waitfor_enter('You should see the installed app being removed in the ' +
'chrome://apps tab now. Will close the browser window ' +
'and stop.');
browser.close();
shutdown();
})();