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 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142
|
/* Any copyright is dedicated to the Public Domain.
http://creativecommons.org/publicdomain/zero/1.0/ */
/*
* The list of phases mapped to their corresponding profiles. The object
* here must be in JSON format as it will get parsed by the Python
* testrunner. It is parsed by the YAML package, so it relatively flexible.
*/
var phases = { phase1: "profile1", phase2: "profile2", phase3: "profile1" };
/*
* Bookmark lists
*/
// the initial list of bookmarks to add to the browser
var bookmarks_initial = {
toolbar: [
{ uri: "http://www.google.com", title: "Google" },
{
uri: "http://www.cnn.com",
title: "CNN",
changes: {
position: "Google",
},
},
{ uri: "http://www.mozilla.com", title: "Mozilla" },
{
uri: "http://www.firefox.com",
title: "Firefox",
changes: {
position: "Mozilla",
},
},
],
};
var bookmarks_after_move = {
toolbar: [
{ uri: "http://www.cnn.com", title: "CNN" },
{ uri: "http://www.google.com", title: "Google" },
{ uri: "http://www.firefox.com", title: "Firefox" },
{ uri: "http://www.mozilla.com", title: "Mozilla" },
],
};
/*
* Password data
*/
// Initial password data
var passwords_initial = [
{
hostname: "http://www.example.com",
submitURL: "http://login.example.com",
username: "joe",
password: "secret",
usernameField: "uname",
passwordField: "pword",
changes: {
password: "SeCrEt$$$",
},
},
{
hostname: "http://www.example.com",
realm: "login",
username: "jack",
password: "secretlogin",
},
];
// Password after first modify action has been performed
var passwords_after_change = [
{
hostname: "http://www.example.com",
submitURL: "http://login.example.com",
username: "joe",
password: "SeCrEt$$$",
usernameField: "uname",
passwordField: "pword",
changes: {
username: "james",
},
},
{
hostname: "http://www.example.com",
realm: "login",
username: "jack",
password: "secretlogin",
},
];
/*
* Prefs to use in the test
*/
var prefs1 = [
{ name: "browser.startup.homepage", value: "http://www.getfirefox.com" },
{ name: "browser.urlbar.maxRichResults", value: 20 },
{ name: "privacy.clearOnShutdown.siteSettings", value: true },
];
var prefs2 = [
{ name: "browser.startup.homepage", value: "http://www.mozilla.com" },
{ name: "browser.urlbar.maxRichResults", value: 18 },
{ name: "privacy.clearOnShutdown.siteSettings", value: false },
];
/*
* Test phases
*/
// Add prefs,passwords and bookmarks to profile1 and sync.
Phase("phase1", [
[Passwords.add, passwords_initial],
[Bookmarks.add, bookmarks_initial],
[Prefs.modify, prefs1],
[Prefs.verify, prefs1],
[Sync],
]);
// Sync profile2 and verify same prefs,passwords and bookmarks are present.
Phase("phase2", [
[Sync],
[Prefs.verify, prefs1],
[Passwords.verify, passwords_initial],
[Bookmarks.verify, bookmarks_initial],
]);
// Using profile1, change some prefs,bookmarks and pwds, then do another sync with wipe-client.
// Verify that the cloud's settings are restored, and the recent local changes
// discarded.
Phase("phase3", [
[Prefs.modify, prefs2],
[Passwords.modify, passwords_initial],
[Bookmarks.modify, bookmarks_initial],
[Prefs.verify, prefs2],
[Passwords.verify, passwords_after_change],
[Bookmarks.verify, bookmarks_after_move],
[Sync, SYNC_WIPE_CLIENT],
[Prefs.verify, prefs1],
[Passwords.verify, passwords_initial],
[Bookmarks.verify, bookmarks_initial],
]);
|