improve-tests #28

Merged
flecomte merged 28 commits from improve-tests into master 2021-07-20 02:24:22 +02:00
5 changed files with 23 additions and 23 deletions
Showing only changes of commit eb3a732440 - Show all commits

View File

@@ -49,7 +49,7 @@ class Connection(
fun <A> inTransaction(f: (Connection) -> CompletableFuture<A>) = connect().inTransaction(f) fun <A> inTransaction(f: (Connection) -> CompletableFuture<A>) = connect().inTransaction(f)
override fun <R : EntityI> select( override fun <R : EntityI> selectOne(
sql: String, sql: String,
typeReference: TypeReference<R>, typeReference: TypeReference<R>,
values: List<Any?>, values: List<Any?>,
@@ -71,16 +71,16 @@ class Connection(
values: List<Any?> = emptyList(), values: List<Any?> = emptyList(),
noinline block: SelectOneCallback<R> = {} noinline block: SelectOneCallback<R> = {}
): R? = ): R? =
select(sql, object : TypeReference<R>() {}, values, block) selectOne(sql, object : TypeReference<R>() {}, values, block)
override fun <R : EntityI> select( override fun <R : EntityI> selectOne(
sql: String, sql: String,
typeReference: TypeReference<R>, typeReference: TypeReference<R>,
values: Map<String, Any?>, values: Map<String, Any?>,
block: (QueryResult, R?) -> Unit block: (QueryResult, R?) -> Unit
): R? { ): R? {
return replaceArgs(sql, values) { return replaceArgs(sql, values) {
select(this.sql, typeReference, this.parameters, block) selectOne(this.sql, typeReference, parameters, block)
} }
} }
@@ -89,7 +89,7 @@ class Connection(
values: Map<String, Any?>, values: Map<String, Any?>,
noinline block: SelectOneCallback<R> = {} noinline block: SelectOneCallback<R> = {}
): R? = ): R? =
select(sql, object : TypeReference<R>() {}, values, block) selectOne(sql, object : TypeReference<R>() {}, values, block)
override fun <R : EntityI> select( override fun <R : EntityI> select(
sql: String, sql: String,

View File

@@ -13,13 +13,13 @@ sealed interface EmbedExecutable {
/** /**
* Select One entity with list of parameters * Select One entity with list of parameters
*/ */
fun <R : EntityI> select( fun <R : EntityI> selectOne(
typeReference: TypeReference<R>, typeReference: TypeReference<R>,
values: List<Any?> = emptyList(), values: List<Any?> = emptyList(),
block: SelectOneCallback<R> = {} block: SelectOneCallback<R> = {}
): R? ): R?
fun <R : EntityI> select( fun <R : EntityI> selectOne(
typeReference: TypeReference<R>, typeReference: TypeReference<R>,
values: Map<String, Any?>, values: Map<String, Any?>,
block: SelectOneCallback<R> = {} block: SelectOneCallback<R> = {}

View File

@@ -7,21 +7,21 @@ import fr.postgresjson.entity.EntityI
interface Executable { interface Executable {
/* Select One */ /* Select One */
fun <R : EntityI> select( fun <R : EntityI> selectOne(
sql: String, sql: String,
typeReference: TypeReference<R>, typeReference: TypeReference<R>,
values: List<Any?> = emptyList(), values: List<Any?> = emptyList(),
block: SelectOneCallback<R> = {} block: SelectOneCallback<R> = {}
): R? ): R?
fun <R : EntityI> select( fun <R : EntityI> selectOne(
sql: String, sql: String,
typeReference: TypeReference<R>, typeReference: TypeReference<R>,
values: Map<String, Any?>, values: Map<String, Any?>,
block: SelectOneCallback<R> = {} block: SelectOneCallback<R> = {}
): R? ): R?
/* Select Miltiples */ /* Select Multiples */
fun <R : EntityI> select( fun <R : EntityI> select(
sql: String, sql: String,

View File

@@ -17,7 +17,7 @@ class Function(val definition: Function, override val connection: Connection) :
/** /**
* Select One entity with list of parameters * Select One entity with list of parameters
*/ */
override fun <R : EntityI> select( override fun <R : EntityI> selectOne(
typeReference: TypeReference<R>, typeReference: TypeReference<R>,
values: List<Any?>, values: List<Any?>,
block: (QueryResult, R?) -> Unit block: (QueryResult, R?) -> Unit
@@ -25,25 +25,25 @@ class Function(val definition: Function, override val connection: Connection) :
val args = compileArgs(values) val args = compileArgs(values)
val sql = "SELECT * FROM ${definition.name} ($args)" val sql = "SELECT * FROM ${definition.name} ($args)"
return connection.select(sql, typeReference, values, block) return connection.selectOne(sql, typeReference, values, block)
} }
inline fun <reified R : EntityI> selectOne( inline fun <reified R : EntityI> selectOne(
values: List<Any?> = emptyList(), values: List<Any?> = emptyList(),
noinline block: SelectOneCallback<R> = {} noinline block: SelectOneCallback<R> = {}
): R? = ): R? =
select(object : TypeReference<R>() {}, values, block) selectOne(object : TypeReference<R>() {}, values, block)
inline fun <reified R : EntityI> selectOne( inline fun <reified R : EntityI> selectOne(
value: R, value: R,
noinline block: SelectOneCallback<R> = {} noinline block: SelectOneCallback<R> = {}
): R? = ): R? =
select(object : TypeReference<R>() {}, listOf(value), block) selectOne(object : TypeReference<R>() {}, listOf(value), block)
/** /**
* Select One entity with named parameters * Select One entity with named parameters
*/ */
override fun <R : EntityI> select( override fun <R : EntityI> selectOne(
typeReference: TypeReference<R>, typeReference: TypeReference<R>,
values: Map<String, Any?>, values: Map<String, Any?>,
block: (QueryResult, R?) -> Unit block: (QueryResult, R?) -> Unit
@@ -51,14 +51,14 @@ class Function(val definition: Function, override val connection: Connection) :
val args = compileArgs(values) val args = compileArgs(values)
val sql = "SELECT * FROM ${definition.name} ($args)" val sql = "SELECT * FROM ${definition.name} ($args)"
return connection.select(sql, typeReference, values, block) return connection.selectOne(sql, typeReference, values, block)
} }
inline fun <reified R : EntityI> selectOne( inline fun <reified R : EntityI> selectOne(
values: Map<String, Any?>, values: Map<String, Any?>,
noinline block: SelectOneCallback<R> = {} noinline block: SelectOneCallback<R> = {}
): R? = ): R? =
select(object : TypeReference<R>() {}, values, block) selectOne(object : TypeReference<R>() {}, values, block)
inline fun <reified R : EntityI> selectOne( inline fun <reified R : EntityI> selectOne(
vararg values: Pair<String, Any?>, vararg values: Pair<String, Any?>,

View File

@@ -11,33 +11,33 @@ class Query(override val name: String, private val sql: String, override val con
/* Select One */ /* Select One */
override fun <R : EntityI> select( override fun <R : EntityI> selectOne(
typeReference: TypeReference<R>, typeReference: TypeReference<R>,
values: List<Any?>, values: List<Any?>,
block: (QueryResult, R?) -> Unit block: (QueryResult, R?) -> Unit
): R? { ): R? {
return connection.select(this.toString(), typeReference, values, block) return connection.selectOne(this.toString(), typeReference, values, block)
} }
inline fun <reified R : EntityI> selectOne( inline fun <reified R : EntityI> selectOne(
values: List<Any?> = emptyList(), values: List<Any?> = emptyList(),
noinline block: SelectOneCallback<R> = {} noinline block: SelectOneCallback<R> = {}
): R? = ): R? =
select(object : TypeReference<R>() {}, values, block) selectOne(object : TypeReference<R>() {}, values, block)
override fun <R : EntityI> select( override fun <R : EntityI> selectOne(
typeReference: TypeReference<R>, typeReference: TypeReference<R>,
values: Map<String, Any?>, values: Map<String, Any?>,
block: (QueryResult, R?) -> Unit block: (QueryResult, R?) -> Unit
): R? { ): R? {
return connection.select(this.toString(), typeReference, values, block) return connection.selectOne(this.toString(), typeReference, values, block)
} }
inline fun <reified R : EntityI> selectOne( inline fun <reified R : EntityI> selectOne(
values: Map<String, Any?>, values: Map<String, Any?>,
noinline block: SelectOneCallback<R> = {} noinline block: SelectOneCallback<R> = {}
): R? = ): R? =
select(object : TypeReference<R>() {}, values, block) selectOne(object : TypeReference<R>() {}, values, block)
/* Select Multiples */ /* Select Multiples */