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