summaryrefslogtreecommitdiffstats
path: root/browser/base/content/test/metaTags/head.js
blob: 1f292c4c03204144d478514fda7fe8ba243be4b2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
ChromeUtils.defineESModuleGetters(this, {
  PlacesTestUtils: "resource://testing-common/PlacesTestUtils.sys.mjs",
  PlacesUtils: "resource://gre/modules/PlacesUtils.sys.mjs",
});

/**
 * Wait for url's page info (non-null description and preview url) to be set.
 * Because there is debounce logic in ContentLinkHandler.jsm to only make one
 * single SQL update, we have to wait for some time before checking that the page
 * info was stored.
 */
async function waitForPageInfo(url) {
  let pageInfo;
  await BrowserTestUtils.waitForCondition(async () => {
    pageInfo = await PlacesUtils.history.fetch(url, { includeMeta: true });
    return pageInfo && pageInfo.description && pageInfo.previewImageURL;
  });
  return pageInfo;
}