Get rid of WebCore IconDatabase code.
[WebKit-https.git] / LayoutTests / fast / dom / icon-url-list.html
index 8debf07..0f86fe1 100644 (file)
@@ -1,61 +1,45 @@
 <html>
 <head>
 <title>Original Title</title>
-<link rel="shortcut icon" type="image/x-icon" href="http://test.com/oldfavicon.ico"/>
 <link rel="shortcut icon" type="image/x-icon" href="http://test.com/foofavicon.ico"/>
 <link rel="shortcut icon" type="image/x-icon" href="http://test.com/barfavicon.ico"/>
 <script src="../../resources/js-test-pre.js"></script>
 <script>
 
-function setFavIcon(iconURL) {
-    var docHead = document.getElementsByTagName("head")[0];
-
-    // set up a new node for the new iconURL
-    var newLink = document.createElement("link");
-    newLink.type = "image/x-icon";
-    newLink.rel = "shortcut icon";
-    newLink.href = iconURL;
-
-    var links = docHead.getElementsByTagName("link");
-    for (var i = 0; i < links.length; ++i) {
-        var oldLink = links[i];
-        if (oldLink.type=="image/x-icon" && oldLink.rel=="shortcut icon") {
-          // if we find the child, replace it with the new node.
-          docHead.replaceChild(newLink, oldLink);
-          return; // Assuming only one match at most.
-        }
-    }
-
-    // if we didn't find the icon URL link, add it now.
-    docHead.appendChild(newLink);
-}
-
 function runTests() {
     if (window.testRunner)
         testRunner.dumpAsText();
 
-    iconURL = document.getElementsByTagName("link")[0].href;
-    debug('Original iconURL is: ' + iconURL);
-
-    // change icon to new icon
-    newURL = 'http://test.com/newfavicon.ico';
-    debug('Setting new icon URL to: ' + newURL);
-    setFavIcon(newURL);
-    iconURL = document.getElementsByTagName("link")[0].href
-    debug('New iconURL is: ' + iconURL);
-
     // check that the URL list in the document is as we expect
     var expectedURL0 = "http://test.com/barfavicon.ico";
     var expectedURL1 = "http://test.com/foofavicon.ico";
-    var expectedURL2 = "http://test.com/newfavicon.ico";
     var iconURLs = window.internals.shortcutIconURLs();
-    // Expect the array to contain only the last URL because that's what WebKit icon controller provides,
-    // despite the fact that the internals API returns it as an array. We can change this to check for
-    // all three if we add "array of icon URLs" support to WebKit.
-    if (iconURLs.length === 1 && expectedURL2 === iconURLs[0])
-        testPassed('URL list matches expected');
-    else
-        testFailed('URL list does not match expected: length = ' + iconURLs.length + ', URL=' + iconURLs[0]);
+
+       // Note: This test used to dynamically change a 3rd icon URL and verify the new URL is in the set.
+       // We currently have no plans to support that in WebKit.
+
+       var didFail = false;
+    if (iconURLs.length != 2) {
+        testFailed('Icon URLs list has ' + iconURLs.length + ' elements, should have 2');
+               didFail = true;
+       }
+       
+       var urlSet = new Object;
+       iconURLs.forEach(function(url) {
+               urlSet[url] = true;
+       });
+       
+       if (!urlSet[expectedURL0]) {
+               testFailed('Expected url ' + expectedURL0 + ' in the URL set, but it was not there');
+               didFail = true;
+       }
+       if (!urlSet[expectedURL1]) {
+               testFailed('Expected url ' + expectedURL1 + ' in the URL set, but it was not there');
+               didFail = true;
+       }
+       
+       if (!didFail)
+        testPassed('PASS URL list matches expected');
 }
 
 </script>