root/pyndexter/trunk/pyndexter/tests/corpus.py

Revision 393, 13.5 kB (checked in by athomas, 2 years ago)

pyndexter:

  • All indexers are now being fairly comprehensively tested. Still a number of
    failures, but I'll weed them out over time.
  • Added Unicode test corpus, though not used yet. Need to figure out how to
    run the same test class with different input data.
  • Property svn:eol-style set to native
Line 
1 # -*- coding: utf-8 -*-
2 #
3 # Copyright (C) 2006 Alec Thomas <alec@swapoff.org>
4 #
5 # This software is licensed as described in the file COPYING, which
6 # you should have received as part of this distribution.
7 #
8
9 from pyndexter import Document, URI
10
11 # Text thanks to the Lorem Ipsum generator at http://www.lipsum.com/
12
13 corpus = [
14 u"""Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Nunc congue odio
15 eget risus. Sed convallis velit vel elit. Curabitur ante. Aliquam a purus.
16 Donec pulvinar. Vestibulum leo purus, egestas quis, dapibus non, tempus ac,
17 risus. Etiam pretium risus a libero. Integer at dolor sed dolor aliquam
18 lobortis. Nullam sed libero at sem vehicula placerat. Donec dolor purus,
19 faucibus sit amet, dictum non, feugiat eget, odio. Nullam ut sem cursus lorem
20 porttitor tincidunt. Vestibulum a sem. Class aptent taciti sociosqu ad litora
21 torquent per conubia nostra, per inceptos hymenaeos. Vestibulum pellentesque.
22 Nulla molestie dolor non mauris. Quisque iaculis. Vestibulum fermentum ultrices
23 pede. Mauris vulputate sapien ac dolor.""",
24
25 u"""Nunc massa nisi, fringilla ut, convallis ac, sodales a, felis. Aenean erat
26 lectus, sagittis in, ullamcorper eu, placerat vel, lorem. Etiam dui. Duis
27 vestibulum placerat sem. Suspendisse in eros. Pellentesque erat purus, semper
28 auctor, ultrices ac, fermentum in, libero. Etiam accumsan velit in dolor. Ut
29 cursus leo et elit. Cras est. Praesent sapien.""",
30
31 u"""Pellentesque augue est, condimentum sodales, vehicula tincidunt, ultrices
32 quis, mi. Suspendisse quis velit eu ipsum auctor iaculis. Aenean vestibulum
33 scelerisque tortor. Pellentesque tincidunt. Ut purus sapien, egestas nec,
34 posuere sit amet, ullamcorper in, elit. Praesent dapibus molestie quam.
35 Phasellus sed sapien. In hac habitasse platea dictumst. Quisque consectetuer
36 elementum dolor. Aenean elementum tellus sed erat. Maecenas odio. Proin a dui.
37 Phasellus felis. Aenean nunc urna, sollicitudin tristique, volutpat quis,
38 mattis eget, sem.""",
39
40 u"""Morbi lacinia sodales quam. Maecenas nunc. Phasellus mollis nibh sit amet
41 lacus. Etiam pharetra. Vivamus diam ipsum, luctus et, luctus nec, auctor vel,
42 tellus. Vestibulum lobortis feugiat dolor. Phasellus diam felis, commodo vitae,
43 laoreet ac, euismod sit amet, nunc. Vestibulum ut metus. Praesent vel nibh ac
44 libero convallis imperdiet. Morbi dignissim. Donec id purus at lorem lobortis
45 pretium. Integer massa justo, auctor quis, condimentum vel, feugiat sit amet,
46 arcu. Nunc lacinia, lectus eget accumsan imperdiet, nunc augue condimentum mi,
47 in varius ante mi at justo. Sed mauris turpis, porta eget, mollis eu, tempor
48 sollicitudin, tellus. Sed laoreet aliquet leo. In sapien est, bibendum non,
49 tempor vel, iaculis at, leo.""",
50
51 u"""Integer ligula massa, gravida vel, suscipit eget, pulvinar a, eros. Fusce
52 vestibulum risus sed massa. Cras dictum eleifend justo. Sed et metus vel neque
53 faucibus pulvinar. Vivamus tellus mi, rhoncus ut, venenatis eget, sollicitudin
54 at, diam. Sed sit amet lacus nonummy metus sollicitudin cursus. Fusce a velit.
55 Etiam eu quam. Pellentesque vulputate pede eget velit. Donec augue lorem,
56 elementum sed, ornare vitae, ullamcorper sit amet, justo. Maecenas suscipit
57 velit id turpis. Aenean cursus facilisis mi. Donec id ligula at velit fermentum
58 ornare. Nullam nec orci. Curabitur vitae nulla sit amet lacus viverra
59 vestibulum. Lorem ipsum dolor sit amet, consectetuer adipiscing elit.""",
60
61 u"""Mauris ac mi. In tincidunt, sapien id cursus tincidunt, ipsum mauris
62 imperdiet lectus, sed iaculis quam dolor eu metus. Suspendisse mattis. Donec
63 nec augue vitae nulla aliquam commodo. Nulla ornare lorem ut mauris. Curabitur
64 massa. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Ut
65 pellentesque nunc. Aliquam dapibus pretium dui. Proin dictum ligula scelerisque
66 nisi. Suspendisse potenti. Quisque ut velit rhoncus orci placerat suscipit. In
67 tempus, ante vel tempus venenatis, nunc lectus vehicula lectus, vitae vehicula
68 leo lectus ut lacus. Donec dictum, nisi eu fringilla pharetra, erat tellus
69 lobortis sem, vitae consectetuer magna nisl vel sem. Morbi ullamcorper augue
70 sed enim. Fusce rhoncus lacinia turpis. Donec at erat. Nunc vehicula.""",
71
72 u"""Cras at eros. Integer risus. Donec a elit eget nisi auctor malesuada.
73 Integer eu augue. Nam nunc. Nam nec turpis. Suspendisse potenti. Ut interdum
74 nisi vitae diam. Phasellus sed justo vel lorem malesuada elementum. Cras tempor
75 urna vitae metus ultricies facilisis. Aliquam erat volutpat. Nulla
76 facilisi.""",
77
78 u"""Integer id sapien. Quisque non arcu. Fusce metus elit, ultricies ac, gravida
79 tempor, dapibus nec, neque. Aliquam at felis et turpis scelerisque posuere.
80 Maecenas aliquet quam id odio egestas lacinia. Suspendisse tempor quam euismod
81 magna. Ut magna sem, hendrerit sed, sodales vel, convallis in, dolor. Ut
82 molestie ligula eu ligula. Proin quis lacus tincidunt nunc pellentesque
83 sollicitudin. Aenean pellentesque. Nulla facilisi. Ut sed nibh. Nunc felis
84 velit, tincidunt sed, mattis id, pharetra eget, dolor. Cras pulvinar mi in
85 pede.""",
86
87 u"""Vestibulum interdum. Quisque dictum vestibulum purus. Sed sed nisl.
88 Suspendisse potenti. Curabitur in lectus. Nulla et arcu at tellus imperdiet
89 facilisis. Donec hendrerit aliquam quam. Etiam felis libero, porta ut, luctus
90 sit amet, varius nec, ante. Cum sociis natoque penatibus et magnis dis
91 parturient montes, nascetur ridiculus mus. Donec volutpat dolor sed velit. Nunc
92 sed felis quis lectus gravida dignissim. Donec a augue. Nullam in diam quis
93 risus tristique vehicula. Sed accumsan. Proin lacus tortor, tincidunt eget,
94 ornare id, interdum eu, enim. Duis eu orci nec elit consequat imperdiet. Cum
95 sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus
96 mus. Vestibulum magna eros, ultrices et, dictum eget, rhoncus in, libero. Ut
97 eget nunc. Donec et lorem.""",
98
99 u"""Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere
100 cubilia Curae; Quisque posuere dui at tellus. Nam sodales condimentum velit.
101 Mauris pulvinar leo. Etiam eu dui. Mauris aliquam dignissim mi. Fusce venenatis
102 urna vel nunc. Praesent imperdiet dolor id metus. Sed ut magna vel turpis
103 dictum elementum. Fusce nunc dolor, lacinia ut, dignissim quis, gravida
104 accumsan, purus. In dictum augue. Ut non eros id nisl mollis pretium.""",
105
106 u"""Nunc ultricies neque tempor nisi. Etiam congue lectus ac felis. Nam ut dolor
107 placerat nisi venenatis dictum. Morbi quis turpis in massa vestibulum
108 consectetuer. Nulla facilisi. Maecenas rhoncus, dolor at sodales pretium, dui
109 justo dictum nunc, vel condimentum augue nisi a sapien. Sed tincidunt dictum
110 elit. Aliquam quam pede, semper vitae, porttitor quis, hendrerit ac, nulla.
111 Nulla porta diam. In lorem urna, ultricies vel, porttitor et, ultricies mattis,
112 risus. Sed lobortis magna ut lorem. Donec a mi. Duis pretium est dignissim
113 lorem. Nunc gravida vulputate pede. Ut rutrum adipiscing sem. Praesent sed erat
114 in tellus commodo volutpat. Curabitur volutpat nisi eget nunc. Proin enim.
115 Morbi facilisis ante quis purus.""",
116
117 u"""Quisque rutrum risus vel est. Morbi ac mi in augue lacinia luctus. Phasellus
118 eros dui, ornare at, accumsan et, commodo quis, diam. Curabitur dolor risus,
119 auctor et, auctor sed, lacinia sed, tellus. Nullam lacinia pharetra dui. Donec
120 eu arcu. Sed adipiscing nisi ut dui blandit eleifend. Duis vel sapien sed felis
121 lacinia sodales. Donec consequat risus vel quam. Nulla facilisi. Praesent
122 ornare est at libero. Aliquam risus elit, dignissim vehicula, faucibus a,
123 accumsan sed, nisi. Etiam nibh. Nullam adipiscing mauris non augue. Vestibulum
124 ipsum mauris, cursus id, ornare in, molestie non, diam. Curabitur sed quam.
125 Proin ut libero. Aenean hendrerit est nec felis.""",
126
127 u"""Morbi lobortis, urna ut gravida dictum, nisl diam posuere augue, non
128 suscipit mi turpis id dolor. Phasellus fringilla, augue et imperdiet hendrerit,
129 justo tortor tincidunt lectus, in gravida enim elit eu nisl. Suspendisse dictum
130 tellus placerat arcu. Aliquam faucibus massa vitae pede. Curabitur sapien
131 libero, sodales sit amet, euismod sit amet, ultricies sed, leo. Vivamus cursus
132 congue arcu. Aliquam erat volutpat. Sed arcu velit, tempor at, posuere in,
133 dignissim nec, urna. Etiam mollis bibendum orci. Vestibulum augue metus,
134 interdum ut, imperdiet ac, rutrum vitae, lorem. Nam viverra. Vivamus neque.
135 Maecenas aliquam fermentum elit. Vestibulum a tellus. Etiam eget nibh sed arcu
136 convallis luctus. Nullam suscipit. Suspendisse congue. Etiam luctus
137 consectetuer tellus. Etiam purus magna, egestas id, pharetra id, ullamcorper
138 quis, erat.""",
139
140 u"""Morbi quis tortor a libero tempus pellentesque. Maecenas eu pede vel purus
141 varius sollicitudin. Nulla suscipit est at turpis. Sed pede. Pellentesque
142 lectus lectus, sodales nec, ultrices non, adipiscing vel, orci. Donec fermentum
143 convallis lacus. Donec iaculis risus ultrices arcu. Aliquam urna orci, viverra
144 sit amet, dictum eu, facilisis at, dui. Proin quis augue. Cras nulla mauris,
145 dapibus eu, sagittis sed, ultricies non, est. Suspendisse consectetuer. Sed
146 velit. Nunc lorem tortor, vestibulum vel, aliquet vel, condimentum vitae, elit.
147 Sed sit amet pede non libero lobortis tempor. Mauris magna.""",
148
149 u"""Proin velit. Aliquam erat volutpat. In ornare. Ut mi. Proin sit amet pede
150 tempus nulla dapibus iaculis. Nulla tincidunt. Etiam sagittis imperdiet mi.
151 Phasellus elit tellus, mollis sed, mattis at, facilisis et, nulla. Vestibulum
152 congue fringilla tortor. Ut justo arcu, varius a, vehicula id, mollis sed,
153 justo. In vehicula, metus ac scelerisque pharetra, eros arcu viverra purus, sit
154 amet molestie lorem diam a magna. Aenean at sapien. Quisque hendrerit. Sed arcu
155 est, posuere quis, hendrerit ac, pretium non, pede. Cras accumsan lectus sed
156 nisl. Integer massa ante, dictum aliquet, ultricies sit amet, ornare vitae,
157 orci. Nullam interdum blandit ante. Vestibulum leo. Integer sit amet sem.""",
158
159 u"""Ut mi tellus, scelerisque id, laoreet eget, interdum sit amet, justo. Etiam
160 urna. Integer non erat a dui ullamcorper imperdiet. Fusce et tellus ut pede
161 mattis laoreet. Suspendisse aliquam feugiat nulla. Maecenas in diam eget neque
162 lobortis ultrices. Morbi in libero nec sem vehicula imperdiet. Mauris sapien
163 ante, malesuada sit amet, rutrum sed, consequat iaculis, massa. Donec ac velit.
164 In volutpat odio at justo. Maecenas id lectus. Ut porta. Suspendisse purus.
165 Proin imperdiet turpis et nibh. Nulla facilisi. Quisque imperdiet est id erat
166 tempor tincidunt. Phasellus lacinia elit nec turpis.""",
167
168 u"""Nulla elit erat, fermentum ut, tempor nec, varius quis, quam. Lorem ipsum
169 dolor sit amet, consectetuer adipiscing elit. Pellentesque auctor magna vitae
170 erat. Vivamus sodales. Praesent felis sapien, hendrerit quis, pharetra sit
171 amet, congue in, lacus. Fusce viverra. Duis venenatis leo at erat. Vivamus eu
172 ante. Nulla a felis. Sed lacinia nonummy tortor. Proin justo arcu, vulputate
173 id, gravida iaculis, posuere id, pede. Integer tristique. Etiam varius, nisi
174 vitae varius aliquet, pede diam feugiat metus, non nonummy ipsum nulla sed
175 urna. Nullam eu quam. Phasellus vestibulum.""",
176
177 u"""Nullam posuere pretium augue. Nulla sed lacus sed nunc mollis imperdiet.
178 Donec nibh metus, placerat ac, consectetuer quis, tincidunt id, erat.
179 Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere
180 cubilia Curae; Nunc feugiat tristique sem. Aenean eros. Donec venenatis. Nulla
181 sed nibh in orci bibendum condimentum. Donec sed sapien sed quam pulvinar
182 convallis. Sed rutrum laoreet turpis. Etiam adipiscing lectus sit amet odio.
183 Mauris eget dolor. Sed aliquet gravida mauris.""",
184
185 u"""Phasellus ultrices augue. Aenean eu pede at risus rutrum sodales. Morbi erat
186 ipsum, ornare ac, dapibus vel, viverra quis, est. Duis in libero ac turpis
187 nonummy sodales. Ut sit amet magna. Phasellus vitae est. Morbi molestie, tortor
188 eget lobortis egestas, neque justo aliquet arcu, in posuere libero urna eu
189 arcu. Vestibulum sit amet est tristique ligula fringilla dapibus. Vestibulum
190 ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae;
191 Sed in mi. Cras sed odio. Duis ut orci. Etiam mattis pretium risus. Phasellus
192 porttitor orci sit amet augue. Phasellus placerat, mauris quis mattis eleifend,
193 dolor nibh lacinia quam, interdum ornare leo erat ut tellus. Vestibulum ornare
194 congue nibh. Vivamus tincidunt nisi. Donec rutrum dapibus felis.""",
195
196 u"""Donec nisl. Nullam sollicitudin felis vitae tortor. Pellentesque leo diam,
197 facilisis eget, fermentum eu, scelerisque vitae, enim. Proin vestibulum, orci
198 in convallis tempus, turpis mauris condimentum sem, a vestibulum leo dolor
199 vitae eros. Curabitur sagittis. In sed metus. In non nunc eget purus dapibus
200 vehicula. In mattis, mauris vitae dictum fermentum, justo sem aliquam ligula,
201 viverra facilisis nisi pede et mi. Donec dapibus, magna iaculis accumsan
202 vulputate, elit lectus adipiscing nisi, ut adipiscing libero mi id velit. Nunc
203 feugiat metus eu ligula varius fermentum. Morbi lacinia, nulla et luctus
204 auctor, ipsum ligula malesuada sem, eget dignissim augue sem eget augue.""",
205 ]
206
207 documents = dict([(u'mock://%i' % index,
208                   Document(uri=u'mock://%i' % index, content=text,
209                            changed=index))
210                   for index, text in enumerate(corpus)])
211
212 mock_uri_list = [URI(u'mock://%i' % i) for i, doc in enumerate(documents)]
213 mock_uri_list.sort()
214
215 simple_hits = [URI(u'mock://0'), URI(u'mock://1'), URI(u'mock://10'),
216                URI(u'mock://12'), URI(u'mock://13'), URI(u'mock://14'),
217                URI(u'mock://16'), URI(u'mock://3'), URI(u'mock://4'),
218                URI(u'mock://5'), URI(u'mock://6'), URI(u'mock://8')]
219 simple_query = u'lorem'
220
221 and_hits = [URI(u'mock://0'), URI(u'mock://16'), URI(u'mock://3'),
222             URI(u'mock://4'), URI(u'mock://5')]
223 and_query = u'lorem ipsum'
224
225 not_hits = [URI(u'mock://16'), URI(u'mock://3'), URI(u'mock://4')]
226 not_query = u'lorem ipsum -placerat'
Note: See TracBrowser for help on using the browser.