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