source: Dev/branches/rest-dojo-ui/client/dojox/secure/tests/fromJson.js @ 256

Last change on this file since 256 was 256, checked in by hendrikvanantwerpen, 13 years ago

Reworked project structure based on REST interaction and Dojo library. As
soon as this is stable, the old jQueryUI branch can be removed (it's
kept for reference).

File size: 4.5 KB
Line 
1dojo.provide("dojox.secure.tests.fromJson");
2
3dojo.require("dojox.secure.fromJson");
4
5var smallDataSet = {
6        prop1: null,
7        prop2: true,
8        prop3: [],
9        prop4: 3.4325222223332266,
10        prop5: 10003,
11        prop6: "Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean semper",
12        prop7: "sagittis velit. Cras in mi. Duis porta mauris ut ligula. Proin porta rutrum",
13        prop8: "lacus. Etiam consequat scelerisque quam. Nulla facilisi. Maecenas luctus",
14        prop9: "venenatis nulla. In sit amet dui non mi semper iaculis. Sed molestie",
15        prop10: "tortor at ipsum. Morbi dictum rutrum magna. Sed vitae risus." +
16                "Aliquam vitae enim. Duis scelerisque metus auctor est venenatis imperdiet." +
17                "Fusce dignissim porta augue. Nulla vestibulum. Integer lorem nunc," +
18                "ullamcorper a, commodo ac, malesuada sed, dolor. Aenean id mi in massa" +
19                "bibendum suscipit. Integer eros. Nullam suscipit mauris. In pellentesque." +
20                "Mauris ipsum est, pharetra semper, pharetra in, viverra quis, tellus. Etiam" +
21                "purus. Quisque egestas, tortor ac cursus lacinia, felis leo adipiscing" +
22                "nisi, et rhoncus elit dolor eget eros. Fusce ut quam. Suspendisse eleifend" +
23                "leo vitae ligula. Nulla facilisi."
24};
25var smallJson = dojo.toJson(smallDataSet);
26
27var i, mediumDataSet = [];
28for(i = 0; i < 20; i++){
29        mediumDataSet.push({
30                prop1: null,
31                prop2: true,
32                prop3: false,
33                prop4: 3.4325222223332266 - i,
34                prop5: 10003 + i,
35                prop6: "Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean semper",
36                prop7: "sagittis velit. Cras in mi. Duis porta mauris ut ligula. Proin porta rutrum",
37                prop8: "lacus. Etiam consequat scelerisque quam. Nulla facilisi. Maecenas luctus",
38                prop9: "venenatis nulla. In sit amet dui non mi semper iaculis. Sed molestie",
39                prop10: "tortor at ipsum. Morbi dictum rutrum magna. Sed vitae risus." +
40                        "Aliquam vitae enim."
41        });
42}
43var mediumJson = dojo.toJson(mediumDataSet);
44
45var largeDataSet = [];
46for(i = 0; i < 100; i++){
47        largeDataSet.push({
48                prop1: null,
49                prop2: true,
50                prop3: false,
51                prop4: 3.4325222223332266 - i,
52                prop5: ["Mauris ipsum est, pharetra semper, pharetra in, viverra quis, tellus. Etiam" +
53                        "purus. Quisque egestas, tortor ac cursus lacinia, felis leo adipiscing",
54                        "nisi, et rhoncus elit dolor eget eros. Fusce ut quam. Suspendisse eleifend" +
55                        "leo vitae ligula. Nulla facilisi."
56                ],
57                prop6: "Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean semper",
58                prop7: "sagittis velit. Cras in mi. Duis porta mauris ut ligula. Proin porta rutrum",
59                prop8: "lacus. Etiam consequat scelerisque quam. Nulla facilisi. Maecenas luctus",
60                prop9: "venenatis nulla. In sit amet dui non mi semper iaculis. Sed molestie",
61        prop10: "tortor at ipsum. Morbi dictum rutrum magna. Sed vitae risus." +
62                "Aliquam vitae enim. Duis scelerisque metus auctor est venenatis imperdiet." +
63                "Fusce dignissim porta augue. Nulla vestibulum. Integer lorem nunc," +
64                "ullamcorper a, commodo ac, malesuada sed, dolor. Aenean id mi in massa" +
65                "bibendum suscipit. Integer eros. Nullam suscipit mauris. In pellentesque."
66        });
67}
68var largeJson = dojo.toJson(largeDataSet);
69
70
71doh.register("dojox.secure.tests.fromJson",
72        [
73                function small(){
74                        for(var i = 0;i < 1000;i++){
75                                dojox.secure.fromJson(smallJson);
76                        }
77                },
78                function medium(){
79                        for(var i = 0;i < 100;i++){
80                                dojox.secure.fromJson(mediumJson);
81                        }
82                },
83                function large(){
84                        for(var i = 0;i < 100;i++){
85                                dojox.secure.fromJson(largeJson);
86                        }
87                },
88                function smallUnsecure(){
89                        for(var i = 0;i < 1000;i++){
90                                dojo.fromJson(smallJson);
91                        }
92                },
93                function mediumUnsecure(){
94                        for(var i = 0;i < 100;i++){
95                                dojo.fromJson(mediumJson);
96                        }
97                },
98                function largeUnsecure(){
99                        for(var i = 0;i < 100;i++){
100                                dojo.fromJson(largeJson);
101                        }
102                },
103                function smallNative(){
104                        for(var i = 0;i < 1000;i++){
105                                JSON.parse(smallJson);
106                        }
107                },
108                function mediumNative(){
109                        for(var i = 0;i < 100;i++){
110                                JSON.parse(mediumJson);
111                        }
112                },
113                function largeNative(){
114                        for(var i = 0;i < 100;i++){
115                                JSON.parse(largeJson);
116                        }
117                },
118                function smallJson2(){
119                        for(var i = 0;i < 1000;i++){
120                                json2.parse(smallJson);
121                        }
122                },
123                function mediumJson2(){
124                        for(var i = 0;i < 100;i++){
125                                json2.parse(mediumJson);
126                        }
127                },
128                function largeJson2(){
129                        for(var i = 0;i < 100;i++){
130                                json2.parse(largeJson);
131                        }
132                },
133                function smallJsonParse(){
134                        for(var i = 0;i < 100;i++){
135                                json_parse(smallJson);
136                        }
137                },
138                function mediumJsonParse(){
139                        for(var i = 0;i < 10;i++){
140                                json_parse(mediumJson);
141                        }
142                },
143                function largeJsonParse(){
144                        for(var i = 0;i < 10;i++){
145                                json_parse(largeJson);
146                        }
147                }
148        ]
149);
150
Note: See TracBrowser for help on using the repository browser.