PyLucene 3.4.0-1 import
[pylucene.git] / test / test_RewriteQuery.py
1 # ====================================================================
2 #   Licensed under the Apache License, Version 2.0 (the "License");
3 #   you may not use this file except in compliance with the License.
4 #   You may obtain a copy of the License at
5 #
6 #       http://www.apache.org/licenses/LICENSE-2.0
7 #
8 #   Unless required by applicable law or agreed to in writing, software
9 #   distributed under the License is distributed on an "AS IS" BASIS,
10 #   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 #   See the License for the specific language governing permissions and
12 #   limitations under the License.
13 # ====================================================================
14
15 import sys, unittest
16 from lucene import *
17
18
19 # Originally intended to demonstrate a memory leak.  See
20 # http://lists.osafoundation.org/pipermail/pylucene-dev/2008-October/002937.html
21 # and followup
22
23 class QueryRewriteTest(unittest.TestCase):
24
25     def setUp(self):
26
27         store = RAMDirectory()
28         writer = IndexWriter(store, StandardAnalyzer(Version.LUCENE_CURRENT),
29                              True, IndexWriter.MaxFieldLength.LIMITED)
30         writer.close()
31         self.reader = IndexSearcher(store, True).getIndexReader()
32         self.term = Term('all', 'foo')
33         
34     def testQuery(self):
35
36         base_query = TermQuery(self.term)
37         new_query = base_query.rewrite(self.reader)
38
39         self.assertEquals(base_query, new_query)
40     
41
42 if __name__ == "__main__":
43     env = initVM()
44     if '-loop' in sys.argv:
45         sys.argv.remove('-loop')
46         while True:
47             try:
48                 unittest.main()
49             except:
50                 pass
51     else:
52         unittest.main()