/[jsFind]/trunk/html/test.html
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Annotation of /trunk/html/test.html

Parent Directory Parent Directory | Revision Log Revision Log


Revision 20 - (hide annotations)
Mon Oct 4 19:51:05 2004 UTC (19 years, 7 months ago) by dpavlin
File MIME type: text/html
File size: 4182 byte(s)
start of tests for jsFind

1 dpavlin 20 <!DOCTYPE html PUBLIC
2     "-//W3C//DTD XHTML 1.0 Strict//EN"
3     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
4     <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
5     <head>
6     <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
7     <title>jsFind Test page</title>
8     <script src="js/search.js" type="text/javascript"></script>
9     <script src="test_data.js" type="text/javascript"></script>
10     <script type="text/javascript">
11    
12     /*
13     var test_data = {
14     'by': {
15     '33': 1,
16     '28': 1,
17     '7': 2,
18     '91': 1,
19     '78': 2,
20     '8': 1,
21     '1': 2,
22     '16': 1,
23     '23': 1,
24     '100': 1,
25     '65': 1
26     },
27     'voice.': {
28     '80': 1
29     }
30     };
31     */
32    
33     function get_div(name) {
34     var div = document.getElementById(name);
35     if (! div) alert("can't find div "+name);
36     return div;
37     }
38    
39     var good_div = null;
40     var bad_div = null;
41     var test_div = null;
42    
43    
44     var results_output = '';
45     var debug_output = '';
46     var test_ok = 0;
47     var test_error = 0;
48     var test_failed = false;
49    
50     var word_nr = -1; // first emement is word_nr++
51     var words = Array();
52    
53    
54     function debug(msg) {
55     debug_output += msg+"<br/>\n";
56     test_div.innerHTML += msg+'<br/>';
57     return;
58     }
59    
60     function msg_error(msg) {
61     debug('<span style="color: red;">'+msg+'</span>');
62     bad_div.innerHTML += '<span style="color: red;">'+msg+'</span><br/>';
63     test_error++;
64     test_failed = true;
65     return true;
66     }
67    
68     function msg_ok(msg) {
69     debug('<span style="color: green;">'+msg+'</span>');
70     good_div.innerHTML += '<span style="color: green;">'+msg+'</span><br/>';
71     test_ok++;
72     return true;
73     }
74    
75     function got_result(result) {
76     if (result.length < 0) {
77     msg_error("no results for word "+words[word_nr]);
78     }
79    
80     var word = words[word_nr];
81     var part = test_data[word];
82    
83     if (result.length == part.length) {
84     msg_ok("found "+result.lengh+" results");
85     } else if ( result.length > part.length )
86     msg_error("too much results "+result.length+" > "+part.length)
87     else msg_error("too fiew results "+result.length+" < "+part.length);
88    
89     for(var i=result.length-1; i>=0; i--) {
90     var test_hit = i+": <em>"+
91     result[i].title+"</em> * <tt>"+
92     result[i].link+"</tt> * "+
93     result[i].frequency;
94    
95     if ( test_data[ words[word_nr] ][ result[i].link ] != result[i].frequency ) {
96     msg_error("error in frequency for word: <b>"+words[word_nr]+"</b> [hit "+i+"] "+test_data[ words[word_nr] ][ result[i].link ]+" != "+result[i].frequency+"<br/>"+test_hit);
97    
98     results_output += test_hit;
99     } else {
100     debug(words[word_nr]+" "+i+" "+result[i].frequency);
101     }
102    
103     }
104    
105     // try next search
106     if (word_nr < words.length) do_search();
107    
108     return true;
109     }
110    
111     function do_test() {
112    
113     good_div = get_div('good');
114     bad_div = get_div('bad');
115     test_div = get_div('debug');
116    
117     var test_words = 0;
118    
119     for (word in test_data) {
120     words[test_words] = word;
121     debug("word "+test_words+" is <b>"+words[test_words]+"</b>");
122     test_words++;
123     }
124    
125     do_search();
126     }
127    
128    
129     function do_search() {
130    
131     word_nr++;
132    
133     if (word_nr < words.length && words[word_nr] != 'undefined') {
134    
135     results_output = '';
136     debug_output = '';
137     test_failed = false;
138    
139     debug("search for "+words[word_nr]+" ["+word_nr+"]");
140    
141     doSearch('ulyss', words[word_nr], got_result);
142    
143    
144     if (1 || test_failed) {
145     if (test_div) test_div.innerHTML += debug_output + results_output;
146     } else {
147     if (test_div) test_div.innerHTML += debug_output;
148     }
149    
150     } else {
151     test_div.innerHTML += "<hr/>tested "+word_nr+" words, "+test_ok+" test passed, "+test_error+" test failed.<hr/>";
152     }
153     }
154    
155     </script>
156     </head>
157    
158     <body onLoad="do_test();">
159    
160     <div style="color: blue;">
161     This is test html for jsFind -- it might take a long time on slower
162     computers and/or browsers, so please be patient!
163     </div>
164    
165     <div id="good" style="border: 1px solid green; width: 30%; float: left;">
166     </div>
167    
168     <div id="bad" style="border: 1px solid red; width: 30%; float: right;">
169     </div>
170    
171     <div id="debug" style="color: gray;">
172     </div>
173    
174     </body>
175     </html>

  ViewVC Help
Powered by ViewVC 1.1.26