Files
openlayers/tests/Control/Attribution.html

60 lines
2.6 KiB
HTML

<html>
<head>
<script src="../OLLoader.js"></script>
<script type="text/javascript">
var map;
function test_Control_Attribution_constructor (t) {
t.plan( 2 );
control = new OpenLayers.Control.Attribution();
t.ok( control instanceof OpenLayers.Control.Attribution, "new OpenLayers.Control returns object" );
t.eq( control.displayClass, "olControlAttribution", "displayClass is correct" );
}
function test_Control_Attribution_setBaseLayer (t) {
t.plan(1);
map = new OpenLayers.Map("map");
map.addControl(control);
map.addLayer(new OpenLayers.Layer("name",{'attribution':'My layer!', isBaseLayer: true}));
map.addLayer(new OpenLayers.Layer("name",{'attribution':'My layer 2!', isBaseLayer: true}));
map.setBaseLayer(map.layers[1]);
t.eq(control.div.innerHTML, 'My layer 2!', "Attribution correct with changed base layer");
}
function test_Control_Attribution_draw (t) {
t.plan(3);
control = new OpenLayers.Control.Attribution();
map = new OpenLayers.Map("map");
map.addControl(control);
map.addLayer(new OpenLayers.Layer("name",{'attribution':'My layer!'}));
t.eq(control.div.innerHTML, 'My layer!', "Attribution correct with one layer.");
map.addLayer(new OpenLayers.Layer("name", {'attribution':'My layer 2!'}));
t.eq(control.div.innerHTML, 'My layer!, My layer 2!', "Attribution correct with two layers.");
control.separator = '|';
map.addLayer(new OpenLayers.Layer("name",{'attribution':'My layer 3!'}));
t.eq(control.div.innerHTML, 'My layer!|My layer 2!|My layer 3!', "Attribution correct with three layers and diff seperator.");
}
function test_Control_Attribution_no_duplicates(t) {
t.plan(2);
map = new OpenLayers.Map("map");
map.addLayer(new OpenLayers.Layer("Company A: 1",{'attribution':'company A'}));
map.addLayer(new OpenLayers.Layer("Company A: 2",{'attribution':'company A'}));
control = new OpenLayers.Control.Attribution();
map.addControl(control);
t.eq(control.div.innerHTML, 'company A', "Attribution not duplicated.");
map.addLayer(new OpenLayers.Layer("Company B: 1",{'attribution':'company B'}));
map.addLayer(new OpenLayers.Layer("Company A: 3",{'attribution':'company A'}));
t.eq(control.div.innerHTML, 'company A, company B', "Attribution correct with four layers (3 with same attribution).");
}
</script>
</head>
<body>
<div id="map" style="width: 1024px; height: 512px;"/>
</body>
</html>