Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Firefox/toolkit/components/places/tests/unit/   (Browser von der Mozilla Stiftung Version 136.0.1©)  Datei vom 10.2.2025 mit Größe 4 kB image not shown  

Quelle  test_412132.js   Sprache: JAVA

 
/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
/* vim:set ts=2 sw=2 sts=2 et: */
/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */


/*
 * TEST DESCRIPTION:
 *
 * Tests patch to Bug 412132:
 * https://bugzilla.mozilla.org/show_bug.cgi?id=412132
 */


const TEST_URL0 = "http://example.com/";
const TEST_URL1 = "http://example.com/1";
const TEST_URL2 = "http://example.com/2";

add_task(async function changeuri_unvisited_bookmark() {
  info(
    "After changing URI of bookmark, frecency of bookmark's " +
      "original URI should be zero if original URI is unvisited and " +
      "no longer bookmarked."
  );
  let bookmark = await PlacesUtils.bookmarks.insert({
    parentGuid: PlacesUtils.bookmarks.unfiledGuid,
    title: "bookmark title",
    url: TEST_URL1,
  });

  await PlacesFrecencyRecalculator.recalculateAnyOutdatedFrecencies();

  Assert.notEqual(
    await PlacesTestUtils.getDatabaseValue("moz_places""frecency", {
      url: TEST_URL1,
    }),
    0,
    "Bookmarked => frecency of URI should be != 0"
  );

  await PlacesUtils.bookmarks.update({
    guid: bookmark.guid,
    url: TEST_URL2,
  });

  await PlacesFrecencyRecalculator.recalculateAnyOutdatedFrecencies();

  Assert.equal(
    await PlacesTestUtils.getDatabaseValue("moz_places""frecency", {
      url: TEST_URL1,
    }),
    0,
    "Unvisited URI no longer bookmarked => frecency should = 0"
  );

  await PlacesUtils.bookmarks.eraseEverything();
  await PlacesUtils.history.clear();
});

add_task(async function changeuri_visited_bookmark() {
  info(
    "After changing URI of bookmark, frecency of bookmark's " +
      "original URI should not be zero if original URI is visited."
  );
  let bookmark = await PlacesUtils.bookmarks.insert({
    parentGuid: PlacesUtils.bookmarks.unfiledGuid,
    title: "bookmark title",
    url: TEST_URL1,
  });

  await PlacesFrecencyRecalculator.recalculateAnyOutdatedFrecencies();

  Assert.notEqual(
    await PlacesTestUtils.getDatabaseValue("moz_places""frecency", {
      url: TEST_URL1,
    }),
    0,
    "Bookmarked => frecency of URI should be != 0"
  );

  await PlacesTestUtils.addVisits(TEST_URL1);

  await PlacesFrecencyRecalculator.recalculateAnyOutdatedFrecencies();

  await PlacesUtils.bookmarks.update({
    guid: bookmark.guid,
    url: TEST_URL2,
  });

  await PlacesFrecencyRecalculator.recalculateAnyOutdatedFrecencies();

  Assert.notEqual(
    await PlacesTestUtils.getDatabaseValue("moz_places""frecency", {
      url: TEST_URL1,
    }),
    0,
    "*Visited* URI no longer bookmarked => frecency should != 0"
  );

  await PlacesUtils.bookmarks.eraseEverything();
  await PlacesUtils.history.clear();
});

add_task(async function changeuri_bookmark_still_bookmarked() {
  info(
    "After changing URI of bookmark, frecency of bookmark's " +
      "original URI should not be zero if original URI is still " +
      "bookmarked."
  );
  let bookmark = await PlacesUtils.bookmarks.insert({
    parentGuid: PlacesUtils.bookmarks.unfiledGuid,
    title: "bookmark 1 title",
    url: TEST_URL1,
  });

  await PlacesUtils.bookmarks.insert({
    parentGuid: PlacesUtils.bookmarks.unfiledGuid,
    title: "bookmark 2 title",
    url: TEST_URL1,
  });

  await PlacesFrecencyRecalculator.recalculateAnyOutdatedFrecencies();

  Assert.notEqual(
    await PlacesTestUtils.getDatabaseValue("moz_places""frecency", {
      url: TEST_URL1,
    }),
    0,
    "Bookmarked => frecency of URI should be != 0"
  );

  await PlacesUtils.bookmarks.update({
    guid: bookmark.guid,
    url: TEST_URL2,
  });

  await PlacesFrecencyRecalculator.recalculateAnyOutdatedFrecencies();

  info("URI still bookmarked => frecency should != 0");
  Assert.notEqual(
    await PlacesTestUtils.getDatabaseValue("moz_places""frecency", {
      url: TEST_URL2,
    }),
    0
  );

  await PlacesUtils.bookmarks.eraseEverything();
  await PlacesUtils.history.clear();
});

add_task(async function changeuri_nonexistent_bookmark() {
  // Try a bogus guid.
  await Assert.rejects(
    PlacesUtils.bookmarks.update({
      guid: "ABCDEDFGHIJK",
      url: TEST_URL2,
    }),
    /No bookmarks found for the provided GUID/,
    "Changing the URI of a non-existent bookmark should fail."
  );

  // Now add a bookmark, delete it, and check.
  let bookmark = await PlacesUtils.bookmarks.insert({
    parentGuid: PlacesUtils.bookmarks.unfiledGuid,
    title: "bookmark title",
    url: TEST_URL0,
  });

  await PlacesUtils.bookmarks.remove(bookmark.guid);

  await Assert.rejects(
    PlacesUtils.bookmarks.update({
      guid: bookmark.guid,
      url: TEST_URL2,
    }),
    /No bookmarks found for the provided GUID/,
    "Changing the URI of a non-existent bookmark should fail."
  );

  await PlacesUtils.bookmarks.eraseEverything();
  await PlacesUtils.history.clear();
});

Messung V0.5
C=94 H=95 G=94

¤ Dauer der Verarbeitung: 0.3 Sekunden  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.