diff --git a/browser/components/urlbar/tests/ext/api.js b/browser/components/urlbar/tests/ext/api.js
index 259925fbdda9..892e7a416cd7 100644
--- a/browser/components/urlbar/tests/ext/api.js
+++ b/browser/components/urlbar/tests/ext/api.js
@@ -5,11 +5,9 @@
const { XPCOMUtils } = ChromeUtils.import(
"resource://gre/modules/XPCOMUtils.jsm"
);
-
XPCOMUtils.defineLazyModuleGetters(this, {
AppMenuNotifications: "resource://gre/modules/AppMenuNotifications.jsm",
BrowserWindowTracker: "resource:///modules/BrowserWindowTracker.jsm",
- ProfileAge: "resource://gre/modules/ProfileAge.jsm",
Services: "resource://gre/modules/Services.jsm",
});
@@ -108,19 +106,6 @@ this.experiments_urlbar = class extends ExtensionAPI {
let errorCode = update ? update.errorCode : 0;
return updateStateIs("pending") && errorCode != 0;
},
-
- async lastBrowserUpdateDate() {
- // Get the newest update in the update history. This isn't perfect
- // because these dates are when updates are applied, not when the
- // user restarts with the update. See bug 1595328.
- if (updateManager.updateCount) {
- let update = updateManager.getUpdateAt(0);
- return update.installDate;
- }
- // Fall back to the profile age.
- let age = await ProfileAge();
- return (await age.firstUse) || age.created;
- },
},
},
};
diff --git a/browser/components/urlbar/tests/ext/browser/browser.ini b/browser/components/urlbar/tests/ext/browser/browser.ini
index c8c16043fe7c..88b48bf5521e 100644
--- a/browser/components/urlbar/tests/ext/browser/browser.ini
+++ b/browser/components/urlbar/tests/ext/browser/browser.ini
@@ -11,4 +11,3 @@ support-files =
[browser_ext_urlbar_isBrowserShowingNotification.js]
[browser_ext_urlbar_isBrowserUpdateReadyToInstall.js]
-[browser_ext_urlbar_lastBrowserUpdateDate.js]
diff --git a/browser/components/urlbar/tests/ext/browser/browser_ext_urlbar_lastBrowserUpdateDate.js b/browser/components/urlbar/tests/ext/browser/browser_ext_urlbar_lastBrowserUpdateDate.js
deleted file mode 100644
index 43c7144b174c..000000000000
--- a/browser/components/urlbar/tests/ext/browser/browser_ext_urlbar_lastBrowserUpdateDate.js
+++ /dev/null
@@ -1,131 +0,0 @@
-/* Any copyright is dedicated to the Public Domain.
- * http://creativecommons.org/publicdomain/zero/1.0/ */
-
-/* global browser */
-
-// This tests the browser.experiments.urlbar.lastBrowserUpdateDate WebExtension
-// Experiment API. The parts related to the updates.xml file are adapted from
-// browser_policy_override_postupdatepage.js and other similar tests.
-
-"use strict";
-
-XPCOMUtils.defineLazyModuleGetters(this, {
- ProfileAge: "resource://gre/modules/ProfileAge.jsm",
-});
-
-XPCOMUtils.defineLazyServiceGetter(
- this,
- "updateManager",
- "@mozilla.org/updates/update-manager;1",
- "nsIUpdateManager"
-);
-
-const DATE_MS = 1368255600000;
-
-add_task(async function setUp() {
- let originalTimes = (await ProfileAge())._times;
- registerCleanupFunction(async () => {
- removeUpdatesFile();
- let age = await ProfileAge();
- age._times = originalTimes;
- await age.writeTimes();
- });
-});
-
-// no update history, same profile created and first-use date
-add_task(async function noHistory_sameCreateAndFirstUse() {
- removeUpdatesFile();
- reloadUpdateManagerData();
- Assert.equal(updateManager.updateCount, 0);
- await updateProfileAge(DATE_MS, DATE_MS);
- await checkExtension(DATE_MS);
-});
-
-// no update history, different profile created and first-use dates
-add_task(async function noHistory_differentCreateAndFirstUse() {
- removeUpdatesFile();
- reloadUpdateManagerData();
- Assert.equal(updateManager.updateCount, 0);
- await updateProfileAge(DATE_MS - 30000, DATE_MS);
- await checkExtension(DATE_MS);
-});
-
-// update history
-add_task(async function history() {
- removeUpdatesFile();
- writeUpdatesFile(DATE_MS);
- reloadUpdateManagerData();
- Assert.equal(updateManager.updateCount, 1);
- await updateProfileAge(DATE_MS - 60000, DATE_MS - 30000);
- await checkExtension(DATE_MS);
-});
-
-async function checkExtension(expectedDate) {
- let ext = await loadExtension(async () => {
- let date = await browser.experiments.urlbar.lastBrowserUpdateDate();
- browser.test.sendMessage("date", date);
- });
- let date = await ext.awaitMessage("date");
- Assert.equal(date, expectedDate);
- await ext.unload();
-}
-
-function getUpdatesFile() {
- let updateRootDir = Services.dirsvc.get("UpdRootD", Ci.nsIFile);
- let updatesFile = updateRootDir.clone();
- updatesFile.append("updates.xml");
- return updatesFile;
-}
-
-function removeUpdatesFile() {
- try {
- getUpdatesFile().remove(false);
- } catch (e) {}
-}
-
-function reloadUpdateManagerData() {
- updateManager
- .QueryInterface(Ci.nsIObserver)
- .observe(null, "um-reload-update-data", "");
-}
-
-function getUpdatesXML(installDate) {
- return `
-
-
-
-
- `;
-}
-
-function writeUpdatesFile(installDate) {
- const PERMS_FILE = 0o644;
- const MODE_WRONLY = 0x02;
- const MODE_CREATE = 0x08;
- const MODE_TRUNCATE = 0x20;
- let file = getUpdatesFile();
- if (!file.exists()) {
- file.create(Ci.nsIFile.NORMAL_FILE_TYPE, PERMS_FILE);
- }
- let fos = Cc["@mozilla.org/network/file-output-stream;1"].createInstance(
- Ci.nsIFileOutputStream
- );
- let flags = MODE_WRONLY | MODE_CREATE | MODE_TRUNCATE;
- fos.init(file, flags, PERMS_FILE, 0);
- let xml = getUpdatesXML(installDate);
- fos.write(xml, xml.length);
- fos.close();
-}
-
-async function updateProfileAge(created, firstUse) {
- let age = await ProfileAge();
- age._times = { created, firstUse };
- await age.writeTimes();
-}
diff --git a/browser/components/urlbar/tests/ext/schema.json b/browser/components/urlbar/tests/ext/schema.json
index c86ba2a78143..757f05ae1ccd 100644
--- a/browser/components/urlbar/tests/ext/schema.json
+++ b/browser/components/urlbar/tests/ext/schema.json
@@ -16,13 +16,6 @@
"async": true,
"description": "Returns true if there is an update ready to install.",
"parameters": []
- },
- {
- "name": "lastBrowserUpdateDate",
- "type": "function",
- "async": true,
- "description": "Returns the date of the last browser update. If there's no update history, then the date the profile was first used is returned instead. The return value is milliseconds since 1 January 1970 UTC (i.e., suitable for passing to new Date()).",
- "parameters": []
}
]
}