1
|
<html>
|
2
|
<head>
|
3
|
<script src="../lib/OpenLayers.js"></script>
|
4
|
<script type="text/javascript"><!--
|
5
|
var isMozilla = (navigator.userAgent.indexOf("compatible") == -1);
|
6
|
var layer;
|
7
|
|
8
|
function test_01_Layer_EventPane_constructor (t) {
|
9
|
t.plan( 5 );
|
10
|
|
11
|
var layer = new OpenLayers.Layer.EventPane('Test Layer');
|
12
|
|
13
|
t.ok( layer instanceof OpenLayers.Layer.EventPane, "new OpenLayers.Layer.EventPane returns object" );
|
14
|
t.eq( layer.CLASS_NAME, "OpenLayers.Layer.EventPane", "CLASS_NAME variable set correctly");
|
15
|
t.eq( layer.name, "Test Layer", "layer.name is correct" );
|
16
|
t.eq( layer.isBaseLayer, true, "EventPane layer is always base layer" );
|
17
|
if (!isMozilla) {
|
18
|
t.ok( true, "skipping element test outside of Mozilla");
|
19
|
} else {
|
20
|
t.ok( layer.pane instanceof HTMLDivElement, "layer.pane is an HTMLDivElement" );
|
21
|
}
|
22
|
}
|
23
|
|
24
|
function test_02_Layer_EventPane_clone (t) {
|
25
|
t.plan( 1 );
|
26
|
t.ok( true, "need to actually write some tests here" );
|
27
|
return;
|
28
|
|
29
|
/// FIX ME FIX ME: fix this later
|
30
|
|
31
|
var map = new OpenLayers.Map('map');
|
32
|
var options = { chicken: 151, foo: "bar" };
|
33
|
var layer = new OpenLayers.Layer('Test Layer', options);
|
34
|
map.addLayer(layer);
|
35
|
|
36
|
// randomly assigned property
|
37
|
layer.chocolate = 5;
|
38
|
|
39
|
var clone = layer.clone();
|
40
|
|
41
|
t.ok( clone instanceof OpenLayers.Layer, "new OpenLayers.Layer returns object" );
|
42
|
t.eq( clone.name, "Test Layer", "default clone.name is correct" );
|
43
|
t.ok( ((clone.options["chicken"] == 151) && (clone.options["foo"] == "bar")), "clone.options correctly set" );
|
44
|
t.eq(clone.chocolate, 5, "correctly copied randomly assigned property");
|
45
|
|
46
|
layer.addOptions({chicken:152});
|
47
|
t.eq(clone.options["chicken"], 151, "made a clean copy of options");
|
48
|
|
49
|
|
50
|
t.ok( clone.map == null, "cloned layer has map property set to null")
|
51
|
|
52
|
}
|
53
|
|
54
|
function test_10_Layer_EventPane_setMap (t) {
|
55
|
|
56
|
// MOUSEMOVE test does not seem to work...
|
57
|
// t.plan( 2 );
|
58
|
|
59
|
if (document.createEventObject) {
|
60
|
t.plan(3);
|
61
|
} else {
|
62
|
t.plan(1);
|
63
|
}
|
64
|
var map = new OpenLayers.Map('map');
|
65
|
|
66
|
layer = new OpenLayers.Layer.EventPane('Test Layer');
|
67
|
|
68
|
map.addLayer(layer);
|
69
|
t.eq( parseInt(layer.pane.style.zIndex) - parseInt(layer.div.style.zIndex),
|
70
|
1, "layer pane is 1 z-level above its div" );
|
71
|
|
72
|
map.events.register("mousemove", map, function () {
|
73
|
t.ok(true, "got mouse move");
|
74
|
});
|
75
|
|
76
|
if( document.createEvent ) { // Mozilla
|
77
|
var evObj = document.createEvent('MouseEvents');
|
78
|
evObj.initEvent( 'mousemove', true, false );
|
79
|
layer.pane.dispatchEvent(evObj);
|
80
|
} else if( document.createEventObject ) { // IE
|
81
|
layer.pane.fireEvent('onmousemove');
|
82
|
}
|
83
|
}
|
84
|
|
85
|
function test_20_Layer_EventPane_setVisibility (t) {
|
86
|
t.plan( 2 );
|
87
|
layer = new OpenLayers.Layer.EventPane('Test Layer');
|
88
|
layer.setVisibility(false);
|
89
|
t.eq(layer.pane.style.display, "none", "layer pane is now invisible");
|
90
|
layer.setVisibility(true);
|
91
|
t.eq(layer.pane.style.display, "block", "layer pane is now visible");
|
92
|
}
|
93
|
// -->
|
94
|
</script>
|
95
|
</head>
|
96
|
<body>
|
97
|
<div id="map"></div>
|
98
|
</body>
|
99
|
</html>
|