4
<link rel="stylesheet" type="text/css" href="../../../../ext/resources/css/ext-all.css" />
6
<script type="text/javascript" src="../../../../openlayers/lib/Firebug/firebug.js"></script>
7
<script type="text/javascript" src="../../../../openlayers/lib/OpenLayers.js"></script>
9
<script type="text/javascript" src="../../../../ext/adapter/ext/ext-base.js"></script>
10
<script type="text/javascript" src="../../../../ext/ext-all-debug.js"></script>
12
<script type="text/javascript">
13
// Because of a bug in Firefox 2 we need to specify the MapFish base path.
14
// See https://bugzilla.mozilla.org/show_bug.cgi?id=351282
15
var gMfLocation = "../../../../mapfish/";
17
<script type="text/javascript" src="../../../../mapfish/MapFish.js"></script>
19
<link rel="stylesheet" type="text/css" href="style.css" />
21
<script type="text/javascript"><!--
22
function test_LayerStoreMediator_constructor(t) {
25
var mediator, store, layer;
26
store = new Ext.data.Store({
27
reader: new mapfish.widgets.data.FeatureReader(
28
{}, [{name: "name", type: "string"}]
31
layer = new OpenLayers.Layer.Vector();
33
mediator = new mapfish.widgets.data.LayerStoreMediator({
36
activate: function() {
37
t.ok(true, "ctor calls activate");
40
t.ok(mediator.layer == layer,
41
"ctor correctly sets layer");
42
t.ok(mediator.featureStoreMediator instanceof
43
mapfish.widgets.data.FeatureStoreMediator,
44
"ctor correctly creates feature store mediator");
47
function test_LayerStoreMediator_events(t) {
50
var mediator, store, layer, eventType;
51
store = new Ext.data.Store({
52
reader: new mapfish.widgets.data.FeatureReader(
53
{}, [{name: "name", type: "string"}]
56
layer = new OpenLayers.Layer.Vector();
57
mediator = new mapfish.widgets.data.LayerStoreMediator({
61
t.ok(true, "update called on " + eventType);
65
eventType = "featuresadded";
66
layer.events.triggerEvent(eventType);
68
eventType = "featuresremoved";
69
layer.events.triggerEvent(eventType);
71
eventType = "featuremodified";
72
layer.events.triggerEvent(eventType);
75
function test_LayerStoreMediator_update(t) {
78
var mediator, store, layer;
79
store = new Ext.data.Store({
80
reader: new mapfish.widgets.data.FeatureReader(
81
{}, [{name: "name", type: "string"}]
84
layer = new OpenLayers.Layer.Vector();
85
mediator = new mapfish.widgets.data.LayerStoreMediator({
89
function createFeatures() {
91
new OpenLayers.Feature.Vector(null, {name: "foo"}),
92
new OpenLayers.Feature.Vector(null, {name: "bar"})
96
layer.features = createFeatures();
97
layer.events.triggerEvent("featuresadded");
98
t.eq(store.getCount(), 2,
99
"featuresadded event caused insertion of 2 records");
101
layer.features = createFeatures();
102
layer.events.triggerEvent("featuresadded");
103
t.eq(store.getCount(), 2,
104
"featuresadded event caused insertion of 2 records");