Skip to content

Commit

Permalink
feat(fieldParser): adding parenteses for better joining with other in…
Browse files Browse the repository at this point in the history
…structions
  • Loading branch information
Verissimo Ribeiro committed Oct 16, 2023
1 parent 7fcd52c commit 3cabe72
Show file tree
Hide file tree
Showing 3 changed files with 23 additions and 23 deletions.
2 changes: 1 addition & 1 deletion build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ plugins {
}

group = "io.github.verissimor.lib"
version = System.getenv("RELEASE_VERSION") ?: "1.0.7-SNAPSHOT"
version = System.getenv("RELEASE_VERSION") ?: "1.0.8-SNAPSHOT"

java {
sourceCompatibility = JavaVersion.VERSION_1_8
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -119,8 +119,8 @@ class R2dbcMagicFilter(
}

if (groups.size == 1) {
val startBinder = SqlBinder(startStr, emptyMap())
return startBinder + R2dbcSqlWriter.writeSql(parseFields, tableAlias)
val binder = R2dbcSqlWriter.writeSql(parseFields, tableAlias)
return SqlBinder("$startStr(${binder.sql})", binder.params)
}

// first reduce/fold criteria in the group
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ class R2dbcMagicFilterSqlWriterTest {

val sqlBinder = filter.toSqlBinder(ReactiveUser::class.java, "b")

assertThat(sqlBinder?.sql).isEqualTo(" AND b.name = :name0")
assertThat(sqlBinder?.sql).isEqualTo(" AND (b.name = :name0)")
assertThat(sqlBinder?.params?.get("name0")).isEqualTo("Joe")
}

Expand All @@ -28,7 +28,7 @@ class R2dbcMagicFilterSqlWriterTest {

val sqlBinder = filter.toSqlBinder(ReactiveUser::class.java, "b")

assertThat(sqlBinder?.sql).isEqualTo(" AND b.age > :age0")
assertThat(sqlBinder?.sql).isEqualTo(" AND (b.age > :age0)")
assertThat(sqlBinder?.params?.get("age0")).isEqualTo(BigDecimal(35))
}

Expand All @@ -39,7 +39,7 @@ class R2dbcMagicFilterSqlWriterTest {

val sqlBinder = filter.toSqlBinder(ReactiveUser::class.java, "b")

assertThat(sqlBinder?.sql).isEqualTo(" AND b.age >= :age0")
assertThat(sqlBinder?.sql).isEqualTo(" AND (b.age >= :age0)")
assertThat(sqlBinder?.params?.get("age0")).isEqualTo(BigDecimal(35))
}

Expand All @@ -50,7 +50,7 @@ class R2dbcMagicFilterSqlWriterTest {

val sqlBinder = filter.toSqlBinder(ReactiveUser::class.java, "b")

assertThat(sqlBinder?.sql).isEqualTo(" AND b.age < :age0")
assertThat(sqlBinder?.sql).isEqualTo(" AND (b.age < :age0)")
assertThat(sqlBinder?.params?.get("age0")).isEqualTo(BigDecimal(40))
}

Expand All @@ -61,7 +61,7 @@ class R2dbcMagicFilterSqlWriterTest {

val sqlBinder = filter.toSqlBinder(ReactiveUser::class.java, "b")

assertThat(sqlBinder?.sql).isEqualTo(" AND b.age <= :age0")
assertThat(sqlBinder?.sql).isEqualTo(" AND (b.age <= :age0)")
assertThat(sqlBinder?.params?.get("age0")).isEqualTo(BigDecimal(40))
}

Expand All @@ -72,7 +72,7 @@ class R2dbcMagicFilterSqlWriterTest {

val sqlBinder = filter.toSqlBinder(ReactiveUser::class.java, "b")

assertThat(sqlBinder?.sql).isEqualTo(" AND b.name LIKE :name0")
assertThat(sqlBinder?.sql).isEqualTo(" AND (b.name LIKE :name0)")
assertThat(sqlBinder?.params?.get("name0")).isEqualTo("John")
}

Expand All @@ -83,7 +83,7 @@ class R2dbcMagicFilterSqlWriterTest {

val sqlBinder = filter.toSqlBinder(ReactiveUser::class.java, "b")

assertThat(sqlBinder?.sql).isEqualTo(" AND b.name LIKE :name0")
assertThat(sqlBinder?.sql).isEqualTo(" AND (b.name LIKE :name0)")
assertThat(sqlBinder?.params?.get("name0")).isEqualTo("Doe")
}

Expand All @@ -94,7 +94,7 @@ class R2dbcMagicFilterSqlWriterTest {

val sqlBinder = filter.toSqlBinder(ReactiveUser::class.java, "b")

assertThat(sqlBinder?.sql).isEqualTo(" AND b.name NOT LIKE :name0")
assertThat(sqlBinder?.sql).isEqualTo(" AND (b.name NOT LIKE :name0)")
assertThat(sqlBinder?.params?.get("name0")).isEqualTo("Smith")
}

Expand All @@ -105,7 +105,7 @@ class R2dbcMagicFilterSqlWriterTest {

val sqlBinder = filter.toSqlBinder(ReactiveUser::class.java, "b")

assertThat(sqlBinder?.sql).isEqualTo(" AND b.name NOT LIKE :name0")
assertThat(sqlBinder?.sql).isEqualTo(" AND (b.name NOT LIKE :name0)")
assertThat(sqlBinder?.params?.get("name0")).isEqualTo("Johnson")
}

Expand All @@ -116,7 +116,7 @@ class R2dbcMagicFilterSqlWriterTest {

val sqlBinder = filter.toSqlBinder(ReactiveUser::class.java, "b")

assertThat(sqlBinder?.sql).isEqualTo(" AND b.age IN (:age0)")
assertThat(sqlBinder?.sql).isEqualTo(" AND (b.age IN (:age0))")
assertThat(sqlBinder?.params?.get("age0")).isEqualTo(listOf(30, 35, 40).map { it.toBigDecimal() })
}

Expand All @@ -127,7 +127,7 @@ class R2dbcMagicFilterSqlWriterTest {

val sqlBinder = filter.toSqlBinder(ReactiveUser::class.java, "b")

assertThat(sqlBinder?.sql).isEqualTo(" AND b.age NOT IN (:age0)")
assertThat(sqlBinder?.sql).isEqualTo(" AND (b.age NOT IN (:age0))")
assertThat(sqlBinder?.params?.get("age0")).isEqualTo(listOf(25, 50).map { it.toBigDecimal() })
}

Expand All @@ -138,7 +138,7 @@ class R2dbcMagicFilterSqlWriterTest {

val sqlBinder = filter.toSqlBinder(ReactiveUser::class.java, "b")

assertThat(sqlBinder?.sql).isEqualTo(" AND b.name IS NULL")
assertThat(sqlBinder?.sql).isEqualTo(" AND (b.name IS NULL)")
assertThat(sqlBinder?.params).isEmpty()
}

Expand All @@ -149,7 +149,7 @@ class R2dbcMagicFilterSqlWriterTest {

val sqlBinder = filter.toSqlBinder(ReactiveUser::class.java, "b")

assertThat(sqlBinder?.sql).isEqualTo(" AND b.name IS NOT NULL")
assertThat(sqlBinder?.sql).isEqualTo(" AND (b.name IS NOT NULL)")
assertThat(sqlBinder?.params).isEmpty()
}

Expand All @@ -160,7 +160,7 @@ class R2dbcMagicFilterSqlWriterTest {

val sqlBinder = filter.toSqlBinder(ReactiveUser::class.java, "b")

assertThat(sqlBinder!!.sql).isEqualTo(" AND b.age BETWEEN :age0a AND :age0b")
assertThat(sqlBinder!!.sql).isEqualTo(" AND (b.age BETWEEN :age0a AND :age0b)")
assertThat(sqlBinder.params["age0a"]).isEqualTo(BigDecimal(19))
assertThat(sqlBinder.params["age0b"]).isEqualTo(BigDecimal(35))
}
Expand All @@ -172,7 +172,7 @@ class R2dbcMagicFilterSqlWriterTest {

val sqlBinder = filter.toSqlBinder(ReactiveUser::class.java, "b")

assertThat(sqlBinder?.sql).isEqualTo(" AND b.age <> :age0")
assertThat(sqlBinder?.sql).isEqualTo(" AND (b.age <> :age0)")
assertThat(sqlBinder?.params?.get("age0")).isEqualTo(BigDecimal(25))
}

Expand All @@ -183,7 +183,7 @@ class R2dbcMagicFilterSqlWriterTest {

val sqlBinder = filter.toSqlBinder(ReactiveUser::class.java, "b")

assertThat(sqlBinder?.sql).isEqualTo(" AND b.created_date = :createdDate0")
assertThat(sqlBinder?.sql).isEqualTo(" AND (b.created_date = :createdDate0)")
assertThat(sqlBinder?.params?.get("createdDate0")).isEqualTo(LocalDate.parse("2022-12-31"))
}

Expand All @@ -195,7 +195,7 @@ class R2dbcMagicFilterSqlWriterTest {

val sqlBinder = filter.toSqlBinder(ReactiveUser::class.java, "b")

assertThat(sqlBinder?.sql).isEqualTo(" AND b.created_at = :createdAt0")
assertThat(sqlBinder?.sql).isEqualTo(" AND (b.created_at = :createdAt0)")
assertThat(sqlBinder?.params?.get("createdAt0")).isEqualTo(Instant.parse(now))
}

Expand All @@ -206,7 +206,7 @@ class R2dbcMagicFilterSqlWriterTest {

val sqlBinder = filter.toSqlBinder(ReactiveUser::class.java, "b")

assertThat(sqlBinder?.sql).isEqualTo(" AND b.enabled = :enabled0")
assertThat(sqlBinder?.sql).isEqualTo(" AND (b.enabled = :enabled0)")
assertThat(sqlBinder?.params?.get("enabled0")).isEqualTo(false)
}

Expand All @@ -217,7 +217,7 @@ class R2dbcMagicFilterSqlWriterTest {

val sqlBinder = filter.toSqlBinder(ReactiveUser::class.java, "b")

assertThat(sqlBinder?.sql).isEqualTo(" AND b.name = :name0 AND b.age > :age1")
assertThat(sqlBinder?.sql).isEqualTo(" AND (b.name = :name0 AND b.age > :age1)")
assertThat(sqlBinder?.params?.get("name0")).isEqualTo("Joe")
assertThat(sqlBinder?.params?.get("age1")).isEqualTo(BigDecimal(35))
}
Expand All @@ -229,7 +229,7 @@ class R2dbcMagicFilterSqlWriterTest {

val sqlBinder = filter.toSqlBinder(ReactiveUser::class.java, "b")

assertThat(sqlBinder?.sql).isEqualTo(" AND b.name = :name0 OR b.age > :age1")
assertThat(sqlBinder?.sql).isEqualTo(" AND (b.name = :name0 OR b.age > :age1)")
assertThat(sqlBinder?.params?.get("name0")).isEqualTo("Joe")
assertThat(sqlBinder?.params?.get("age1")).isEqualTo(BigDecimal(35))
}
Expand Down

0 comments on commit 3cabe72

Please sign in to comment.