diff options
author | Matt A. Tobin <email@mattatobin.com> | 2020-02-25 15:07:00 -0500 |
---|---|---|
committer | wolfbeast <mcwerewolf@wolfbeast.com> | 2020-04-14 12:55:19 +0200 |
commit | eb70e6e3d0bff11c25f14b1196025791bf2308fb (patch) | |
tree | 5ef4ce17db83c74d7b05ec12c8f59e095a6dd5bd /toolkit/components/places/tests/queries/test_sort-date-site-grouping.js | |
parent | 32ead795290b3399d56b4708fc75b77d296f6a1a (diff) | |
download | UXP-eb70e6e3d0bff11c25f14b1196025791bf2308fb.tar UXP-eb70e6e3d0bff11c25f14b1196025791bf2308fb.tar.gz UXP-eb70e6e3d0bff11c25f14b1196025791bf2308fb.tar.lz UXP-eb70e6e3d0bff11c25f14b1196025791bf2308fb.tar.xz UXP-eb70e6e3d0bff11c25f14b1196025791bf2308fb.zip |
Issue #439 - Remove tests from toolkit/
Diffstat (limited to 'toolkit/components/places/tests/queries/test_sort-date-site-grouping.js')
-rw-r--r-- | toolkit/components/places/tests/queries/test_sort-date-site-grouping.js | 225 |
1 files changed, 0 insertions, 225 deletions
diff --git a/toolkit/components/places/tests/queries/test_sort-date-site-grouping.js b/toolkit/components/places/tests/queries/test_sort-date-site-grouping.js deleted file mode 100644 index 7ca50e6de..000000000 --- a/toolkit/components/places/tests/queries/test_sort-date-site-grouping.js +++ /dev/null @@ -1,225 +0,0 @@ -/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ -/* vim:set ts=2 sw=2 sts=2 et: */ -/* ***** BEGIN LICENSE BLOCK ***** - Any copyright is dedicated to the Public Domain. - http://creativecommons.org/publicdomain/zero/1.0/ - * ***** END LICENSE BLOCK ***** */ - -// This test ensures that the date and site type of |place:| query maintains -// its quantifications correctly. Namely, it ensures that the date part of the -// query is not lost when the domain queries are made. - -// We specifically craft these entries so that if a by Date and Site sorting is -// applied, we find one domain in the today range, and two domains in the older -// than six months range. -// The correspondence between item in |testData| and date range is stored in -// leveledTestData. -var testData = [ - { - isVisit: true, - uri: "file:///directory/1", - lastVisit: today, - title: "test visit", - isInQuery: true - }, - { - isVisit: true, - uri: "http://example.com/1", - lastVisit: today, - title: "test visit", - isInQuery: true - }, - { - isVisit: true, - uri: "http://example.com/2", - lastVisit: today, - title: "test visit", - isInQuery: true - }, - { - isVisit: true, - uri: "file:///directory/2", - lastVisit: olderthansixmonths, - title: "test visit", - isInQuery: true - }, - { - isVisit: true, - uri: "http://example.com/3", - lastVisit: olderthansixmonths, - title: "test visit", - isInQuery: true - }, - { - isVisit: true, - uri: "http://example.com/4", - lastVisit: olderthansixmonths, - title: "test visit", - isInQuery: true - }, - { - isVisit: true, - uri: "http://example.net/1", - lastVisit: olderthansixmonths + 1000, - title: "test visit", - isInQuery: true - } -]; -var domainsInRange = [2, 3]; -var leveledTestData = [// Today - [[0], // Today, local files - [1, 2]], // Today, example.com - // Older than six months - [[3], // Older than six months, local files - [4, 5], // Older than six months, example.com - [6] // Older than six months, example.net - ]]; - -// This test data is meant for live updating. The |levels| property indicates -// date range index and then domain index. -var testDataAddedLater = [ - { - isVisit: true, - uri: "http://example.com/5", - lastVisit: olderthansixmonths, - title: "test visit", - isInQuery: true, - levels: [1, 1] - }, - { - isVisit: true, - uri: "http://example.com/6", - lastVisit: olderthansixmonths, - title: "test visit", - isInQuery: true, - levels: [1, 1] - }, - { - isVisit: true, - uri: "http://example.com/7", - lastVisit: today, - title: "test visit", - isInQuery: true, - levels: [0, 1] - }, - { - isVisit: true, - uri: "file:///directory/3", - lastVisit: today, - title: "test visit", - isInQuery: true, - levels: [0, 0] - } -]; - -function run_test() -{ - run_next_test(); -} - -add_task(function* test_sort_date_site_grouping() -{ - yield task_populateDB(testData); - - // On Linux, the (local files) folder is shown after sites unlike Mac/Windows. - // Thus, we avoid running this test on Linux but this should be re-enabled - // after bug 624024 is resolved. - let isLinux = ("@mozilla.org/gnome-gconf-service;1" in Components.classes); - if (isLinux) - return; - - // In this test, there are three levels of results: - // 1st: Date queries. e.g., today, last week, or older than 6 months. - // 2nd: Domain queries restricted to a date. e.g. mozilla.com today. - // 3rd: Actual visits. e.g. mozilla.com/index.html today. - // - // We store all the third level result roots so that we can easily close all - // containers and test live updating into specific results. - let roots = []; - - let query = PlacesUtils.history.getNewQuery(); - let options = PlacesUtils.history.getNewQueryOptions(); - options.resultType = Ci.nsINavHistoryQueryOptions.RESULTS_AS_DATE_SITE_QUERY; - - let root = PlacesUtils.history.executeQuery(query, options).root; - root.containerOpen = true; - - // This corresponds to the number of date ranges. - do_check_eq(root.childCount, leveledTestData.length); - - // We pass off to |checkFirstLevel| to check the first level of results. - for (let index = 0; index < leveledTestData.length; index++) { - let node = root.getChild(index); - checkFirstLevel(index, node, roots); - } - - // Test live updating. - for (let visit of testDataAddedLater) { - yield task_populateDB([visit]); - let oldLength = testData.length; - let i = visit.levels[0]; - let j = visit.levels[1]; - testData.push(visit); - leveledTestData[i][j].push(oldLength); - compareArrayToResult(leveledTestData[i][j]. - map(x => testData[x]), roots[i][j]); - } - - for (let i = 0; i < roots.length; i++) { - for (let j = 0; j < roots[i].length; j++) - roots[i][j].containerOpen = false; - } - - root.containerOpen = false; -}); - -function checkFirstLevel(index, node, roots) { - PlacesUtils.asContainer(node).containerOpen = true; - - do_check_true(PlacesUtils.nodeIsDay(node)); - PlacesUtils.asQuery(node); - let queries = node.getQueries(); - let options = node.queryOptions; - - do_check_eq(queries.length, 1); - let query = queries[0]; - - do_check_true(query.hasBeginTime && query.hasEndTime); - - // Here we check the second level of results. - let root = PlacesUtils.history.executeQuery(query, options).root; - roots.push([]); - root.containerOpen = true; - - do_check_eq(root.childCount, leveledTestData[index].length); - for (var secondIndex = 0; secondIndex < root.childCount; secondIndex++) { - let child = PlacesUtils.asQuery(root.getChild(secondIndex)); - checkSecondLevel(index, secondIndex, child, roots); - } - root.containerOpen = false; - node.containerOpen = false; -} - -function checkSecondLevel(index, secondIndex, child, roots) { - let queries = child.getQueries(); - let options = child.queryOptions; - - do_check_eq(queries.length, 1); - let query = queries[0]; - - do_check_true(query.hasDomain); - do_check_true(query.hasBeginTime && query.hasEndTime); - - let root = PlacesUtils.history.executeQuery(query, options).root; - // We should now have that roots[index][secondIndex] is set to the second - // level's results root. - roots[index].push(root); - - // We pass off to compareArrayToResult to check the third level of - // results. - root.containerOpen = true; - compareArrayToResult(leveledTestData[index][secondIndex]. - map(x => testData[x]), root); - // We close |root|'s container later so that we can test live - // updates into it. -} |