Changeset View
Changeset View
Standalone View
Standalone View
autotests/unit/engine/queryparsertest.cpp
Show All 29 Lines | |||||
30 | { | 30 | { | ||
31 | Q_OBJECT | 31 | Q_OBJECT | ||
32 | 32 | | |||
33 | private Q_SLOTS: | 33 | private Q_SLOTS: | ||
34 | void testSinglePrefixWord(); | 34 | void testSinglePrefixWord(); | ||
35 | void testSimpleQuery(); | 35 | void testSimpleQuery(); | ||
36 | void testPhraseSearch(); | 36 | void testPhraseSearch(); | ||
37 | void testPhraseSearchOnly(); | 37 | void testPhraseSearchOnly(); | ||
38 | void testUnderscorePhrase(); | ||||
38 | void testPhraseSearch_sameLimiter(); | 39 | void testPhraseSearch_sameLimiter(); | ||
39 | void testPhraseSearchEmail(); | 40 | void testPhraseSearchEmail(); | ||
40 | void testAccentSearch(); | 41 | void testAccentSearch(); | ||
41 | void testUnderscoreSplitting(); | 42 | void testUnderscoreSplitting(); | ||
42 | void testAutoExpand(); | 43 | void testAutoExpand(); | ||
43 | void testUnicodeLowering(); | 44 | void testUnicodeLowering(); | ||
44 | }; | 45 | }; | ||
45 | 46 | | |||
▲ Show 20 Lines • Show All 55 Lines • ▼ Show 20 Line(s) | 97 | { | |||
101 | QVector<EngineQuery> queries; | 102 | QVector<EngineQuery> queries; | ||
102 | queries << EngineQuery("opt", 1); | 103 | queries << EngineQuery("opt", 1); | ||
103 | queries << EngineQuery("pro", 2); | 104 | queries << EngineQuery("pro", 2); | ||
104 | 105 | | |||
105 | EngineQuery q(queries, EngineQuery::Phrase); | 106 | EngineQuery q(queries, EngineQuery::Phrase); | ||
106 | QCOMPARE(query, q); | 107 | QCOMPARE(query, q); | ||
107 | } | 108 | } | ||
108 | 109 | | |||
110 | void QueryParserTest::testUnderscorePhrase() | ||||
111 | { | ||||
112 | QueryParser parser; | ||||
113 | | ||||
114 | EngineQuery query = parser.parseQuery("foo_bar.png"); | ||||
115 | | ||||
116 | QVector<EngineQuery> queries; | ||||
117 | queries << EngineQuery("foo", 1); | ||||
118 | queries << EngineQuery("bar", 2); | ||||
119 | queries << EngineQuery("png", 3); | ||||
120 | | ||||
121 | EngineQuery q(queries, EngineQuery::Phrase); | ||||
122 | QCOMPARE(query, q); | ||||
123 | } | ||||
124 | | ||||
109 | void QueryParserTest::testPhraseSearch_sameLimiter() | 125 | void QueryParserTest::testPhraseSearch_sameLimiter() | ||
110 | { | 126 | { | ||
111 | QueryParser parser; | 127 | QueryParser parser; | ||
112 | parser.setAutoExapandSize(1); | 128 | parser.setAutoExapandSize(1); | ||
113 | 129 | | |||
114 | EngineQuery query = parser.parseQuery("The \"song of Ice' and Fire"); | 130 | EngineQuery query = parser.parseQuery("The \"song of Ice' and Fire"); | ||
115 | 131 | | |||
116 | QVector<EngineQuery> queries; | 132 | QVector<EngineQuery> queries; | ||
▲ Show 20 Lines • Show All 41 Lines • ▼ Show 20 Line(s) | |||||
158 | 174 | | |||
159 | void QueryParserTest::testUnderscoreSplitting() | 175 | void QueryParserTest::testUnderscoreSplitting() | ||
160 | { | 176 | { | ||
161 | QueryParser parser; | 177 | QueryParser parser; | ||
162 | 178 | | |||
163 | EngineQuery query = parser.parseQuery("The_Fire"); | 179 | EngineQuery query = parser.parseQuery("The_Fire"); | ||
164 | 180 | | |||
165 | QVector<EngineQuery> queries; | 181 | QVector<EngineQuery> queries; | ||
166 | queries << EngineQuery("the", EngineQuery::StartsWith, 1); | 182 | queries << EngineQuery("the", 1); | ||
167 | queries << EngineQuery("fire", EngineQuery::StartsWith, 2); | 183 | queries << EngineQuery("fire", 2); | ||
168 | 184 | | |||
169 | EngineQuery q(queries, EngineQuery::And); | 185 | EngineQuery q(queries, EngineQuery::Phrase); | ||
170 | 186 | | |||
171 | QCOMPARE(query, q); | 187 | QCOMPARE(query, q); | ||
172 | 188 | | |||
173 | query = parser.parseQuery("_Fire"); | 189 | query = parser.parseQuery("_Fire"); | ||
174 | q = EngineQuery("fire", EngineQuery::StartsWith, 1); | 190 | q = EngineQuery("fire", EngineQuery::StartsWith, 1); | ||
175 | 191 | | |||
176 | QCOMPARE(query, q); | 192 | QCOMPARE(query, q); | ||
177 | } | 193 | } | ||
▲ Show 20 Lines • Show All 58 Lines • Show Last 20 Lines |