OLD | NEW |
| (Empty) |
1 | |
2 # 2007 October 15 | |
3 # | |
4 # The author disclaims copyright to this source code. In place of | |
5 # a legal notice, here is a blessing: | |
6 # | |
7 # May you do good and not evil. | |
8 # May you find forgiveness for yourself and forgive others. | |
9 # May you share freely, never taking more than you give. | |
10 # | |
11 #************************************************************************* | |
12 # | |
13 # $Id: fts3near.test,v 1.3 2009/01/02 17:33:46 danielk1977 Exp $ | |
14 # | |
15 | |
16 set testdir [file dirname $argv0] | |
17 source $testdir/tester.tcl | |
18 | |
19 # If SQLITE_ENABLE_FTS3 is defined, omit this file. | |
20 ifcapable !fts3 { | |
21 finish_test | |
22 return | |
23 } | |
24 | |
25 db eval { | |
26 CREATE VIRTUAL TABLE t1 USING fts3(content); | |
27 INSERT INTO t1(content) VALUES('one three four five'); | |
28 INSERT INTO t1(content) VALUES('two three four five'); | |
29 INSERT INTO t1(content) VALUES('one two three four five'); | |
30 } | |
31 | |
32 do_test fts3near-1.1 { | |
33 execsql {SELECT docid FROM t1 WHERE content MATCH 'one NEAR/0 three'} | |
34 } {1} | |
35 do_test fts3near-1.2 { | |
36 execsql {SELECT docid FROM t1 WHERE content MATCH 'one NEAR/1 two'} | |
37 } {3} | |
38 do_test fts3near-1.3 { | |
39 execsql {SELECT docid FROM t1 WHERE content MATCH 'one NEAR/1 three'} | |
40 } {1 3} | |
41 do_test fts3near-1.4 { | |
42 execsql {SELECT docid FROM t1 WHERE content MATCH 'three NEAR/1 one'} | |
43 } {1 3} | |
44 do_test fts3near-1.5 { | |
45 execsql {SELECT docid FROM t1 WHERE content MATCH '"one two" NEAR/1 five'} | |
46 } {} | |
47 do_test fts3near-1.6 { | |
48 execsql {SELECT docid FROM t1 WHERE content MATCH '"one two" NEAR/2 five'} | |
49 } {3} | |
50 do_test fts3near-1.7 { | |
51 execsql {SELECT docid FROM t1 WHERE content MATCH 'one NEAR four'} | |
52 } {1 3} | |
53 do_test fts3near-1.8 { | |
54 execsql {SELECT docid FROM t1 WHERE content MATCH 'four NEAR three'} | |
55 } {1 2 3} | |
56 do_test fts3near-1.9 { | |
57 execsql {SELECT docid FROM t1 WHERE content MATCH '"four five" NEAR/0 three'} | |
58 } {1 2 3} | |
59 do_test fts3near-1.10 { | |
60 execsql {SELECT docid FROM t1 WHERE content MATCH '"four five" NEAR/2 one'} | |
61 } {1 3} | |
62 do_test fts3near-1.11 { | |
63 execsql {SELECT docid FROM t1 WHERE content MATCH '"four five" NEAR/1 one'} | |
64 } {1} | |
65 do_test fts3near-1.12 { | |
66 execsql {SELECT docid FROM t1 WHERE content MATCH 'five NEAR/1 "two three"'} | |
67 } {2 3} | |
68 do_test fts3near-1.13 { | |
69 execsql {SELECT docid FROM t1 WHERE content MATCH 'one NEAR five'} | |
70 } {1 3} | |
71 | |
72 do_test fts3near-1.14 { | |
73 execsql {SELECT docid FROM t1 WHERE content MATCH 'four NEAR four'} | |
74 } {} | |
75 do_test fts3near-1.15 { | |
76 execsql {SELECT docid FROM t1 WHERE content MATCH 'one NEAR two NEAR one'} | |
77 } {3} | |
78 | |
79 do_test fts3near-1.16 { | |
80 execsql { | |
81 SELECT docid FROM t1 WHERE content MATCH '"one three" NEAR/0 "four five"' | |
82 } | |
83 } {1} | |
84 do_test fts3near-1.17 { | |
85 execsql { | |
86 SELECT docid FROM t1 WHERE content MATCH '"four five" NEAR/0 "one three"' | |
87 } | |
88 } {1} | |
89 | |
90 | |
91 # Output format of the offsets() function: | |
92 # | |
93 # <column number> <term number> <starting offset> <number of bytes> | |
94 # | |
95 db eval { | |
96 INSERT INTO t1(content) VALUES('A X B C D A B'); | |
97 } | |
98 do_test fts3near-2.1 { | |
99 execsql { | |
100 SELECT offsets(t1) FROM t1 WHERE content MATCH 'A NEAR/0 B' | |
101 } | |
102 } {{0 0 10 1 0 1 12 1}} | |
103 do_test fts3near-2.2 { | |
104 execsql { | |
105 SELECT offsets(t1) FROM t1 WHERE content MATCH 'B NEAR/0 A' | |
106 } | |
107 } {{0 1 10 1 0 0 12 1}} | |
108 do_test fts3near-2.3 { | |
109 execsql { | |
110 SELECT offsets(t1) FROM t1 WHERE content MATCH '"C D" NEAR/0 A' | |
111 } | |
112 } {{0 0 6 1 0 1 8 1 0 2 10 1}} | |
113 do_test fts3near-2.4 { | |
114 execsql { | |
115 SELECT offsets(t1) FROM t1 WHERE content MATCH 'A NEAR/0 "C D"' | |
116 } | |
117 } {{0 1 6 1 0 2 8 1 0 0 10 1}} | |
118 do_test fts3near-2.5 { | |
119 execsql { | |
120 SELECT offsets(t1) FROM t1 WHERE content MATCH 'A NEAR A' | |
121 } | |
122 } {{0 0 0 1 0 1 0 1 0 0 10 1 0 1 10 1}} | |
123 do_test fts3near-2.6 { | |
124 execsql { | |
125 INSERT INTO t1 VALUES('A A A'); | |
126 SELECT offsets(t1) FROM t1 WHERE content MATCH 'A NEAR/2 A'; | |
127 } | |
128 } [list [list 0 0 0 1 0 1 0 1 0 0 2 1 0 1 2 1 0 0 4 1 0 1 4 1]] | |
129 do_test fts3near-2.7 { | |
130 execsql { | |
131 DELETE FROM t1; | |
132 INSERT INTO t1 VALUES('A A A A'); | |
133 SELECT offsets(t1) FROM t1 WHERE content MATCH 'A NEAR A NEAR A'; | |
134 } | |
135 } [list [list \ | |
136 0 0 0 1 0 1 0 1 0 2 0 1 0 0 2 1 \ | |
137 0 1 2 1 0 2 2 1 0 0 4 1 0 1 4 1 \ | |
138 0 2 4 1 0 0 6 1 0 1 6 1 0 2 6 1 \ | |
139 ]] | |
140 | |
141 db eval { | |
142 DELETE FROM t1; | |
143 INSERT INTO t1(content) VALUES( | |
144 'one two three two four six three six nine four eight twelve' | |
145 ); | |
146 } | |
147 | |
148 do_test fts3near-3.1 { | |
149 execsql {SELECT offsets(t1) FROM t1 WHERE content MATCH 'three NEAR/1 one'} | |
150 } {{0 1 0 3 0 0 8 5}} | |
151 do_test fts3near-3.2 { | |
152 execsql {SELECT offsets(t1) FROM t1 WHERE content MATCH 'one NEAR/1 three'} | |
153 } {{0 0 0 3 0 1 8 5}} | |
154 do_test fts3near-3.3 { | |
155 execsql {SELECT offsets(t1) FROM t1 WHERE content MATCH 'three NEAR/1 two'} | |
156 } {{0 1 4 3 0 0 8 5 0 1 14 3}} | |
157 do_test fts3near-3.4 { | |
158 execsql {SELECT offsets(t1) FROM t1 WHERE content MATCH 'three NEAR/2 two'} | |
159 } {{0 1 4 3 0 0 8 5 0 1 14 3 0 0 27 5}} | |
160 do_test fts3near-3.5 { | |
161 execsql {SELECT offsets(t1) FROM t1 WHERE content MATCH 'two NEAR/2 three'} | |
162 } {{0 0 4 3 0 1 8 5 0 0 14 3 0 1 27 5}} | |
163 do_test fts3near-3.6 { | |
164 execsql { | |
165 SELECT offsets(t1) FROM t1 WHERE content MATCH 'three NEAR/0 "two four"' | |
166 } | |
167 } {{0 0 8 5 0 1 14 3 0 2 18 4}} | |
168 do_test fts3near-3.7 { | |
169 execsql { | |
170 SELECT offsets(t1) FROM t1 WHERE content MATCH '"two four" NEAR/0 three'} | |
171 } {{0 2 8 5 0 0 14 3 0 1 18 4}} | |
172 | |
173 db eval { | |
174 INSERT INTO t1(content) VALUES(' | |
175 This specification defines Cascading Style Sheets, level 2 (CSS2). CSS2 is a
style sheet language that allows authors and users to attach style (e.g., fonts
, spacing, and aural cues) to structured documents (e.g., HTML documents and XML
applications). By separating the presentation style of documents from the conte
nt of documents, CSS2 simplifies Web authoring and site maintenance. | |
176 | |
177 CSS2 builds on CSS1 (see [CSS1]) and, with very few exceptions, all valid CS
S1 style sheets are valid CSS2 style sheets. CSS2 supports media-specific style
sheets so that authors may tailor the presentation of their documents to visual
browsers, aural devices, printers, braille devices, handheld devices, etc. This
specification also supports content positioning, downloadable fonts, table layou
t, features for internationalization, automatic counters and numbering, and some
properties related to user interface. | |
178 ') | |
179 } | |
180 do_test fts3near-4.1 { | |
181 execsql { | |
182 SELECT snippet(t1) FROM t1 WHERE content MATCH 'specification NEAR supports' | |
183 } | |
184 } {{<b>...</b>braille devices, handheld devices, etc. This <b>specification</b>
also <b>supports</b> content positioning, downloadable fonts, table layout<b>...
</b>}} | |
185 | |
186 do_test fts3near-5.1 { | |
187 execsql { | |
188 SELECT docid FROM t1 WHERE content MATCH 'specification attach' | |
189 } | |
190 } {2} | |
191 do_test fts3near-5.2 { | |
192 execsql { | |
193 SELECT docid FROM t1 WHERE content MATCH 'specification NEAR attach' | |
194 } | |
195 } {} | |
196 do_test fts3near-5.3 { | |
197 execsql { | |
198 SELECT docid FROM t1 WHERE content MATCH 'specification NEAR/18 attach' | |
199 } | |
200 } {} | |
201 do_test fts3near-5.4 { | |
202 execsql { | |
203 SELECT docid FROM t1 WHERE content MATCH 'specification NEAR/19 attach' | |
204 } | |
205 } {2} | |
206 do_test fts3near-5.5 { | |
207 execsql { | |
208 SELECT docid FROM t1 WHERE content MATCH 'specification NEAR/000018 attach' | |
209 } | |
210 } {} | |
211 do_test fts3near-5.6 { | |
212 execsql { | |
213 SELECT docid FROM t1 WHERE content MATCH 'specification NEAR/000019 attach' | |
214 } | |
215 } {2} | |
216 | |
217 db eval { | |
218 INSERT INTO t1 VALUES(' | |
219 abbrev aberrations abjurations aboding abr abscesses absolutistic | |
220 abstention abuses acanthuses acceptance acclaimers accomplish | |
221 accoutring accusation acetonic acid acolytes acquitting acrylonitrile | |
222 actives acyclic addicted adenoid adjacently adjusting admissible | |
223 adoption adulated advantaging advertisers aedes aerogramme aetiology | |
224 affiliative afforest afterclap agamogenesis aggrade agings agonize | |
225 agron ailurophile airfreight airspeed alarmists alchemizing | |
226 alexandrines alien aliped all allergenic allocator allowances almost | |
227 alphabetizes altho alvine amaurosis ambles ameliorate amicability amnio | |
228 amour ampicillin amusement anadromous analogues anarchy anchormen | |
229 anecdota aneurin angst animating anlage announcements anodized | |
230 answerable antemeridian anthracene antiabortionist anticlimaxes | |
231 antifriction antimitotic antiphon antiques antithetic anviled | |
232 apatosaurus aphrodisia apodal aposiopesis apparatus appendectomies | |
233 applications appraisingly appropriate apteryx arabinose | |
234 arboricultural archdeaconates archipelago ardently arguers armadillo | |
235 arnicas arrayed arrowy arthroscope artisans ascensive ashier | |
236 aspersorium assail assentor assignees assonants astereognosis | |
237 astringency astutest atheistical atomize attachment attenuates | |
238 attrahent audibility augite auricle auteurists autobus autolysis | |
239 autosome avenge avidest aw awl ayes babirusa backbeats backgrounder | |
240 backseat backswings baddie bagnios baked balefuller ballista balmily | |
241 bandbox bandylegged bankruptcy baptism barbering bargain barneys | |
242 barracuda barterer bashes bassists bathers batterer bavardage | |
243 beachfront beanstalk beauteous become bedim bedtimes beermats begat | |
244 begun belabors bellarmine belongings bending benthos bereavements | |
245 besieger bestialized betide bevels biases bicarbonates bidentate bigger | |
246 bile billow bine biodynamics biomedicine biotites birding bisection | |
247 bitingly bkg blackheads blaeberry blanking blatherer bleeper blindage | |
248 blithefulness blockish bloodstreams bloused blubbing bluestocking | |
249 blurted boatbill bobtailed boffo bold boltrope bondservant bonks | |
250 bookbinding bookworm booting borating boscages botchers bougainvillea | |
251 bounty bowlegged boyhood bracketed brainstorm brandishes | |
252 braunschweigers brazilin breakneck breathlessness brewage bridesmaids | |
253 brighter brisker broader brokerages bronziest browband brunets bryology | |
254 bucking budlike bugleweed bulkily bulling bummer bunglers bureau burgs | |
255 burrito bushfire buss butlery buttressing bylines cabdriver cached | |
256 cadaverousnesses cafeterias cakewalk calcifies calendula callboy calms | |
257 calyptra camisoles camps candelabrum caned cannolis canoodling cantors | |
258 cape caponize capsuling caracoled carbolics carcase carditis caretakers | |
259 carnallite carousel carrageenan cartels carves cashbook castanets | |
260 casuistry catalyzer catchers categorizations cathexis caucuses | |
261 causeway cavetto cede cella cementite centenary centrals ceramics ceria | |
262 cervixes chafferer chalcopyrites chamfers change chaotically | |
263 characteristically charivari chases chatterer cheats cheeks chef | |
264 chemurgy chetah chickaree chigoes chillies chinning chirp chive | |
265 chloroforms chokebore choplogic chorioids chromatic chronically | |
266 chubbiest chunder chutzpah cimetidine cinque circulated circumscribe | |
267 cirrose citrin claddagh clamorousness clapperboards classicalism | |
268 clauses cleanse clemency clicker clinchers cliquiest clods closeting | |
269 cloudscape clucking cnidarian coalfish coatrack coca cockfights coddled | |
270 coeducation coexistence cognitively coiffed colatitude collage | |
271 collections collinear colonelcy colorimetric columelliform combos | |
272 comforters commence commercialist commit commorancy communized compar | |
273 compendiously complainers compliance composition comprised comradery | |
274 concelebrants concerted conciliation concourses condensate | |
275 condonations confab confessionals confirmed conforming congeal | |
276 congregant conjectured conjurers connoisseurs conscripting | |
277 conservator consolable conspired constricting consuls contagious | |
278 contemporaneity contesters continuities contractors contrarian | |
279 contrive convalescents convents convexly convulsed cooncan coparcenary | |
280 coprolite copyreader cordially corklike cornflour coroner corralling | |
281 corrigible corsages cosies cosmonauts costumer cottontails counselings | |
282 counterclaim counterpane countertenors courageously couth coveting | |
283 coworker cozier cracklings crampon crappies craved cream credenzas | |
284 crematoriums cresol cricoid crinkle criterion crocodile crore crossover | |
285 crowded cruelest crunch cruzeiros cryptomeria cubism cuesta culprit | |
286 cumquat cupped curdle curly cursoring curvy customized cutting cyclamens | |
287 cylindrical cytaster dachshund daikon damages damselfly dangling | |
288 darkest databanks dauphine dazzling deadpanned deathday debauchers | |
289 debunking decameter decedents decibel decisions declinations | |
290 decomposition decoratively decretive deduct deescalated defecating | |
291 deferentially definiendum defluxion defrocks degrade deice dekaliters | |
292 deli delinquencies deludedly demarcates demineralizers demodulating | |
293 demonstrabilities demurred deniabilities denouncement denudation | |
294 departure deplorable deposing depredatory deputizes derivational | |
295 desalinization descriptors desexes desisted despising destitute | |
296 detectability determiner detoxifying devalued devilries devotions | |
297 dextrous diagenesis dialling diaphoresis diazonium dickeys diddums | |
298 differencing dig dignified dildo dimetric dineric dinosaurs diplodocus | |
299 directer dirty disagrees disassembler disburses disclosures | |
300 disconcerts discountability discrete disembarrass disenthrone | |
301 disgruntled dishpans disintegrators dislodged disobedient | |
302 dispassionate dispiritednesses dispraised disqualifying | |
303 dissatisfying dissidence dissolvers distich distracting distrusts | |
304 ditto diverse divineness dizzily dockyard dodgers doggish doited dom | |
305 dominium doohickey doozie dorsum doubleheaders dourer downbeats | |
306 downshifted doyennes draftsman dramatic drawling dredge drifter | |
307 drivelines droopier drowsed drunkards dubiosities duding dulcifying | |
308 dumpcart duodecillion durable duteous dyed dysgenic eagles earplugs | |
309 earwitness ebonite echoers economical ectothermous edibility educates | |
310 effected effigies eggbeaters egresses ejaculates elasticize elector | |
311 electrodynamometer electrophorus elem eligibly eloped emaciating | |
312 embarcaderos embezzlers embosses embryectomy emfs emotionalizing | |
313 empiricist emu enamels enchained encoded encrusts endeavored endogamous | |
314 endothelioma energizes engager engrosses enl enologist enrolls ensphere | |
315 enters entirety entrap entryways envies eosinophil epicentral | |
316 epigrammatized episodic epochs equestrian equitably erect ernes | |
317 errorless escalated eschatology espaliers essonite estop eternity | |
318 ethnologically eudemonics euphonious euthenist evangelizations | |
319 eventuality evilest evulsion examinee exceptionably exciter | |
320 excremental execrably exemplars exhalant exhorter exocrine exothermic | |
321 expected expends explainable exploratory expostulatory expunges | |
322 extends externals extorts extrapolative extrorse eyebolt eyra | |
323 facetiously factor faeries fairings fallacies falsities fancifulness | |
324 fantasticalness farmhouse fascinate fatalistically fattener fave | |
325 fearlessly featly federates feints fellowman fencers ferny | |
326 fertilenesses feta feudality fibers fictionalize fiefs fightback | |
327 filefish filmier finaglers fingerboards finochio firefly firmament | |
328 fishmeal fitted fjords flagitiousnesses flamen flaps flatfooting | |
329 flauntier fleapit fleshes flickertail flints floaty floorboards | |
330 floristic flow fluffily fluorescein flutes flyspecks foetal folderols | |
331 followable foolhardier footlockers foppish forceless foredo foreknows | |
332 foreseeing foretaste forgather forlorn formidableness fortalice | |
333 forwarding founding foxhunting fragmentarily frangipani fray freeform | |
334 freezable freshening fridges frilliest frizzed frontbench frottages | |
335 fruitcake fryable fugleman fulminated functionalists fungoid furfuran | |
336 furtive fussy fwd gadolinium galabias gallinaceous galvanism gamers | |
337 gangland gaoling garganey garrisoning gasp gate gauger gayety geed | |
338 geminately generalissimos genii gentled geochronology geomorphic | |
339 geriatricians gesellschaft ghat gibbeting giggles gimps girdlers | |
340 glabella glaive glassfuls gleefully glistered globetrotted glorifier | |
341 gloving glutathione glyptodont goaled gobsmacked goggliest golliwog | |
342 goobers gooseberries gormandizer gouramis grabbier gradually grampuses | |
343 grandmothers granulated graptolite gratuitously gravitates greaten | |
344 greenmailer greys grills grippers groan gropingly grounding groveling | |
345 grueled grunter guardroom guggle guineas gummed gunnysacks gushingly | |
346 gutturals gynecoid gyrostabilizer habitudes haemophilia hailer hairs | |
347 halest hallow halters hamsters handhelds handsaw hangup haranguer | |
348 hardheartedness harlotry harps hashing hated hauntingly hayrack | |
349 headcases headphone headword heartbreakers heaters hebephrenia | |
350 hedonist heightening heliozoan helots hemelytron hemorrhagic hent | |
351 herbicides hereunto heroines heteroclitics heterotrophs hexers | |
352 hidebound hies hightails hindmost hippopotomonstrosesquipedalian | |
353 histologist hittable hobbledehoys hogans holdings holocrine homegirls | |
354 homesteader homogeneousness homopolar honeys hoodwinks hoovered | |
355 horizontally horridness horseshoers hospitalization hotdogging houri | |
356 housemate howitzers huffier humanist humid humors huntress husbandmen | |
357 hyaenas hydride hydrokinetics hydroponically hygrothermograph | |
358 hyperbolically hypersensitiveness hypnogogic hypodermically | |
359 hypothermia iatrochemistry ichthyological idealist ideograms idling | |
360 igniting illegal illuminatingly ilmenite imbibing immateriality | |
361 immigrating immortalizes immures imparts impeder imperfection | |
362 impersonated implant implying imposition imprecating imprimis | |
363 improvising impv inanenesses inaugurate incapably incentivize | |
364 incineration incloses incomparableness inconsequential incorporate | |
365 incrementing incumbered indecorous indentation indicative indignities | |
366 indistinguishably indoors indulges ineducation inerrable | |
367 inexperienced infants infestations infirmnesses inflicting | |
368 infracostal ingathered ingressions inheritances iniquity | |
369 injuriousnesses innervated inoculates inquisitionist insectile | |
370 insiders insolate inspirers instatement instr insulates intactness | |
371 intellects intensifies intercalations intercontinental interferon | |
372 interlarded intermarrying internalizing interpersonally | |
373 interrelatednesses intersperse interviewees intolerance | |
374 intransigents introducing intubates invades inventing inveterate | |
375 invocate iodides irenicism ironsmith irreducibly irresistibility | |
376 irriguous isobarisms isometrically issuable itineracies jackdaws | |
377 jaggery jangling javelins jeeringly jeremiad jeweler jigsawing jitter | |
378 jocosity jokester jot jowls judicative juicy jungly jurists juxtaposed | |
379 kalpa karstify keddah kendo kermesses keynote kibbutznik kidnaper | |
380 kilogram kindred kingpins kissers klatch kneads knobbed knowingest | |
381 kookaburras kruller labefaction labyrinths lacquer laddered lagoons | |
382 lambency laminates lancinate landscapist lankiness lapse larked lasso | |
383 laterite laudableness laundrywomen lawgiver laypersons leafhoppers | |
384 leapfrogs leaven leeches legated legislature leitmotifs lenients | |
385 leprous letterheads levelling lexicographically liberalists | |
386 librettist licorice lifesaving lightheadedly likelier limekiln limped | |
387 lines linkers lipoma liquidator listeners litharge litmus | |
388 liverishnesses loamier lobeline locative locutionary loggier loiterer | |
389 longevity loomed loping lotion louts lowboys luaus lucrativeness lulus | |
390 lumpier lungi lush luthern lymphangial lythraceous machinists maculate | |
391 maggot magnetochemistry maharani maimers majored malaprops malignants | |
392 maloti mammary manchineel manfully manicotti manipulativenesses | |
393 mansards manufactories maraschino margin markdown marooning marshland | |
394 mascaraing massaging masticate matchmark matings mattes mausoleum | |
395 mayflies mealworm meataxe medevaced medievalist meetings megavitamin | |
396 melded melodramatic memorableness mendaciousnesses mensurable | |
397 mercenaries mere meronymous mesmerizes mestee metallurgical | |
398 metastasize meterages meticulosity mewed microbe microcrystalline | |
399 micromanager microsporophyll midiron miffed milder militiamen | |
400 millesimal milometer mincing mingily minims minstrelsy mires | |
401 misanthropic miscalculate miscomprehended misdefines misery mishears | |
402 misled mispickel misrepresent misspending mistranslate miswriting | |
403 mixologists mobilizers moderators modulate mojo mollies momentum monde | |
404 monied monocles monographs monophyletic monotonousness moocher | |
405 moorages morality morion mortally moseyed motherly motorboat mouldering | |
406 mousers moveables mucky mudslides mulatto multicellularity | |
407 multipartite multivalences mundanities murkiest mushed muskiness | |
408 mutability mutisms mycelia myosotis mythicist nacred namable napkin | |
409 narghile nastiness nattering nauseations nearliest necessitate | |
410 necrophobia neg negotiators neologizes nephrotomy netiquette | |
411 neurophysiology newbie newspaper niccolite nielsbohriums nightlong | |
412 nincompoops nitpicked nix noddling nomadize nonadhesive noncandidates | |
413 nonconducting nondigestible nones nongreasy nonjoinder nonoccurrence | |
414 nonporousness nonrestrictive nonstaining nonuniform nooses northwards | |
415 nostalgic notepaper nourishment noyades nuclides numberless numskulls | |
416 nutmegged nymphaea oatmeal obis objurgators oblivious obsequiousness | |
417 obsoletism obtruding occlusions ocher octettes odeums offcuts | |
418 officiation ogival oilstone olestras omikron oncogenesis onsetting | |
419 oomphs openly ophthalmoscope opposites optimum orangutans | |
420 orchestrations ordn organophosphates origin ornithosis orthognathous | |
421 oscillatory ossuaries ostracized ounce outbreaks outearning outgrows | |
422 outlived outpoints outrunning outspends outwearing overabound | |
423 overbalance overcautious overcrowds overdubbing overexpanding | |
424 overgraze overindustrialize overlearning overoptimism overproducing | |
425 overripe overshadowing overspreading overstuff overtones overwind ow | |
426 oxidizing pacer packs paganish painstakingly palate palette pally | |
427 palsying pandemic panhandled pantheism papaws papped parading | |
428 parallelize paranoia parasitically pardners parietal parodied pars | |
429 participator partridgeberry passerines password pastors | |
430 paterfamiliases patination patrolman paunch pawnshops peacekeeper | |
431 peatbog peculator pedestrianism peduncles pegboard pellucidnesses | |
432 pendency penitentiary penstock pentylenetetrazol peptidase perched | |
433 perennial performing perigynous peripheralize perjurer permissively | |
434 perpetuals persistency perspicuously perturbingly pesky petcock | |
435 petrologists pfennige pharmacies phenformin philanderers | |
436 philosophically phonecards phosgenes photocomposer photogenic photons | |
437 phototype phylloid physiotherapeutics picadores pickup pieces pigging | |
438 pilaster pillion pimples pinioned pinpricks pipers pirogi pit | |
439 pitifullest pizza placental plainly planing plasmin platforming | |
440 playacts playwrights plectra pleurisy plopped plug plumule plussed | |
441 poaches poetasters pointless polarize policyholder polkaed | |
442 polyadelphous polygraphing polyphonous pomace ponderers pooch poplar | |
443 porcelains portableness portly positioning postage posthumously | |
444 postponed potages potholed poulard powdering practised pranksters | |
445 preadapt preassigning precentors precipitous preconditions predefined | |
446 predictors preengage prefers prehumans premedical prenotification | |
447 preplanning prepuberty presbytery presentation presidia prestissimo | |
448 preterites prevailer prewarmed priding primitively principalships | |
449 prisage privileged probed prochurch proctoscope products proficients | |
450 prognathism prohibiting proletarianisms prominence promulgates | |
451 proofreading property proportions prorate proselytize prosthesis | |
452 proteins prototypic provenances provitamin prudish pseudonymities | |
453 psychoanalysts psychoneuroses psychrometer publishable pufferies | |
454 pullet pulses punchy punkins purchased purities pursers pushover | |
455 putridity pylons pyrogenous pzazz quadricepses quaff qualmish quarriers | |
456 quasilinear queerness questionnaires quieten quintals quislings quoits | |
457 rabidness racketeers radiative radioisotope radiotherapists ragingly | |
458 rainband rakishness rampagers rands raped rare raspy ratiocinator | |
459 rattlebrain ravening razz reactivation readoption realm reapportioning | |
460 reasoning reattempts rebidding rebuts recapitulatory receptiveness | |
461 recipes reckonings recognizee recommendatory reconciled reconnoiters | |
462 recontaminated recoupments recruits recumbently redact redefine | |
463 redheaded redistributable redraw redwing reeled reenlistment reexports | |
464 refiles reflate reflowing refortified refried refuses regelate | |
465 registrant regretting rehabilitative reigning reinduced reinstalled | |
466 reinvesting rejoining relations relegates religiosities reluctivity | |
467 remastered reminisce remodifying remounted rends renovate reordered | |
468 repartee repel rephrase replicate repossessing reprint reprogramed | |
469 repugnantly requiter rescheduling resegregate resettled residually | |
470 resold resourcefulness respondent restating restrainedly resubmission | |
471 resurveyed retaliating retiarius retorsion retreated retrofitting | |
472 returning revanchism reverberated reverted revitalization | |
473 revolutionize rewind rhapsodizing rhizogenic rhythms ricketinesses | |
474 ridicule righteous rilles rinks rippliest ritualize riyals roast rockery | |
475 roguish romanizations rookiest roquelaure rotation rotundity rounder | |
476 routinizing rubberize rubricated ruefully ruining rummaged runic | |
477 russets ruttish sackers sacrosanctly safeguarding said salaciousness | |
478 salinity salsas salutatorians sampan sandbag saned santonin | |
479 saprophagous sarnies satem saturant savaged sawbucks scablike scalp | |
480 scant scared scatter schedulers schizophrenics schnauzers schoolmarms | |
481 scintillae scleroses scoped scotched scram scratchiness screwball | |
482 scripting scrubwomen scrutinizing scumbled scuttled seals seasickness | |
483 seccos secretions secularizing seditiousnesses seeking segregators | |
484 seize selfish semeiology seminarian semitropical sensate sensors | |
485 sentimo septicemic sequentially serener serine serums | |
486 sesquicentennials seventeen sexiest sforzandos shadowing shallot | |
487 shampooing sharking shearer sheered shelters shifter shiner shipper | |
488 shitted shoaled shofroth shorebirds shortsightedly showboated shrank | |
489 shrines shucking shuttlecocks sickeningly sideling sidewise sigil | |
490 signifiers siliceous silty simony simulative singled sinkings sirrah | |
491 situps skateboarder sketchpad skim skirmished skulkers skywalk slander | |
492 slating sleaziest sleepyheads slicking slink slitting slot slub | |
493 slumlords smallest smattered smilier smokers smriti snailfish snatch | |
494 snides snitching snooze snowblowers snub soapboxing socialite sockeyes | |
495 softest sold solicitings solleret sombreros somnolencies sons sopor | |
496 sorites soubrette soupspoon southpaw spaces spandex sparkers spatially | |
497 speccing specking spectroscopists speedsters spermatics sphincter | |
498 spiffied spindlings spirals spitball splayfeet splitter spokeswomen | |
499 spooled sportily spousals sprightliness sprogs spurner squalene | |
500 squattered squelches squirms stablish staggerings stalactitic stamp | |
501 stands starflower starwort stations stayed steamroll steeplebush | |
502 stemmatics stepfathers stereos steroid sticks stillage stinker | |
503 stirringly stockpiling stomaching stopcock stormers strabismuses | |
504 strainer strappado strawberries streetwise striae strikeouts strives | |
505 stroppiest stubbed study stunting style suavity subchloride subdeb | |
506 subfields subjoin sublittoral subnotebooks subprograms subside | |
507 substantial subtenants subtreasuries succeeding sucked sufferers | |
508 sugarier sulfaguanidine sulphating summerhouse sunbonnets sunned | |
509 superagency supercontinent superheroes supernatural superscribing | |
510 superthin supplest suppositive surcease surfs surprise survey | |
511 suspiration svelte swamplands swashes sweatshop swellhead swindling | |
512 switching sworn syllabuses sympathetics synchrocyclotron syndic | |
513 synonymously syringed tablatures tabulation tackling taiga takas talker | |
514 tamarisks tangential tans taproom tarpapers taskmaster tattiest | |
515 tautologically taxied teacup tearjerkers technocracies teepee | |
516 telegenic telephony telexed temperaments temptress tenderizing tensed | |
517 tenuring tergal terned terror testatrices tetherball textile thatched | |
518 their theorem thereof thermometers thewy thimerosal thirsty | |
519 thoroughwort threateningly thrived through thumbnails thwacks | |
520 ticketing tie til timekeepers timorousness tinkers tippers tisane | |
521 titrating toastmaster toff toking tomb tongs toolmakings topes topple | |
522 torose tortilla totalizing touchlines tousling townsmen trachea | |
523 tradeable tragedienne traitorous trances transcendentalists | |
524 transferrable tranship translating transmogrifying transportable | |
525 transvestism traumatize treachery treed trenail tressing tribeswoman | |
526 trichromatism triennials trikes trims triplicate tristich trivializes | |
527 trombonist trots trouts trued trunnion tryster tubes tulle tundras turban | |
528 turgescence turnround tutelar tweedinesses twill twit tympanum typists | |
529 tzarists ulcered ultramodern umbles unaccountability unamended | |
530 unassertivenesses unbanned unblocked unbundled uncertified unclaimed | |
531 uncoated unconcerns unconvinced uncrossing undefined underbodice | |
532 underemphasize undergrowth underpayment undershirts understudy | |
533 underwritten undissolved unearthed unentered unexpended unfeeling | |
534 unforeseen unfussy unhair unhinges unifilar unimproved uninvitingly | |
535 universalization unknowns unlimbering unman unmet unnaturalness | |
536 unornament unperturbed unprecedentedly unproportionate unread | |
537 unreflecting unreproducible unripe unsatisfying unseaworthiness | |
538 unsharable unsociable unstacking unsubtly untactfully untied untruest | |
539 unveils unwilled unyokes upheave upraised upstart upwind urethrae | |
540 urtexts usurers uvula vacillators vailed validation valvule vanities | |
541 varia variously vassaled vav veggies velours venerator ventrals | |
542 verbalizes verification vernacularized verticality vestigially via | |
543 vicariously victoriousness viewpoint villainies vines violoncellist | |
544 virtual viscus vital vitrify viviparous vocalizers voidable volleys | |
545 volutes vouches vulcanology wackos waggery wainwrights waling wallowing | |
546 wanking wardroom warmup wartiest washwoman watchman watermarks waverer | |
547 wayzgoose weariest weatherstripped weediness weevil welcomed | |
548 wentletrap whackers wheatworm whelp whf whinged whirl whistles whithers | |
549 wholesomeness whosoever widows wikiup willowier windburned windsail | |
550 wingspread winterkilled wisecracking witchgrass witling wobbliest | |
551 womanliness woodcut woodworking woozy working worldwide worthiest | |
552 wrappings wretched writhe wynd xylophone yardarm yea yelped yippee yoni | |
553 yuks zealotry zigzagger zitherists zoologists zygosis'); | |
554 } | |
555 | |
556 do_test fts3near-6.1 { | |
557 execsql { | |
558 SELECT docid FROM t1 WHERE content MATCH 'abbrev zygosis' | |
559 } | |
560 } {3} | |
561 do_test fts3near-6.2 { | |
562 execsql { | |
563 SELECT docid FROM t1 WHERE content MATCH 'abbrev NEAR zygosis' | |
564 } | |
565 } {} | |
566 do_test fts3near-6.3 { | |
567 execsql { | |
568 SELECT docid FROM t1 WHERE content MATCH 'abbrev NEAR/100 zygosis' | |
569 } | |
570 } {} | |
571 do_test fts3near-6.4 { | |
572 execsql { | |
573 SELECT docid FROM t1 WHERE content MATCH 'abbrev NEAR/1000 zygosis' | |
574 } | |
575 } {} | |
576 do_test fts3near-6.5 { | |
577 execsql { | |
578 SELECT docid FROM t1 WHERE content MATCH 'abbrev NEAR/10000 zygosis' | |
579 } | |
580 } {3} | |
581 | |
582 # Ticket 38b1ae018f. | |
583 # | |
584 do_execsql_test fts3near-7.1 { | |
585 CREATE VIRTUAL TABLE x USING fts4(y,z); | |
586 INSERT INTO x VALUES('aaa bbb ccc ddd', 'bbb ddd aaa ccc'); | |
587 SELECT * FROM x where y MATCH 'bbb NEAR/6 aaa'; | |
588 } {{aaa bbb ccc ddd} {bbb ddd aaa ccc}} | |
589 | |
590 do_execsql_test fts3near-7.2 { | |
591 CREATE VIRTUAL TABLE t2 USING fts4(a, b); | |
592 INSERT INTO t2 VALUES('A B C', 'A D E'); | |
593 SELECT * FROM t2 where t2 MATCH 'a:A NEAR E' | |
594 } {} | |
595 | |
596 | |
597 finish_test | |
OLD | NEW |