summaryrefslogtreecommitdiffstats
path: root/toolkit/mozapps/extensions/test/browser/browser_gmpProvider.js
diff options
context:
space:
mode:
Diffstat (limited to 'toolkit/mozapps/extensions/test/browser/browser_gmpProvider.js')
-rw-r--r--toolkit/mozapps/extensions/test/browser/browser_gmpProvider.js73
1 files changed, 28 insertions, 45 deletions
diff --git a/toolkit/mozapps/extensions/test/browser/browser_gmpProvider.js b/toolkit/mozapps/extensions/test/browser/browser_gmpProvider.js
index 52079a263..1813df78c 100644
--- a/toolkit/mozapps/extensions/test/browser/browser_gmpProvider.js
+++ b/toolkit/mozapps/extensions/test/browser/browser_gmpProvider.js
@@ -5,42 +5,37 @@
"use strict";
Cu.import("resource://gre/modules/Promise.jsm");
-Cu.import("resource://gre/modules/AppConstants.jsm");
-var {AddonTestUtils} = Cu.import("resource://testing-common/AddonManagerTesting.jsm", {});
-var GMPScope = Cu.import("resource://gre/modules/addons/GMPProvider.jsm");
+let {AddonTestUtils} = Cu.import("resource://testing-common/AddonManagerTesting.jsm", {});
+let GMPScope = Cu.import("resource://gre/modules/addons/GMPProvider.jsm");
const TEST_DATE = new Date(2013, 0, 1, 12);
-var gManagerWindow;
-var gCategoryUtilities;
-var gIsEnUsLocale;
+let gManagerWindow;
+let gCategoryUtilities;
+let gIsEnUsLocale;
-var gMockAddons = [];
+let gMockAddons = [];
for (let plugin of GMPScope.GMP_PLUGINS) {
let mockAddon = Object.freeze({
id: plugin.id,
isValid: true,
isInstalled: false,
- isEME: (plugin.id == "gmp-widevinecdm" ||
- plugin.id.indexOf("gmp-eme-") == 0) ? true : false,
+ isEME: plugin.id.indexOf("gmp-eme-") == 0 ? true : false,
});
gMockAddons.push(mockAddon);
}
-var gInstalledAddonId = "";
-var gInstallDeferred = null;
-var gPrefs = Services.prefs;
-var getKey = GMPScope.GMPPrefs.getPrefKey;
+let gInstalledAddonId = "";
+let gInstallDeferred = null;
+let gPrefs = Services.prefs;
+let getKey = GMPScope.GMPPrefs.getPrefKey;
function MockGMPInstallManager() {
}
MockGMPInstallManager.prototype = {
- checkForAddons: () => Promise.resolve({
- usedFallback: true,
- gmpAddons: gMockAddons
- }),
+ checkForAddons: () => Promise.resolve(gMockAddons),
installAddon: addon => {
gInstalledAddonId = addon.id;
@@ -49,7 +44,7 @@ MockGMPInstallManager.prototype = {
},
};
-var gOptionsObserver = {
+let gOptionsObserver = {
lastDisplayed: null,
observe: function(aSubject, aTopic, aData) {
if (aTopic == AddonManager.OPTIONS_NOTIFICATION_DISPLAYED) {
@@ -74,14 +69,10 @@ function getInstallItem() {
}
function openDetailsView(aId) {
- let view = get_current_view(gManagerWindow);
- Assert.equal(view.id, "list-view", "Should be in the list view to use this function");
-
let item = get_addon_element(gManagerWindow, aId);
Assert.ok(item, "Should have got add-on element.");
is_element_visible(item, "Add-on element should be visible.");
- item.scrollIntoView();
EventUtils.synthesizeMouseAtCenter(item, { clickCount: 1 }, gManagerWindow);
EventUtils.synthesizeMouseAtCenter(item, { clickCount: 2 }, gManagerWindow);
@@ -105,8 +96,7 @@ add_task(function* initializeState() {
gPrefs.clearUserPref(getKey(GMPScope.GMPPrefs.KEY_PLUGIN_LAST_UPDATE, addon.id));
gPrefs.clearUserPref(getKey(GMPScope.GMPPrefs.KEY_PLUGIN_AUTOUPDATE, addon.id));
gPrefs.clearUserPref(getKey(GMPScope.GMPPrefs.KEY_PLUGIN_VERSION, addon.id));
- gPrefs.clearUserPref(getKey(GMPScope.GMPPrefs.KEY_PLUGIN_VISIBLE, addon.id));
- gPrefs.clearUserPref(getKey(GMPScope.GMPPrefs.KEY_PLUGIN_FORCE_SUPPORTED, addon.id));
+ gPrefs.clearUserPref(getKey(GMPScope.GMPPrefs.KEY_PLUGIN_FORCEVISIBLE, addon.id));
}
gPrefs.clearUserPref(GMPScope.GMPPrefs.KEY_LOGGING_DUMP);
gPrefs.clearUserPref(GMPScope.GMPPrefs.KEY_LOGGING_LEVEL);
@@ -129,8 +119,8 @@ add_task(function* initializeState() {
gPrefs.setIntPref(getKey(GMPScope.GMPPrefs.KEY_PLUGIN_LAST_UPDATE, addon.id), 0);
gPrefs.setBoolPref(getKey(GMPScope.GMPPrefs.KEY_PLUGIN_AUTOUPDATE, addon.id), false);
gPrefs.setCharPref(getKey(GMPScope.GMPPrefs.KEY_PLUGIN_VERSION, addon.id), "");
- gPrefs.setBoolPref(getKey(GMPScope.GMPPrefs.KEY_PLUGIN_VISIBLE, addon.id), true);
- gPrefs.setBoolPref(getKey(GMPScope.GMPPrefs.KEY_PLUGIN_FORCE_SUPPORTED, addon.id), true);
+ gPrefs.setBoolPref(getKey(GMPScope.GMPPrefs.KEY_PLUGIN_FORCEVISIBLE, addon.id),
+ true);
}
yield GMPScope.GMPProvider.shutdown();
GMPScope.GMPProvider.startup();
@@ -175,12 +165,13 @@ add_task(function* testNotInstalledDisabledDetails() {
el = doc.getElementById("detail-warning");
is_element_hidden(el, "Warning notification is hidden.");
el = doc.getElementsByTagName("setting")[0];
-
- yield gCategoryUtilities.openType("plugin");
}
});
add_task(function* testNotInstalled() {
+ Assert.ok(gCategoryUtilities.isTypeVisible("plugin"), "Plugin tab visible.");
+ yield gCategoryUtilities.openType("plugin");
+
for (let addon of gMockAddons) {
gPrefs.setBoolPref(getKey(GMPScope.GMPPrefs.KEY_PLUGIN_ENABLED, addon.id), true);
let item = get_addon_element(gManagerWindow, addon.id);
@@ -217,8 +208,6 @@ add_task(function* testNotInstalledDetails() {
el = doc.getElementById("detail-warning");
is_element_visible(el, "Warning notification is visible.");
el = doc.getElementsByTagName("setting")[0];
-
- yield gCategoryUtilities.openType("plugin");
}
});
@@ -229,6 +218,8 @@ add_task(function* testInstalled() {
gPrefs.setBoolPref(getKey(GMPScope.GMPPrefs.KEY_PLUGIN_AUTOUPDATE, addon.id), false);
gPrefs.setCharPref(getKey(GMPScope.GMPPrefs.KEY_PLUGIN_VERSION, addon.id), "1.2.3.4");
+ yield gCategoryUtilities.openType("plugin");
+
let item = get_addon_element(gManagerWindow, addon.id);
Assert.ok(item, "Got add-on element.");
item.parentNode.ensureElementIsVisible(item);
@@ -278,14 +269,14 @@ add_task(function* testInstalledDetails() {
let menuSep = doc.getElementById("addonitem-menuseparator");
is_element_hidden(menuSep, "Menu separator is hidden.");
contextMenu.hidePopup();
-
- yield gCategoryUtilities.openType("plugin");
}
});
add_task(function* testInstalledGlobalEmeDisabled() {
gPrefs.setBoolPref(GMPScope.GMPPrefs.KEY_EME_ENABLED, false);
for (let addon of gMockAddons) {
+ yield gCategoryUtilities.openType("plugin");
+
let item = get_addon_element(gManagerWindow, addon.id);
if (addon.isEME) {
Assert.ok(!item, "Couldn't get add-on element.");
@@ -374,7 +365,7 @@ add_task(function* testUpdateButton() {
add_task(function* testEmeSupport() {
for (let addon of gMockAddons) {
- gPrefs.clearUserPref(getKey(GMPScope.GMPPrefs.KEY_PLUGIN_FORCE_SUPPORTED, addon.id));
+ gPrefs.clearUserPref(getKey(GMPScope.GMPPrefs.KEY_PLUGIN_FORCEVISIBLE, addon.id));
}
yield GMPScope.GMPProvider.shutdown();
GMPScope.GMPProvider.startup();
@@ -384,29 +375,21 @@ add_task(function* testEmeSupport() {
let doc = gManagerWindow.document;
let item = get_addon_element(gManagerWindow, addon.id);
if (addon.id == GMPScope.EME_ADOBE_ID) {
- if (AppConstants.isPlatformAndVersionAtLeast("win", "6")) {
+ if (Services.appinfo.OS == "WINNT" &&
+ Services.sysinfo.getPropertyAsInt32("version") >= 6) {
Assert.ok(item, "Adobe EME supported, found add-on element.");
} else {
Assert.ok(!item,
"Adobe EME not supported, couldn't find add-on element.");
}
- } else if (addon.id == GMPScope.WIDEVINE_ID) {
- if (AppConstants.isPlatformAndVersionAtLeast("win", "6") ||
- AppConstants.platform == "macosx" ||
- AppConstants.platform == "linux") {
- Assert.ok(item, "Widevine supported, found add-on element.");
- } else {
- Assert.ok(!item,
- "Widevine not supported, couldn't find add-on element.");
- }
} else {
Assert.ok(item, "Found add-on element.");
}
}
for (let addon of gMockAddons) {
- gPrefs.setBoolPref(getKey(GMPScope.GMPPrefs.KEY_PLUGIN_VISIBLE, addon.id), true);
- gPrefs.setBoolPref(getKey(GMPScope.GMPPrefs.KEY_PLUGIN_FORCE_SUPPORTED, addon.id), true);
+ gPrefs.setBoolPref(getKey(GMPScope.GMPPrefs.KEY_PLUGIN_FORCEVISIBLE, addon.id),
+ true);
}
yield GMPScope.GMPProvider.shutdown();
GMPScope.GMPProvider.startup();