DATAMONGO-1748 - Tweaked Kotlin extensions to add Collection variant of Criteria.inValues(…) alias.
Original pull request: #489.
This commit is contained in:
committed by
Oliver Gierke
parent
8f8d792b61
commit
427d4f5bd5
@@ -23,6 +23,14 @@ package org.springframework.data.mongodb.core.query
|
||||
*/
|
||||
fun Criteria.isEqualTo(o: Any?) : Criteria = `is`(o)
|
||||
|
||||
/**
|
||||
* Extension for [Criteria.in] providing an `inValues` alias since `in` is a reserved keyword in Kotlin.
|
||||
*
|
||||
* @author Sebastien Deleuze
|
||||
* @since 2.0
|
||||
*/
|
||||
fun <T: Any?> Criteria.inValues(c: Collection<T>) : Criteria = `in`(c)
|
||||
|
||||
/**
|
||||
* Extension for [Criteria.in] providing an `inValues` alias since `in` is a reserved keyword in Kotlin.
|
||||
*
|
||||
|
||||
@@ -50,7 +50,7 @@ class CriteriaExtensionsTests {
|
||||
}
|
||||
|
||||
@Test
|
||||
fun `inValues() extension should call its Java counterpart`() {
|
||||
fun `inValues(varags) extension should call its Java counterpart`() {
|
||||
|
||||
val foo = "foo"
|
||||
val bar = "bar"
|
||||
@@ -61,10 +61,30 @@ class CriteriaExtensionsTests {
|
||||
}
|
||||
|
||||
@Test
|
||||
fun `inValues() extension should support nullable values`() {
|
||||
fun `inValues(varags) extension should support nullable values`() {
|
||||
|
||||
criteria.inValues(null, null)
|
||||
|
||||
Mockito.verify(criteria, Mockito.times(1)).`in`(null, null)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun `inValues(Collection) extension should call its Java counterpart`() {
|
||||
|
||||
val c = listOf("foo", "bar")
|
||||
|
||||
criteria.inValues(c)
|
||||
|
||||
Mockito.verify(criteria, Mockito.times(1)).`in`(c)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun `inValues(Collection) extension should support nullable values`() {
|
||||
|
||||
val c = listOf("foo", null, "bar")
|
||||
|
||||
criteria.inValues(c)
|
||||
|
||||
Mockito.verify(criteria, Mockito.times(1)).`in`(c)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user