/services/sync/tests/tps/test_history.js
http://github.com/zpao/v8monkey · JavaScript · 167 lines · 133 code · 11 blank · 23 comment · 0 complexity · 20bc5c3581f9fdf0447cc235ba59203c MD5 · raw file
- /* 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 strict JSON format, as it will get parsed by the Python
- * testrunner (no single quotes, extra comma's, etc).
- */
- EnableEngines(["history"]);
- var phases = { "phase1": "profile1",
- "phase2": "profile2" };
- /*
- * History asset lists: these define history entries that are used during
- * the test
- */
- // the initial list of history items to add to the browser
- var history1 = [
- { uri: "http://www.google.com/",
- title: "Google",
- visits: [
- { type: 1,
- date: 0
- },
- { type: 2,
- date: -1
- }
- ]
- },
- { uri: "http://www.cnn.com/",
- title: "CNN",
- visits: [
- { type: 1,
- date: -1
- },
- { type: 2,
- date: -36
- }
- ]
- },
- { uri: "http://www.google.com/language_tools?hl=en",
- title: "Language Tools",
- visits: [
- { type: 1,
- date: 0
- },
- { type: 2,
- date: -40
- }
- ]
- },
- { uri: "http://www.mozilla.com/",
- title: "Mozilla",
- visits: [
- { type: 1,
- date: 0
- },
- { type: 1,
- date: -1
- },
- { type: 1,
- date: -20
- },
- { type: 2,
- date: -36
- }
- ]
- }
- ];
- // a list of items to delete from the history
- var history_to_delete = [
- { uri: "http://www.cnn.com/" },
- { begin: -24,
- end: -1
- },
- { host: "www.google.com" }
- ];
- // a list which reflects items that should be in the history after
- // the above items are deleted
- var history2 = [
- { uri: "http://www.mozilla.com/",
- title: "Mozilla",
- visits: [
- { type: 1,
- date: 0
- },
- { type: 2,
- date: -36
- }
- ]
- }
- ];
- // a list which includes history entries that should not be present
- // after deletion of the history_to_delete entries
- var history_not = [
- { uri: "http://www.google.com/",
- title: "Google",
- visits: [
- { type: 1,
- date: 0
- },
- { type: 2,
- date: -1
- }
- ]
- },
- { uri: "http://www.cnn.com/",
- title: "CNN",
- visits: [
- { type: 1,
- date: -1
- },
- { type: 2,
- date: -36
- }
- ]
- },
- { uri: "http://www.google.com/language_tools?hl=en",
- title: "Language Tools",
- visits: [
- { type: 1,
- date: 0
- },
- { type: 2,
- date: -40
- }
- ]
- },
- { uri: "http://www.mozilla.com/",
- title: "Mozilla",
- visits: [
- { type: 1,
- date: -1
- },
- { type: 1,
- date: -20
- }
- ]
- }
- ];
- /*
- * Test phases
- * Note: there is no test phase in which deleted history entries are
- * synced to other clients. This functionality is not supported by
- * Sync, see bug 446517.
- */
- Phase('phase1', [
- [History.add, history1],
- [Sync],
- ]);
- Phase('phase2', [
- [Sync],
- [History.verify, history1],
- [History.delete, history_to_delete],
- [History.verify, history2],
- [History.verifyNot, history_not],
- [Sync]
- ]);