~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_FeatureReader.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_constructor(t) {
 
23
            t.plan(2);
 
24
            var reader = new mapfish.widgets.data.FeatureReader({}, [
 
25
                {'name': 'foo'},
 
26
                {'name': 'bar'}
 
27
            ]);
 
28
            var fields = reader.recordType.prototype.fields;
 
29
            // 2 tests
 
30
            t.eq(fields.items.length, 2, 'number of items is correct');
 
31
            t.ok(fields.items[0].name == 'foo' &&
 
32
                 fields.items[1].name == 'bar',
 
33
                 'field values are correct');
 
34
        }
 
35
        function test_readRecords(t) {
 
36
            t.plan(9);
 
37
            // setup
 
38
            var reader, features, info, records;
 
39
            reader = new mapfish.widgets.data.FeatureReader({}, [
 
40
                {'name': 'foo'},
 
41
                {'name': 'bar'}
 
42
            ]);
 
43
            features = [
 
44
                new OpenLayers.Feature.Vector(null, {
 
45
                    'foo': 'foo_0',
 
46
                    'bar': 'bar_0'
 
47
                }),
 
48
                new OpenLayers.Feature.Vector()
 
49
            ];
 
50
            features[0].fid = 1;
 
51
            features[0].state = OpenLayers.State.INSERT;
 
52
            features[1].fid = 2;
 
53
            features[1].state = OpenLayers.State.DELETE;
 
54
            // 8 tests
 
55
            info = reader.readRecords(features);
 
56
            records = info.records;
 
57
            t.eq(info.totalRecords, 2, 'readRecords returns correct number of records');
 
58
            t.eq(records[0].get('foo'), 'foo_0', 'readRecords correctly set feature properties in record');
 
59
            t.eq(records[0].get('fid'), 1, 'readRecords correctly set feature fid in record');
 
60
            t.eq(records[0].get('state'), OpenLayers.State.INSERT, 'readRecords correctly set feature state in record');
 
61
            t.ok(records[0].get('feature') == features[0], 'readRecords correctly set feature in record');
 
62
            t.eq(records[1].get('fid'), 2, 'readRecords correctly set feature fid in record (no properties case)');
 
63
            t.eq(records[1].get('state'), OpenLayers.State.DELETE, 'readRecords correctly set feature state in record (no properties case)');
 
64
            t.ok(records[1].get('feature') == features[1], 'readRecords correctly set feature in record (no properties case)');
 
65
            // 1 test
 
66
            reader.totalRecords = 20;
 
67
            info = reader.readRecords(features);
 
68
            t.eq(info.totalRecords, 20,
 
69
                 "readRecords returns correct number of records");
 
70
        }
 
71
    --></script>
 
72
 
 
73
  <body>
 
74
    <div id="map"></div>
 
75
  </body>
 
76
</html>