00001
00002
00003 if (!backend) {
00004 static const test_desc tests[] = {
00005 { "defaultctor1", test_defaultctor1 },
00006 { "copyassign1", test_copyassign1 },
00007 { "trivial1", test_trivial1 },
00008 { "getqterms1", test_getqterms1 },
00009 { "getqterms2", test_getqterms2 },
00010 { "emptyquery2", test_emptyquery2 },
00011 { "emptyquery3", test_emptyquery3 },
00012 { "querylen1", test_querylen1 },
00013 { "querylen2", test_querylen2 },
00014 { "queryvalid1", test_queryvalid1 },
00015 { "subqcollapse1", test_subqcollapse1 },
00016 { "emptyquerypart1", test_emptyquerypart1 },
00017 { "singlesubq1", test_singlesubq1 },
00018 { "stemlangs1", test_stemlangs1 },
00019 { "weight1", test_weight1 },
00020 { "nosuchdb1", test_nosuchdb1 },
00021 { "addvalue1", test_addvalue1 },
00022 { "poscollapse2", test_poscollapse2 },
00023 { "uninitdb1", test_uninitdb1 },
00024 { "scaleweight3", test_scaleweight3 },
00025 { "scaleweight4", test_scaleweight4 },
00026 { "rset4", test_rset4 },
00027 { "opvaluege1", test_opvaluege1 },
00028 { "nearsubqueries1", test_nearsubqueries1 },
00029 { "utf8iterator1", test_utf8iterator1 },
00030 { "utf8iterator2", test_utf8iterator2 },
00031 { "unicode1", test_unicode1 },
00032 { "caseconvert1", test_caseconvert1 },
00033 { 0, 0 }
00034 };
00035 result = max(result, test_driver::run(tests));
00036 }
00037 if (backend) {
00038 static const test_desc tests[] = {
00039 { "zerodocid1", test_zerodocid1 },
00040 { "emptyquery1", test_emptyquery1 },
00041 { "simplequery1", test_simplequery1 },
00042 { "simplequery2", test_simplequery2 },
00043 { "simplequery3", test_simplequery3 },
00044 { "wildquery1", test_wildquery1 },
00045 { "multidb1", test_multidb1 },
00046 { "msetmaxitems1", test_msetmaxitems1 },
00047 { "expandweights1", test_expandweights1 },
00048 { "expandweights2", test_expandweights2 },
00049 { "expandmaxitems1", test_expandmaxitems1 },
00050 { "boolquery1", test_boolquery1 },
00051 { "msetfirst1", test_msetfirst1 },
00052 { "topercent1", test_topercent1 },
00053 { "topercent2", test_topercent2 },
00054 { "expandfunctor1", test_expandfunctor1 },
00055 { "pctcutoff1", test_pctcutoff1 },
00056 { "pctcutoff2", test_pctcutoff2 },
00057 { "cutoff1", test_cutoff1 },
00058 { "allowqterms1", test_allowqterms1 },
00059 { "maxattain1", test_maxattain1 },
00060 { "reversebool1", test_reversebool1 },
00061 { "reversebool2", test_reversebool2 },
00062 { "getmterms1", test_getmterms1 },
00063 { "getmterms2", test_getmterms2 },
00064 { "poscollapse1", test_poscollapse1 },
00065 { "repeatquery1", test_repeatquery1 },
00066 { "fetchdocs1", test_fetchdocs1 },
00067 { "absentterm1", test_absentterm1 },
00068 { "absentterm2", test_absentterm2 },
00069 { "rset1", test_rset1 },
00070 { "rset2", test_rset2 },
00071 { "eliteset1", test_eliteset1 },
00072 { "eliteset2", test_eliteset2 },
00073 { "eliteset3", test_eliteset3 },
00074 { "eliteset4", test_eliteset4 },
00075 { "eliteset5", test_eliteset5 },
00076 { "termlisttermfreq1", test_termlisttermfreq1 },
00077 { "qterminfo1", test_qterminfo1 },
00078 { "qterminfo2", test_qterminfo2 },
00079 { "msetzeroitems1", test_msetzeroitems1 },
00080 { "matches1", test_matches1 },
00081 { "wqf1", test_wqf1 },
00082 { "qlen1", test_qlen1 },
00083 { "termlist1", test_termlist1 },
00084 { "termlist2", test_termlist2 },
00085 { "termlist3", test_termlist3 },
00086 { "termlist4", test_termlist4 },
00087 { "puncterms1", test_puncterms1 },
00088 { "spaceterms1", test_spaceterms1 },
00089 { "xor1", test_xor1 },
00090 { "getdoc1", test_getdoc1 },
00091 { "emptyop1", test_emptyop1 },
00092 { "checkatleast1", test_checkatleast1 },
00093 { "checkatleast2", test_checkatleast2 },
00094 { "checkatleast3", test_checkatleast3 },
00095 { "allpostlist1", test_allpostlist1 },
00096 { "emptyterm1", test_emptyterm1 },
00097 { "valuerange1", test_valuerange1 },
00098 { "valuege1", test_valuege1 },
00099 { "valuele1", test_valuele1 },
00100 { "scaleweight1", test_scaleweight1 },
00101 { "scaleweight2", test_scaleweight2 },
00102 { "bm25weight1", test_bm25weight1 },
00103 { "tradweight1", test_tradweight1 },
00104 { "termstats", test_termstats },
00105 { "matchfunctor3", test_matchfunctor3 },
00106 { "msetiterator1", test_msetiterator1 },
00107 { "msetiterator2", test_msetiterator2 },
00108 { "msetiterator3", test_msetiterator3 },
00109 { "esetiterator1", test_esetiterator1 },
00110 { "esetiterator2", test_esetiterator2 },
00111 { "collapsekey1", test_collapsekey1 },
00112 { "collapsekey2", test_collapsekey2 },
00113 { "collapsekey3", test_collapsekey3 },
00114 { "collapsekey4", test_collapsekey4 },
00115 { "allterms1", test_allterms1 },
00116 { "allterms2", test_allterms2 },
00117 { "allterms3", test_allterms3 },
00118 { "allterms4", test_allterms4 },
00119 { "allterms5", test_allterms5 },
00120 { "allterms6", test_allterms6 },
00121 { "specialterms1", test_specialterms1 },
00122 { "specialterms2", test_specialterms2 },
00123 { "postlist1", test_postlist1 },
00124 { "postlist2", test_postlist2 },
00125 { "postlist3", test_postlist3 },
00126 { "postlist4", test_postlist4 },
00127 { "postlist5", test_postlist5 },
00128 { "postlist6", test_postlist6 },
00129 { "collfreq1", test_collfreq1 },
00130 { "sortvalue1", test_sortvalue1 },
00131 { "sortrel1", test_sortrel1 },
00132 { "matchall1", test_matchall1 },
00133 { "changesorter1", test_changesorter1 },
00134 { 0, 0 }
00135 };
00136 result = max(result, test_driver::run(tests));
00137 }
00138 if (backend&&!multi) {
00139 static const test_desc tests[] = {
00140 { "multidb2", test_multidb2 },
00141 { "multidb3", test_multidb3 },
00142 { "multidb4", test_multidb4 },
00143 { "multidb5", test_multidb5 },
00144 { "rsetmultidb1", test_rsetmultidb1 },
00145 { "rsetmultidb3", test_rsetmultidb3 },
00146 { "rsetmultidb2", test_rsetmultidb2 },
00147 { "multiexpand1", test_multiexpand1 },
00148 { 0, 0 }
00149 };
00150 result = max(result, test_driver::run(tests));
00151 }
00152 if (backend&&!remote) {
00153 static const test_desc tests[] = {
00154 { "matchfunctor1", test_matchfunctor1 },
00155 { "matchfunctor2", test_matchfunctor2 },
00156 { "consistency1", test_consistency1 },
00157 { "userweight1", test_userweight1 },
00158 { "sortfunctor1", test_sortfunctor1 },
00159 { "sortfunctorempty1", test_sortfunctorempty1 },
00160 { 0, 0 }
00161 };
00162 result = max(result, test_driver::run(tests));
00163 }
00164 if (backend&&writable) {
00165 static const test_desc tests[] = {
00166 { "valuerange2", test_valuerange2 },
00167 { "alldocspl1", test_alldocspl1 },
00168 { "alldocspl2", test_alldocspl2 },
00169 { 0, 0 }
00170 };
00171 result = max(result, test_driver::run(tests));
00172 }
00173 if (flint) {
00174 static const test_desc tests[] = {
00175 { "lockfileumask1", test_lockfileumask1 },
00176 { "stubdb1", test_stubdb1 },
00177 { "flintdatabaseopeningerror1", test_flintdatabaseopeningerror1 },
00178 { "flintdatabaseformaterror1", test_flintdatabaseformaterror1 },
00179 { "flintdatabaseformaterror2", test_flintdatabaseformaterror2 },
00180 { "flintdatabaseformaterror3", test_flintdatabaseformaterror3 },
00181 { "flintbackwardcompat1", test_flintbackwardcompat1 },
00182 { "flintbackwardcompat2", test_flintbackwardcompat2 },
00183 { "flintdatabaseopen1", test_flintdatabaseopen1 },
00184 { "cursordelbug1", test_cursordelbug1 },
00185 { 0, 0 }
00186 };
00187 result = max(result, test_driver::run(tests));
00188 }
00189 if (metadata) {
00190 static const test_desc tests[] = {
00191 { "metadata2", test_metadata2 },
00192 { "metadata3", test_metadata3 },
00193 { "metadata4", test_metadata4 },
00194 { 0, 0 }
00195 };
00196 result = max(result, test_driver::run(tests));
00197 }
00198 if (positional) {
00199 static const test_desc tests[] = {
00200 { "near1", test_near1 },
00201 { "near2", test_near2 },
00202 { "phrase1", test_phrase1 },
00203 { "phrase2", test_phrase2 },
00204 { "poslist1", test_poslist1 },
00205 { "positfromtermit1", test_positfromtermit1 },
00206 { 0, 0 }
00207 };
00208 result = max(result, test_driver::run(tests));
00209 }
00210 if (positional&&writable) {
00211 static const test_desc tests[] = {
00212 { "poslist2", test_poslist2 },
00213 { "poslist3", test_poslist3 },
00214 { 0, 0 }
00215 };
00216 result = max(result, test_driver::run(tests));
00217 }
00218 if (quartz) {
00219 static const test_desc tests[] = {
00220 { "quartzdatabaseopeningerror1", test_quartzdatabaseopeningerror1 },
00221 { "quartzdatabaseopen1", test_quartzdatabaseopen1 },
00222 { 0, 0 }
00223 };
00224 result = max(result, test_driver::run(tests));
00225 }
00226 if (remote) {
00227 static const test_desc tests[] = {
00228 { "keepalive1", test_keepalive1 },
00229 { "netstats1", test_netstats1 },
00230 { 0, 0 }
00231 };
00232 result = max(result, test_driver::run(tests));
00233 }
00234 if (spelling) {
00235 static const test_desc tests[] = {
00236 { "spell1", test_spell1 },
00237 { "spell2", test_spell2 },
00238 { "spell3", test_spell3 },
00239 { "spell4", test_spell4 },
00240 { "spell5", test_spell5 },
00241 { "spell6", test_spell6 },
00242 { 0, 0 }
00243 };
00244 result = max(result, test_driver::run(tests));
00245 }
00246 if (transactions) {
00247 static const test_desc tests[] = {
00248 { "badtransaction1", test_badtransaction1 },
00249 { "committransaction1", test_committransaction1 },
00250 { "canceltransaction1", test_canceltransaction1 },
00251 { "canceltransaction2", test_canceltransaction2 },
00252 { 0, 0 }
00253 };
00254 result = max(result, test_driver::run(tests));
00255 }
00256 if (writable) {
00257 static const test_desc tests[] = {
00258 { "adddoc1", test_adddoc1 },
00259 { "adddoc2", test_adddoc2 },
00260 { "adddoc3", test_adddoc3 },
00261 { "adddoc4", test_adddoc4 },
00262 { "adddoc5", test_adddoc5 },
00263 { "adddoc6", test_adddoc6 },
00264 { "implicitendsession1", test_implicitendsession1 },
00265 { "databaseassign1", test_databaseassign1 },
00266 { "deldoc1", test_deldoc1 },
00267 { "deldoc2", test_deldoc2 },
00268 { "deldoc3", test_deldoc3 },
00269 { "deldoc4", test_deldoc4 },
00270 { "deldoc5", test_deldoc5 },
00271 { "deldoc6", test_deldoc6 },
00272 { "replacedoc1", test_replacedoc1 },
00273 { "replacedoc2", test_replacedoc2 },
00274 { "replacedoc3", test_replacedoc3 },
00275 { "replacedoc4", test_replacedoc4 },
00276 { "replacedoc5", test_replacedoc5 },
00277 { "replacedoc6", test_replacedoc6 },
00278 { "uniqueterm1", test_uniqueterm1 },
00279 { "allpostlist2", test_allpostlist2 },
00280 { "emptyterm2", test_emptyterm2 },
00281 { "phraseorneartoand1", test_phraseorneartoand1 },
00282 { "longpositionlist1", test_longpositionlist1 },
00283 { "crashrecovery1", test_crashrecovery1 },
00284 { "nomoredocids1", test_nomoredocids1 },
00285 { "synonymitor1", test_synonymitor1 },
00286 { "metadata1", test_metadata1 },
00287 { "termtoolong1", test_termtoolong1 },
00288 { "postlist7", test_postlist7 },
00289 { "bigoaddvalue", test_bigoaddvalue },
00290 { 0, 0 }
00291 };
00292 result = max(result, test_driver::run(tests));
00293 }
00294 if (writable&&!remote) {
00295 static const test_desc tests[] = {
00296 { "sortfunctor2", test_sortfunctor2 },
00297 { 0, 0 }
00298 };
00299 result = max(result, test_driver::run(tests));
00300 }
00301 if (writable&&flint) {
00302 static const test_desc tests[] = {
00303 { "lazytablebug1", test_lazytablebug1 },
00304 { 0, 0 }
00305 };
00306 result = max(result, test_driver::run(tests));
00307 }
00308 if (writable&&metadata) {
00309 static const test_desc tests[] = {
00310 { "writeread1", test_writeread1 },
00311 { 0, 0 }
00312 };
00313 result = max(result, test_driver::run(tests));
00314 }
00315 test_driver::report(test_driver::subtotal,
00316 string("backend ") + backendmanager->get_dbtype());
00317 test_driver::total += test_driver::subtotal;
00318 test_driver::subtotal.reset();