~lutostag/ubuntu/utopic/maas/1.5.2

« back to all changes in this revision

Viewing changes to src/maasserver/static/jslibs/yui/3.4.1/tests/datasource/tests/datasource-get-tests.js

  • Committer: Package Import Robot
  • Author(s): Andres Rodriguez
  • Date: 2012-03-15 18:14:08 UTC
  • mfrom: (1.1.3)
  • Revision ID: package-import@ubuntu.com-20120315181408-zgl94hzo0x4n99an
Tags: 0.1+bzr295+dfsg-0ubuntu2
* debian/patches:
  - 01-fix-database-settings.patch: Update to set PSERV_URL.
  - 02-pserv-config.patch: Set port to 8001.
* debian/maas.postinst: Run maas-import-isos on install.
* debian/control: Depends on rabbitmq-server.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
YUI.add('datasource-get-tests', function(Y) {
 
2
 
 
3
var Assert = Y.Assert,
 
4
 
 
5
    suite = new Y.Test.Suite("DataSource.Get Test Suite"),
 
6
 
 
7
    jsonData = {
 
8
        ResultSet: {
 
9
            Result: [
 
10
                { Title: "Madonna" }
 
11
            ]
 
12
        }
 
13
    };
 
14
 
 
15
 
 
16
suite.add(new Y.Test.Case({
 
17
    name: "DataSource.Get Tests",
 
18
 
 
19
    testGetDefaults: function() {
 
20
        var ds = new Y.DataSource.Get({
 
21
                    source: "http://query.yahooapis.com/v1/public/yql?format=json&",
 
22
                    get: {
 
23
                        script: function (uri, config) {
 
24
                            var fn = uri.match(/callback=YUI\.Env\.DataSource\.callbacks\.([^&]*)/)[1];
 
25
                            YUI.Env.DataSource.callbacks[fn](jsonData);
 
26
                        }
 
27
                    }
 
28
                }),
 
29
            request, response, tId, data, callback;
 
30
 
 
31
        ds.sendRequest({
 
32
            request: "q=select%20*%20from%20search.web%20where%20query%3D%22pizza%22",
 
33
            callback: {
 
34
                success: function (e) {
 
35
                    request  = e.request;
 
36
                    response = e.response;
 
37
                    tId      = e.tId;
 
38
                    data     = e.data;
 
39
                    callback = e.callback;
 
40
                }
 
41
            }
 
42
        });
 
43
 
 
44
        Assert.areSame("q=select%20*%20from%20search.web%20where%20query%3D%22pizza%22", request, "Expected same request.");
 
45
        Assert.isObject(response, "Expected response object.");
 
46
        Assert.isNotUndefined(tId);
 
47
        Assert.isNotUndefined(data);
 
48
        Assert.isNotUndefined(callback);
 
49
    },
 
50
 
 
51
    testGetEvents: function() {
 
52
        var ds = new Y.DataSource.Get({
 
53
                    source: "http://query.yahooapis.com/v1/public/yql?format=json&",
 
54
                    get: {
 
55
                        script: function (uri, config) {
 
56
                            var fn = uri.match(/callback=YUI\.Env\.DataSource\.callbacks\.([^&]*)/)[1];
 
57
                            YUI.Env.DataSource.callbacks[fn](jsonData);
 
58
                        }
 
59
                    }
 
60
                }),
 
61
            requestCallback, dataCallback, responseCallback;
 
62
 
 
63
        ds.plug(Y.Plugin.DataSourceJSONSchema, {
 
64
            schema: {
 
65
                resultListLocator: "query.results.result",
 
66
                resultFields: ["title"]
 
67
            }
 
68
        });
 
69
 
 
70
        ds.on("request", function (e) {
 
71
            Assert.areSame("dataSourceGet:request", e.type);
 
72
            Assert.isNumber(e.tId, "request: Expected transaction ID.");
 
73
            Assert.areSame("q=select%20*%20from%20search.web%20where%20query%3D%22pizza%22", e.request, "Expected same request.");
 
74
            Assert.areSame("callback", e.callback, "request: Expected callback.");
 
75
            requestCallback = true;
 
76
        });
 
77
 
 
78
        ds.on("data", function (e) {
 
79
            Assert.areSame("dataSourceGet:data", e.type);
 
80
            Assert.isNumber(e.tId, "data: Expected transaction ID.");
 
81
            Assert.areSame("q=select%20*%20from%20search.web%20where%20query%3D%22pizza%22", e.request, "Expected same request.");
 
82
            Assert.areSame("callback", e.callback, "data: Expected callback.");
 
83
            Assert.isObject(e.data, "data: Expected raw data.");
 
84
            dataCallback = true;
 
85
        });
 
86
 
 
87
        ds.on("response", function (e) {
 
88
            Assert.areSame("dataSourceGet:response", e.type);
 
89
            Assert.isNumber(e.tId, "response: Expected transaction ID.");
 
90
            Assert.areSame("q=select%20*%20from%20search.web%20where%20query%3D%22pizza%22", e.request, "Expected same request.");
 
91
            Assert.areSame("callback", e.callback, "response: Expected callback.");
 
92
            Assert.isObject(e.data, "response: Expected raw data.");
 
93
            Assert.isObject(e.response, "response: Expected normalized response object.");
 
94
            Assert.isArray(e.response.results, "response: Expected parsed results.");
 
95
            Assert.isObject(e.response.meta, "response: Expected parsed meta data.");
 
96
            responseCallback = true;
 
97
        });
 
98
 
 
99
        ds.sendRequest({
 
100
            request: "q=select%20*%20from%20search.web%20where%20query%3D%22pizza%22",
 
101
            callback: "callback"
 
102
        });
 
103
 
 
104
        Assert.isTrue(requestCallback);
 
105
        Assert.isTrue(dataCallback);
 
106
        Assert.isTrue(responseCallback);
 
107
    },
 
108
 
 
109
    testGetError: function () {
 
110
        var ds = new Y.DataSource.Get({
 
111
                source: "http://query.yahooapis.com/v1/public/yql?format=json&",
 
112
                get: {
 
113
                    script: function (uri, config) {
 
114
                        config.onFailure({ msg: "Planned failure" });
 
115
                    }
 
116
                }
 
117
            }),
 
118
            errorCallback;
 
119
 
 
120
        ds.plug(Y.Plugin.DataSourceJSONSchema, {
 
121
            schema: {
 
122
                resultListLocator: "query.results.result",
 
123
                resultFields: ["title"]
 
124
            }
 
125
        });
 
126
 
 
127
        ds.on("error", function (e) {
 
128
            Assert.areSame("dataSourceGet:error", e.type);
 
129
            Assert.isNumber(e.tId, "error: Expected transaction ID.");
 
130
            Assert.areSame("a", e.request, "error: Expected request.");
 
131
            Assert.areSame("callback", e.callback, "error: Expected callback.");
 
132
            Assert.isUndefined(e.data, "error: Expected undefined data.");
 
133
            Assert.isObject(e.response, "error: Expected normalized response object.");
 
134
            Assert.isObject(e.error, "error: Expected error.");
 
135
            errorCallback = true;
 
136
        });
 
137
 
 
138
        ds.set("source", "foo");
 
139
        ds.sendRequest({
 
140
            request: "a",
 
141
            callback: "callback"
 
142
        });
 
143
 
 
144
        Assert.isTrue(errorCallback);
 
145
    }
 
146
}));
 
147
 
 
148
Y.Test.Runner.add(suite);
 
149
 
 
150
 
 
151
}, '@VERSION@' ,{requires:['datasource-get', 'test']});