source: Dev/trunk/src/client/dojo/tests/request/handlers.js @ 483

Last change on this file since 483 was 483, checked in by hendrikvanantwerpen, 11 years ago

Added Dojo 1.9.3 release.

File size: 1.7 KB
Line 
1define([
2        "doh/main",
3        "dojo/request/handlers",
4        "dojo/has",
5        "dojo/_base/kernel",
6        "dojo/json"
7], function(doh, handlers, has, kernel, JSON){
8        var tests = [
9                function textContentHandler(t){
10                        var response = handlers({
11                                text: "foo bar baz ",
12                                options: {}
13                        });
14
15                        t.is("foo bar baz ", response.data);
16                },
17                function jsonContentHandler(t){
18                        var jsonObj = {
19                                foo: "bar",
20                                baz: [
21                                        { thonk: "blarg" },
22                                        "xyzzy!"
23                                ]
24                        };
25                        var responseData = handlers({
26                                text: JSON.stringify(jsonObj),
27                                options: {
28                                        handleAs: "json"
29                                }
30                        });
31                        t.is(jsonObj, responseData.data);
32                },
33                function jsContentHandler(t){
34                        var jsonObj = {
35                                foo: "bar",
36                                baz: [
37                                        { thonk: "blarg" },
38                                        "xyzzy!"
39                                ]
40                        };
41                        var responseData = handlers({
42                                text: "("+JSON.stringify(jsonObj)+")",
43                                options: {
44                                        handleAs: "javascript"
45                                }
46                        });
47                        t.is(jsonObj, responseData.data);
48
49                        responseData = handlers({
50                                text: "true;",
51                                options: {
52                                        handleAs: "javascript"
53                                }
54                        });
55                        t.t(responseData.data);
56
57                        responseData = handlers({
58                                text: "false;",
59                                options: {
60                                        handleAs: "javascript"
61                                }
62                        });
63                        t.f(responseData.data);
64                }
65        ];
66
67        if(has("host-browser")){
68                tests.push(
69                        function xmlContentHandler(t){
70                                var responseData = {
71                                        text: "<foo><bar baz='thonk'>blarg</bar></foo>",
72                                        options: {
73                                                handleAs: "xml"
74                                        }
75                                };
76                                if("DOMParser" in kernel.global){
77                                        var parser = new DOMParser();
78                                        responseData.data = parser.parseFromString(responseData.text, "text/xml");
79                                }
80
81                                responseData = handlers(responseData);
82                                t.is("foo", responseData.data.documentElement.tagName);
83                        }
84                );
85        }
86        doh.register("tests.request.handlers", tests);
87});
Note: See TracBrowser for help on using the repository browser.