]>
Commit | Line | Data |
---|---|---|
1e59de90 TL |
1 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">\r |
2 | <html>\r | |
3 | <head>\r | |
4 | <title>Test</title>\r | |
5 | <script type='text/javascript' language="javascript" src='jquery.js'></script>\r | |
6 | <script type='text/javascript' language="javascript">\r | |
7 | <!--\r | |
8 | \r | |
9 | function mbox() {\r | |
10 | alert('Javascript OK');\r | |
11 | }\r | |
12 | \r | |
13 | \r | |
14 | var totalCount = 10;\r | |
15 | var pendingCount = 0;\r | |
16 | var errorCount = 0;\r | |
17 | var pushCount = 0;\r | |
18 | var allErrorCount = 0;\r | |
19 | var autoTest = false;\r | |
20 | var testType = "cgi";\r | |
21 | \r | |
22 | function NextTestType() {\r | |
23 | if (testType == "cgi") testType = "lp";\r | |
24 | else if (testType == "lp") testType = "lua";\r | |
25 | else testType = "cgi";\r | |
26 | }\r | |
27 | \r | |
28 | function runTest(method, isAsync) {\r | |
29 | \r | |
30 | ++pushCount;\r | |
31 | document.getElementById('start').innerHTML = 'Test: ' + pushCount;\r | |
32 | document.getElementById('resTotal').innerHTML = 'running';\r | |
33 | \r | |
34 | for (var i = 1; i <= totalCount; ++i) {\r | |
35 | document.getElementById('res'+i).innerHTML = "ready";\r | |
36 | }\r | |
37 | \r | |
38 | errorCount = 0;\r | |
39 | pendingCount = totalCount;\r | |
40 | \r | |
41 | for (var i = 1; i <= totalCount; ++i) {\r | |
42 | \r | |
43 | fetch(i, method, isAsync);\r | |
44 | }\r | |
45 | }\r | |
46 | \r | |
47 | function runAutoTest() {\r | |
48 | if (autoTest) {\r | |
49 | runTest("POST", true)\r | |
50 | setTimeout("runAutoTest()", 250)\r | |
51 | }\r | |
52 | }\r | |
53 | \r | |
54 | \r | |
55 | function fetch(id, method, isAsync) {\r | |
56 | \r | |
57 | document.getElementById('res'+id).innerHTML = "pending";\r | |
58 | \r | |
59 | $.ajax({\r | |
60 | async: isAsync,\r | |
61 | url: 'echo.' + testType + '?id=' + id,\r | |
62 | type: method,\r | |
63 | timeout: 2000,\r | |
64 | data: { 'id' : id ,\r | |
65 | 'longText1' : "adfsdfasdklkjlgasfdfjkhq345sdafbmkanq3trsdghkjqw4etrjlkabsdfkabvauiregtlkjasdbvabl4btrjawebbfjsdhbjk342r5bjksdbfkljbhasdfbhj234qjhasdg76k11234jhv900adfasddsfmzasdfhjgajsvhgkjhasdf77aefcae4fkjzasdfgukeaf7dkkegasdfigjcvxgui",\r | |
66 | 'longText2' : "bsdfsdfasdklkjlgasdfjkhq345sdafbmkanq3trsdghkjqw4etrjlkabsdfkabvauiregtlkjasdbvabl4btrjawebbfjsdhbjk342r5bjksdbfkljbhasdfbhj234qjhasdg76k11234jhv900adfasddsfmzasdfhjgajsvhgkjhasdf77aefcae4fkjzasdfgukeaf7dkkegasdfigjcvxgui",\r | |
67 | 'longText3' : "sdfsadagsdklkjlgasdfjkhq345sdafbmkanq3trsdghkjqw4etrjlkabsdfkabvauiregtlkjasdbvabl4btrjawebbfjsdhbjk342r5bjksdbfkljbhasdfbhj234qjhasdg76k11234jhv900adfasddsfmzasdfhjgajsvhgkjhasdf77aefcae4fkjzasdfgukeaf7dkkegasdfigjcvxgui",\r | |
68 | 'longText4' : "q34sdfas3fhbkjlgasdfjkhq345sdafbmkanq3trsdghkjqw4etrjlkabsdfkabvauiregtlkjasdbvabl4btrjawebbfjsdhbjk342r5bjksdbfkljbhasdfbhj234qjhasdg76k11234jhv900adfasddsfmzasdfhjgajsvhgkjhasdf77aefcae4fkjzasdfgukeaf7dkkegasdfigjcvxgui",\r | |
69 | 'longText5' : "askj2kjcvxychklgasdfjkhq345sdafbmkanq3trsdghkjqw4etrjlkabsdfkabvauiregtlkjasdbvabl4btrjawebbfjsdhbjk342r5bjksdbfkljbhasdfbhj234qjhasdg76k11234jhv900adfasddsfmzasdfhjgajsvhgkjhasdf77aefcae4fkjzasdfgukeaf7dkkegasdfigjcvxgui",\r | |
70 | 'longText6' : "asdfjklhlkjhv8öajsdfjkhq345sdafbmkanq3trsdghkjqw4etrjlkabsdfkabvauiregtlkjasdbvabl4btrjawebbfjsdhbjk342r5bjksdbfkljbhasdfbhj234qjhasdg76k11234jhv900adfasddsfmzasdfhjgajsvhgkjhasdf77aefcae4fkjzasdfgukeaf7dkkegasdfigjcvxgui",\r | |
71 | 'async' : isAsync\r | |
72 | },\r | |
73 | dataType: 'json',\r | |
74 | succes: function(data) {\r | |
75 | },\r | |
76 | error: function() {\r | |
77 | ++errorCount;\r | |
78 | },\r | |
79 | complete: function(jqXHR, textStatus) {\r | |
80 | \r | |
81 | --pendingCount;\r | |
82 | \r | |
83 | document.getElementById('res'+id).innerHTML = textStatus;\r | |
84 | console.log('id: ' + id + ' (' + pendingCount + '/' + totalCount + '), status: ' + textStatus);\r | |
85 | \r | |
86 | if (pendingCount == 0) {\r | |
87 | document.getElementById('resTotal').innerHTML = 'done';\r | |
88 | console.log('complete, error count: ' + errorCount);\r | |
89 | allErrorCount = allErrorCount + errorCount;\r | |
90 | document.getElementById('resSAll').innerHTML = 'total errors: ' + allErrorCount + "/" + (pushCount*totalCount);\r | |
91 | }\r | |
92 | }\r | |
93 | });\r | |
94 | \r | |
95 | }\r | |
96 | \r | |
97 | \r | |
98 | //-->\r | |
99 | </script>\r | |
100 | \r | |
101 | </head>\r | |
102 | <body>\r | |
103 | <p>\r | |
104 | <div id="start">Test not started.</div>\r | |
105 | </p>\r | |
106 | <p>\r | |
107 | <table>\r | |
108 | <tr>\r | |
109 | <td>\r | |
110 | <input id="testButton1" type="button" onclick="javascript:runTest('GET', false)" value="sync GET"></input>\r | |
111 | </td>\r | |
112 | <td>\r | |
113 | <input id="testButton2" type="button" onclick="javascript:runTest('POST', false)" value="sync POST"></input>\r | |
114 | </td>\r | |
115 | </tr>\r | |
116 | <tr>\r | |
117 | <td>\r | |
118 | <input id="testButton3" type="button" onclick="javascript:runTest('GET', true)" value="async GET"></input>\r | |
119 | </td>\r | |
120 | <td>\r | |
121 | <input id="testButton4" type="button" onclick="javascript:runTest('POST', true)" value="async POST"></input>\r | |
122 | </td>\r | |
123 | </tr>\r | |
124 | <tr>\r | |
125 | <td>\r | |
126 | <input id="testButton5" type="button" onclick="autoTest=!autoTest; javascript:runAutoTest()" value="automatic test"></input>\r | |
127 | </td> \r | |
128 | <td>\r | |
129 | <input id="testButton6" type="button" onclick="NextTestType(); this.value=testType" value='cgi'></input>\r | |
130 | </td> \r | |
131 | </tr>\r | |
132 | \r | |
133 | <tr>\r | |
134 | <td>\r | |
135 | <input id="testButtonReset" type="button" onclick="autoTest=false; javascript:location.reload(true)" value="reset"></input>\r | |
136 | </td>\r | |
137 | <td>\r | |
138 | <input id="testButtonBack" type="button" onclick="history.back()" value="back"></input>\r | |
139 | </td>\r | |
140 | </tr>\r | |
141 | <tr>\r | |
142 | <td>\r | |
143 | <input id="testButtonBox" type="button" onclick="javascript:mbox()" value="MsgBox"></input> \r | |
144 | </td>\r | |
145 | <td>\r | |
146 | </td>\r | |
147 | </tr>\r | |
148 | </table>\r | |
149 | </p>\r | |
150 | <p>\r | |
151 | <table border="1">\r | |
152 | <tr><th>Test</th><th>Result</th></tr>\r | |
153 | <tr><td>1</td><td><div id="res1">not started</div></td></tr>\r | |
154 | <tr><td>2</td><td><div id="res2">not started</div></td></tr>\r | |
155 | <tr><td>3</td><td><div id="res3">not started</div></td></tr>\r | |
156 | <tr><td>4</td><td><div id="res4">not started</div></td></tr>\r | |
157 | <tr><td>5</td><td><div id="res5">not started</div></td></tr>\r | |
158 | <tr><td>6</td><td><div id="res6">not started</div></td></tr>\r | |
159 | <tr><td>7</td><td><div id="res7">not started</div></td></tr>\r | |
160 | <tr><td>8</td><td><div id="res8">not started</div></td></tr>\r | |
161 | <tr><td>9</td><td><div id="res9">not started</div></td></tr>\r | |
162 | <tr><td>10</td><td><div id="res10">not started</div></td></tr>\r | |
163 | </table>\r | |
164 | <div id="resTotal">Push [Test] to start.</div>\r | |
165 | <div id="resSAll"></div>\r | |
166 | </p>\r | |
167 | </body>\r | |
168 | </html>\r |