blob: 38ce0870469fc5375d619a787f85850d7e279eb1 [file] [log] [blame]
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<title>Installed Plug-ins</title>
</head>
<body>
<script type="application/x-javascript">
function checkForTestPlugin() {
for (var i = 0; i < navigator.plugins.length; i++) {
var plugin = navigator.plugins[i];
// We can only guarantee that the Test PlugIn is installed.
if (plugin.name != "WebKit Test PlugIn")
continue;
document.writeln("<p>Name: " + plugin.name + "<\/p>");
document.writeln("<p>Description: " + plugin.description + "<\/p>");
document.writeln("<p>Filename: " + plugin.filename + "<\/p>");
document.writeln("<p>Mime Types:<\/p>");
for (var mi = 0; mi != plugin.length; ++mi) {
document.writeln("<p>Type: " + plugin[mi].type + "<\/p>");
document.writeln("<p>Description: " + plugin[mi].description + "<\/p>");
document.writeln("<p>Suffixes: " + plugin[mi].suffixes + "<\/p>");
document.writeln("<br>");
if (plugin.item(mi).type == plugin[mi].type)
document.writeln("<p>Plugin.item() works.<\/p>");
else
document.writeln("<p>FAIL. Plugin.item() does not work.<\/p>");
if (plugin.namedItem(plugin[mi].type).type == plugin[mi].type)
document.writeln("<p>Plugin.namedItem() works.<\/p>");
else
document.writeln("<p>FAIL. Plugin.namedItem() does not work.<\/p>");
}
if (navigator.plugins.item(i).name == plugin.name)
document.writeln("<p>PluginArray.item() works.<\/p>");
else
document.writeln("<p>FAIL. PluginArray.item() does not work.<\/p>");
if (navigator.plugins.namedItem(plugin.name).name == plugin.name)
document.writeln("<p>PluginArray.namedItem() works.<\/p>");
else
document.writeln("<p>FAIL. PluginArray.namedItem() does not work.<\/p>");
return true;
}
return false;
}
if (window.testRunner)
testRunner.dumpAsText()
navigator.plugins.refresh(false); // Supposedly helps if new plug-ins were added.
// A non-local file should not be allowed to iterate over the installed plugins.
document.writeln("<p>Test 1: A non-local file should not be able to iterate over the plugins.<\/p>");
if (checkForTestPlugin())
document.writeln("<p>FAILURE! (Found the netscape test plugin on a non-local file!)<\/p>");
else
document.writeln("<p>PASS! (Could not find the netscape test plugin on a non-local file!)<\/p>");
// Activate our debugging code to show all plugins to confirm we do have the test plugin.
document.writeln("<p>Test 2: Confirm the plugin is present.<\/p>");
if (window.internals)
internals.setShowAllPlugins(true);
if (checkForTestPlugin())
document.writeln("<p>PASS! (Found the netscape test plugin on a non-local file!)<\/p>");
else
document.writeln("<p>FAILURE! (Could not find netscape test plugin on a non-local file!)<\/p>");
</script>
</body>
</html>