| 340 | | var head = document.getElementsByTagName('head')[0]; |
|---|
| 341 | | var nodeCount = head.childNodes.length; |
|---|
| 342 | | |
|---|
| 343 | | map = new OpenLayers.Map('map'); |
|---|
| 344 | | var lastNode = head.childNodes[head.childNodes.length - 1]; |
|---|
| 345 | | |
|---|
| 346 | | t.eq(nodeCount + 1, head.childNodes.length, "by default, a node is added to document head" ); |
|---|
| 347 | | t.eq(lastNode.tagName, "LINK", "node added is a link element"); |
|---|
| 348 | | t.eq(lastNode.rel, "stylesheet", "node added has rel set to stylesheet"); |
|---|
| 349 | | t.eq(lastNode.type, "text/css", "node added has type set to text/css"); |
|---|
| 350 | | t.ok(OpenLayers.Util.isEquivalentUrl(map.theme, lastNode.href), "node added has href equivalent to map.theme"); |
|---|
| | 340 | var links = document.getElementsByTagName('link'); |
|---|
| | 341 | map = new OpenLayers.Map('map'); |
|---|
| | 342 | var gotNodes = 0; |
|---|
| | 343 | var themeNode = null; |
|---|
| | 344 | for(var i=0; i<links.length; ++i) { |
|---|
| | 345 | if(OpenLayers.Util.isEquivalentUrl(map.theme, links.item(i).href)) { |
|---|
| | 346 | gotNodes += 1; |
|---|
| | 347 | themeNode = links.item(i); |
|---|
| | 348 | } |
|---|
| | 349 | } |
|---|
| | 350 | t.eq(gotNodes, 1, "by default, a single link node is added to document"); |
|---|
| | 351 | t.ok(themeNode != null, "a link node with the theme href was added"); |
|---|
| | 352 | t.eq(themeNode.rel, "stylesheet", "node added has rel set to stylesheet"); |
|---|
| | 353 | t.eq(themeNode.type, "text/css", "node added has type set to text/css"); |
|---|
| | 354 | |
|---|
| | 355 | // reconstruct the map to prove that another link is not added |
|---|
| | 356 | map = new OpenLayers.Map('map'); |
|---|
| | 357 | t.eq(links.length, document.getElementsByTagName('link').length, |
|---|
| | 358 | "calling the map constructor twice with the same theme doesn't add duplicate link nodes"); |
|---|
| 361 | | var lastNode = head.childNodes[head.childNodes.length - 1]; |
|---|
| 362 | | |
|---|
| 363 | | t.eq(nodeCount + 1, head.childNodes.length, "with custom theme, a node is added to document head" ); |
|---|
| 364 | | t.eq(lastNode.tagName, "LINK", "node added is a link element"); |
|---|
| 365 | | t.eq(lastNode.rel, "stylesheet", "node added has rel set to stylesheet"); |
|---|
| 366 | | t.eq(lastNode.type, "text/css", "node added has type set to text/css"); |
|---|
| 367 | | t.ok(OpenLayers.Util.isEquivalentUrl(map.theme, lastNode.href), "node added has href equivalent to map.theme"); |
|---|
| | 367 | var links = document.getElementsByTagName('link'); |
|---|
| | 368 | var gotNodes = 0; |
|---|
| | 369 | var themeNode = null; |
|---|
| | 370 | for(var i=0; i<links.length; ++i) { |
|---|
| | 371 | if(OpenLayers.Util.isEquivalentUrl(map.theme, links.item(i).href)) { |
|---|
| | 372 | gotNodes += 1; |
|---|
| | 373 | themeNode = links.item(i); |
|---|
| | 374 | } |
|---|
| | 375 | } |
|---|
| | 376 | |
|---|
| | 377 | t.eq(map.theme, customTheme, "map theme is properly set"); |
|---|
| | 378 | t.eq(gotNodes, 1, "with custom theme, a single link node is added to document"); |
|---|
| | 379 | t.ok(themeNode != null, "a link node with the theme href was added"); |
|---|
| | 380 | t.eq(themeNode.rel, "stylesheet", "node added has rel set to stylesheet"); |
|---|
| | 381 | t.eq(themeNode.type, "text/css", "node added has type set to text/css"); |
|---|