function test() {
  waitForExplicitFinish();

  var pageInfo;
  gBrowser.selectedTab = gBrowser.addTab();
  gBrowser.selectedBrowser.addEventListener("load", function () {
    gBrowser.selectedBrowser.removeEventListener("load", arguments.callee, true);
    pageInfo = BrowserPageInfo();
    Services.obs.addObserver(observer, "page-info-dialog-loaded", false);
  }, true);
  content.location =
    "https://example.com/browser/browser/base/content/test/feed_tab.html";

  function observer(win, topic, data) {
    if (topic != "page-info-dialog-loaded")
      return;

    Services.obs.removeObserver(observer, topic);
    handlePageInfo();
  }

  function $(aId) { return pageInfo.document.getElementById(aId) };

  function handlePageInfo() {
    var feedTab = $("feedTab");
    var feedListbox = $("feedListbox");

    ok(feedListbox, "Feed list is null (feeds tab is broken)");

    var feedRowsNum = feedListbox.getRowCount();

    ok(feedRowsNum == 3, "Number of feeds listed: " +
                         feedRowsNum + ", should be 3");


    for (var i = 0; i < feedRowsNum; i++) {
      let feedItem = feedListbox.getItemAtIndex(i);
      ok(feedItem.getAttribute("name") == (i+1), 
         "Name given: " + feedItem.getAttribute("name") + ", should be " + (i+1));
    }

    pageInfo.close();
    gBrowser.removeCurrentTab();
    finish();
  }
}
