Skip to content

Commit 20f1a47

Browse files
committed
test: added OR and AND with negation test for lucene query
1 parent fe480df commit 20f1a47

File tree

1 file changed

+14
-0
lines changed

1 file changed

+14
-0
lines changed

src/test/scala/dev/mongocamp/driver/mongodb/lucene/LuceneSearchSuite.scala

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -145,4 +145,18 @@ class LuceneSearchSuite extends BasePersonSuite {
145145
assertEquals("{\"$and\": [{\"$nor\": [{\"fieldName\": {\"$eq\": \"value1\"}}, {\"fieldName\": {\"$eq\": \"value2\"}}, {\"fieldName\": {\"$eq\": \"value2\"}}]}]}", document2.asInstanceOf[Document].toJson())
146146
}
147147

148+
test("search for values with or") {
149+
val luceneQueryNegateWithAnd = LuceneQueryConverter.parse("-name:\"Latasha Mcmillan\" AND -name:\"Diaz Jacobs\"", "ube")
150+
val searchNegateWithAnd = PersonDAO.find(LuceneQueryConverter.toDocument(luceneQueryNegateWithAnd), sortByBalance).resultList()
151+
assertEquals(searchNegateWithAnd.size, 198)
152+
153+
val luceneQueryNegateWithOr = LuceneQueryConverter.parse("-name:(\"Latasha Mcmillan\" OR \"Diaz Jacobs\")", "ube")
154+
val searchNegateWithOr = PersonDAO.find(LuceneQueryConverter.toDocument(luceneQueryNegateWithOr), sortByBalance).resultList()
155+
assertEquals(searchNegateWithOr.size, 198)
156+
157+
val luceneQueryWithOr = LuceneQueryConverter.parse("name:(\"Latasha Mcmillan\" OR \"Diaz Jacobs\")", "ube")
158+
val searchWithOr = PersonDAO.find(LuceneQueryConverter.toDocument(luceneQueryWithOr), sortByBalance).resultList()
159+
assertEquals(searchWithOr.size, 2)
160+
}
161+
148162
}

0 commit comments

Comments
 (0)