~mortenoh/+junk/dhis2-detailed-import-export

« back to all changes in this revision

Viewing changes to gis/dhis-gis-geostat/mfbase/mapfish/tests/widgets/data/test_LayerStoreMediator.html

  • Committer: larshelge at gmail
  • Date: 2009-03-03 16:46:36 UTC
  • Revision ID: larshelge@gmail.com-20090303164636-2sjlrquo7ib1gf7r
Initial check-in

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
<!DOCTYPE html>
 
2
<html debug="true">
 
3
  <head>
 
4
    <link rel="stylesheet" type="text/css" href="../../../../ext/resources/css/ext-all.css" />
 
5
 
 
6
    <script type="text/javascript" src="../../../../openlayers/lib/Firebug/firebug.js"></script>
 
7
    <script type="text/javascript" src="../../../../openlayers/lib/OpenLayers.js"></script>
 
8
 
 
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>
 
11
 
 
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/";
 
16
    </script>
 
17
    <script type="text/javascript" src="../../../../mapfish/MapFish.js"></script>
 
18
 
 
19
    <link rel="stylesheet" type="text/css" href="style.css" />
 
20
 
 
21
    <script type="text/javascript"><!--
 
22
        function test_LayerStoreMediator_constructor(t) {
 
23
            t.plan(3);
 
24
            // setup
 
25
            var mediator, store, layer;
 
26
            store = new Ext.data.Store({
 
27
                reader: new mapfish.widgets.data.FeatureReader(
 
28
                    {}, [{name: "name", type: "string"}]
 
29
                )
 
30
            });
 
31
            layer = new OpenLayers.Layer.Vector();
 
32
            // 3 tests
 
33
            mediator = new mapfish.widgets.data.LayerStoreMediator({
 
34
                store: store,
 
35
                layer: layer,
 
36
                activate: function() {
 
37
                    t.ok(true, "ctor calls activate");
 
38
                }
 
39
            });
 
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");
 
45
        }
 
46
 
 
47
        function test_LayerStoreMediator_events(t) {
 
48
            t.plan(3);
 
49
            // setup
 
50
            var mediator, store, layer, eventType;
 
51
            store = new Ext.data.Store({
 
52
                reader: new mapfish.widgets.data.FeatureReader(
 
53
                    {}, [{name: "name", type: "string"}]
 
54
                )
 
55
            });
 
56
            layer = new OpenLayers.Layer.Vector();
 
57
            mediator = new mapfish.widgets.data.LayerStoreMediator({
 
58
                store: store,
 
59
                layer: layer,
 
60
                update: function() {
 
61
                    t.ok(true, "update called on " + eventType);
 
62
                }
 
63
            });
 
64
            // 1 test
 
65
            eventType = "featuresadded";
 
66
            layer.events.triggerEvent(eventType);
 
67
            // 1 test
 
68
            eventType = "featuresremoved";
 
69
            layer.events.triggerEvent(eventType);
 
70
            // 1 test
 
71
            eventType = "featuremodified";
 
72
            layer.events.triggerEvent(eventType);
 
73
        }
 
74
 
 
75
        function test_LayerStoreMediator_update(t) {
 
76
            t.plan(2);
 
77
            // setup
 
78
            var mediator, store, layer;
 
79
            store = new Ext.data.Store({
 
80
                reader: new mapfish.widgets.data.FeatureReader(
 
81
                    {}, [{name: "name", type: "string"}]
 
82
                )
 
83
            });
 
84
            layer = new OpenLayers.Layer.Vector();
 
85
            mediator = new mapfish.widgets.data.LayerStoreMediator({
 
86
                store: store,
 
87
                layer: layer
 
88
            });
 
89
            function createFeatures() {
 
90
                return [
 
91
                    new OpenLayers.Feature.Vector(null, {name: "foo"}),
 
92
                    new OpenLayers.Feature.Vector(null, {name: "bar"})
 
93
                ];
 
94
            }
 
95
            // 1 test
 
96
            layer.features = createFeatures();
 
97
            layer.events.triggerEvent("featuresadded");
 
98
            t.eq(store.getCount(), 2,
 
99
                 "featuresadded event caused insertion of 2 records"); 
 
100
            // 1 test
 
101
            layer.features = createFeatures();
 
102
            layer.events.triggerEvent("featuresadded");
 
103
            t.eq(store.getCount(), 2,
 
104
                 "featuresadded event caused insertion of 2 records"); 
 
105
        }
 
106
    --></script>
 
107
 
 
108
  <body>
 
109
    <div id="map"></div>
 
110
  </body>
 
111
</html>