1
YUI.add('datasource-jsonschema-tests', function(Y) {
5
suite = new Y.Test.Suite("Plugin.DataSourceJSONSchema Test Suite"),
7
jsonData = '{"ResultSet":{"Result":[{"Title":"1"},{"Title":"2"},{"Title":"3"},{"Title":"4"},{"Title":"5"},{"Title":"6"},{"Title":"7"},{"Title":"8"},{"Title":"9"},{"Title":"10"}]}}';
10
suite.add(new Y.Test.Case({
11
name: "DataSource JSONSchema Plugin Tests",
13
testJSONSchema: function() {
14
var ds = new Y.DataSource.Local({ source: jsonData }),
15
request = null, response;
17
ds.plug(Y.Plugin.DataSourceJSONSchema, {
19
resultListLocator: "ResultSet.Result",
20
resultFields: ["Title"]
26
success: function (e) {
28
response = e.response;
33
Assert.isUndefined(request, "Expected undefined request.");
34
Assert.isObject(response, "Expected normalized response object.");
35
Assert.isArray(response.results, "Expected results array.");
36
Assert.areSame(10, response.results.length, "Expected 10 results.");
37
Assert.isNotUndefined(response.results[0].Title, "Expected Title property");
40
testSchemaError: function() {
41
var ds = new Y.DataSource.Local({ source: jsonData }),
42
request = null, response, error;
44
ds.plug(Y.Plugin.DataSourceJSONSchema);
48
failure: function (e) {
49
response = e.response;
55
Assert.isObject(response, "Expected normalized response object.");
56
Assert.isObject(error, "Expected response error.");
60
Y.Test.Runner.add(suite);
63
}, '@VERSION@' ,{requires:['datasource-jsonschema', 'test']});