@@ -1207,7 +1207,7 @@ class SQLQuerySpec extends AnyFlatSpec with Matchers {
12071207 | "field": "createdAt",
12081208 | "script": {
12091209 | "lang": "painless",
1210- | "source": "def param1 = (!doc.containsKey('createdAt') || doc['createdAt'].empty ? null : doc['createdAt'].value); (param1 == null) ? null : LocalDate.parse(param1, DateTimeFormatter.ofPattern(' yyyy-MM-dd' ))"
1210+ | "source": "def param1 = (!doc.containsKey('createdAt') || doc['createdAt'].empty ? null : doc['createdAt'].value); (param1 == null) ? null : LocalDate.parse(param1, DateTimeFormatter.ofPattern(\" yyyy-MM-dd\" ))"
12111211 | }
12121212 | }
12131213 | }
@@ -1258,49 +1258,49 @@ class SQLQuerySpec extends AnyFlatSpec with Matchers {
12581258 | "y": {
12591259 | "script": {
12601260 | "lang": "painless",
1261- | "source": "def param1 = (!doc.containsKey('lastUpdated') || doc['lastUpdated'].empty ? null : doc['lastUpdated'].value.withDayOfYear(1).truncatedTo(ChronoUnit.DAYS)); def param2 = DateTimeFormatter.ofPattern(' yyyy-MM-dd' ); (param1 == null) ? null : param2.format(param1)"
1261+ | "source": "def param1 = (!doc.containsKey('lastUpdated') || doc['lastUpdated'].empty ? null : doc['lastUpdated'].value.withDayOfYear(1).truncatedTo(ChronoUnit.DAYS)); def param2 = DateTimeFormatter.ofPattern(\" yyyy-MM-dd\" ); (param1 == null) ? null : param2.format(param1)"
12621262 | }
12631263 | },
12641264 | "q": {
12651265 | "script": {
12661266 | "lang": "painless",
1267- | "source": "def param1 = (!doc.containsKey('lastUpdated') || doc['lastUpdated'].empty ? null : doc['lastUpdated'].value); def param2 = param1 != null ? param1.withMonth((((param1.getMonthValue() - 1) / 3) * 3) + 1).withDayOfMonth(1).truncatedTo(ChronoUnit.DAYS) : null; def param3 = DateTimeFormatter.ofPattern(' yyyy-MM-dd' ); (param1 == null) ? null : param3.format(param2)"
1267+ | "source": "def param1 = (!doc.containsKey('lastUpdated') || doc['lastUpdated'].empty ? null : doc['lastUpdated'].value); def param2 = param1 != null ? param1.withMonth((((param1.getMonthValue() - 1) / 3) * 3) + 1).withDayOfMonth(1).truncatedTo(ChronoUnit.DAYS) : null; def param3 = DateTimeFormatter.ofPattern(\" yyyy-MM-dd\" ); (param1 == null) ? null : param3.format(param2)"
12681268 | }
12691269 | },
12701270 | "m": {
12711271 | "script": {
12721272 | "lang": "painless",
1273- | "source": "def param1 = (!doc.containsKey('lastUpdated') || doc['lastUpdated'].empty ? null : doc['lastUpdated'].value.withDayOfMonth(1).truncatedTo(ChronoUnit.DAYS)); def param2 = DateTimeFormatter.ofPattern(' yyyy-MM-dd' ); (param1 == null) ? null : param2.format(param1)"
1273+ | "source": "def param1 = (!doc.containsKey('lastUpdated') || doc['lastUpdated'].empty ? null : doc['lastUpdated'].value.withDayOfMonth(1).truncatedTo(ChronoUnit.DAYS)); def param2 = DateTimeFormatter.ofPattern(\" yyyy-MM-dd\" ); (param1 == null) ? null : param2.format(param1)"
12741274 | }
12751275 | },
12761276 | "w": {
12771277 | "script": {
12781278 | "lang": "painless",
1279- | "source": "def param1 = (!doc.containsKey('lastUpdated') || doc['lastUpdated'].empty ? null : doc['lastUpdated'].value.with(DayOfWeek.SUNDAY).truncatedTo(ChronoUnit.DAYS)); def param2 = DateTimeFormatter.ofPattern(' yyyy-MM-dd' ); (param1 == null) ? null : param2.format(param1)"
1279+ | "source": "def param1 = (!doc.containsKey('lastUpdated') || doc['lastUpdated'].empty ? null : doc['lastUpdated'].value.with(DayOfWeek.SUNDAY).truncatedTo(ChronoUnit.DAYS)); def param2 = DateTimeFormatter.ofPattern(\" yyyy-MM-dd\" ); (param1 == null) ? null : param2.format(param1)"
12801280 | }
12811281 | },
12821282 | "d": {
12831283 | "script": {
12841284 | "lang": "painless",
1285- | "source": "def param1 = (!doc.containsKey('lastUpdated') || doc['lastUpdated'].empty ? null : doc['lastUpdated'].value.truncatedTo(ChronoUnit.DAYS)); def param2 = DateTimeFormatter.ofPattern(' yyyy-MM-dd' ); (param1 == null) ? null : param2.format(param1)"
1285+ | "source": "def param1 = (!doc.containsKey('lastUpdated') || doc['lastUpdated'].empty ? null : doc['lastUpdated'].value.truncatedTo(ChronoUnit.DAYS)); def param2 = DateTimeFormatter.ofPattern(\" yyyy-MM-dd\" ); (param1 == null) ? null : param2.format(param1)"
12861286 | }
12871287 | },
12881288 | "h": {
12891289 | "script": {
12901290 | "lang": "painless",
1291- | "source": "def param1 = (!doc.containsKey('lastUpdated') || doc['lastUpdated'].empty ? null : doc['lastUpdated'].value.truncatedTo(ChronoUnit.HOURS)); def param2 = DateTimeFormatter.ofPattern(' yyyy-MM-dd' ); (param1 == null) ? null : param2.format(param1)"
1291+ | "source": "def param1 = (!doc.containsKey('lastUpdated') || doc['lastUpdated'].empty ? null : doc['lastUpdated'].value.truncatedTo(ChronoUnit.HOURS)); def param2 = DateTimeFormatter.ofPattern(\" yyyy-MM-dd\" ); (param1 == null) ? null : param2.format(param1)"
12921292 | }
12931293 | },
12941294 | "m2": {
12951295 | "script": {
12961296 | "lang": "painless",
1297- | "source": "def param1 = (!doc.containsKey('lastUpdated') || doc['lastUpdated'].empty ? null : doc['lastUpdated'].value.truncatedTo(ChronoUnit.MINUTES)); def param2 = DateTimeFormatter.ofPattern(' yyyy-MM-dd' ); (param1 == null) ? null : param2.format(param1)"
1297+ | "source": "def param1 = (!doc.containsKey('lastUpdated') || doc['lastUpdated'].empty ? null : doc['lastUpdated'].value.truncatedTo(ChronoUnit.MINUTES)); def param2 = DateTimeFormatter.ofPattern(\" yyyy-MM-dd\" ); (param1 == null) ? null : param2.format(param1)"
12981298 | }
12991299 | },
13001300 | "lastSeen": {
13011301 | "script": {
13021302 | "lang": "painless",
1303- | "source": "def param1 = (!doc.containsKey('lastUpdated') || doc['lastUpdated'].empty ? null : doc['lastUpdated'].value.truncatedTo(ChronoUnit.SECONDS)); def param2 = DateTimeFormatter.ofPattern(' yyyy-MM-dd' ); (param1 == null) ? null : param2.format(param1)"
1303+ | "source": "def param1 = (!doc.containsKey('lastUpdated') || doc['lastUpdated'].empty ? null : doc['lastUpdated'].value.truncatedTo(ChronoUnit.SECONDS)); def param2 = DateTimeFormatter.ofPattern(\" yyyy-MM-dd\" ); (param1 == null) ? null : param2.format(param1)"
13041304 | }
13051305 | }
13061306 | },
@@ -1374,7 +1374,7 @@ class SQLQuerySpec extends AnyFlatSpec with Matchers {
13741374 | "field": "createdAt",
13751375 | "script": {
13761376 | "lang": "painless",
1377- | "source": "def param1 = (!doc.containsKey('createdAt') || doc['createdAt'].empty ? null : doc['createdAt'].value); (param1 == null) ? null : ZonedDateTime.parse(param1, DateTimeFormatter.ofPattern(' yyyy-MM-dd HH:mm:ss.SSS XXX' )).truncatedTo(ChronoUnit.MINUTES).get(ChronoField.YEAR)"
1377+ | "source": "def param1 = (!doc.containsKey('createdAt') || doc['createdAt'].empty ? null : doc['createdAt'].value); (param1 == null) ? null : ZonedDateTime.parse(param1, DateTimeFormatter.ofPattern(\" yyyy-MM-dd HH:mm:ss.SSS XXX\" )).truncatedTo(ChronoUnit.MINUTES).get(ChronoField.YEAR)"
13781378 | }
13791379 | }
13801380 | }
@@ -1426,7 +1426,7 @@ class SQLQuerySpec extends AnyFlatSpec with Matchers {
14261426 | "lastSeen": {
14271427 | "script": {
14281428 | "lang": "painless",
1429- | "source": "def param1 = (!doc.containsKey('lastUpdated') || doc['lastUpdated'].empty ? null : doc['lastUpdated'].value.withDayOfMonth(1).truncatedTo(ChronoUnit.DAYS)); def param2 = DateTimeFormatter.ofPattern(' yyyy-MM-dd HH:mm:ss XXX' ); (param1 == null) ? null : param2.format(param1)"
1429+ | "source": "def param1 = (!doc.containsKey('lastUpdated') || doc['lastUpdated'].empty ? null : doc['lastUpdated'].value.withDayOfMonth(1).truncatedTo(ChronoUnit.DAYS)); def param2 = DateTimeFormatter.ofPattern(\" yyyy-MM-dd HH:mm:ss XXX\" ); (param1 == null) ? null : param2.format(param1)"
14301430 | }
14311431 | }
14321432 | },
@@ -1522,7 +1522,7 @@ class SQLQuerySpec extends AnyFlatSpec with Matchers {
15221522 | "max": {
15231523 | "script": {
15241524 | "lang": "painless",
1525- | "source": "def param1 = (!doc.containsKey('updatedAt') || doc['updatedAt'].empty ? null : doc['updatedAt'].value); def param2 = (!doc.containsKey('createdAt') || doc['createdAt'].empty ? null : doc['createdAt'].value); def param3 = (param2 == null) ? null : ZonedDateTime.parse(param2, DateTimeFormatter.ofPattern(' yyyy-MM-dd HH:mm:ss.SSS XXX' )); (param1 == null || param2 == null) ? null : ChronoUnit.DAYS.between(param1, param3)"
1525+ | "source": "def param1 = (!doc.containsKey('updatedAt') || doc['updatedAt'].empty ? null : doc['updatedAt'].value); def param2 = (!doc.containsKey('createdAt') || doc['createdAt'].empty ? null : doc['createdAt'].value); def param3 = (param2 == null) ? null : ZonedDateTime.parse(param2, DateTimeFormatter.ofPattern(\" yyyy-MM-dd HH:mm:ss.SSS XXX\" )); (param1 == null || param2 == null) ? null : ChronoUnit.DAYS.between(param1, param3)"
15261526 | }
15271527 | }
15281528 | }
@@ -1958,7 +1958,7 @@ class SQLQuerySpec extends AnyFlatSpec with Matchers {
19581958 | "c": {
19591959 | "script": {
19601960 | "lang": "painless",
1961- | "source": "def param1 = (!doc.containsKey('createdAt') || doc['createdAt'].empty ? null : doc['createdAt'].value.toLocalDate()); def param2 = LocalDate.parse(\"2025-09-11\", DateTimeFormatter.ofPattern(' yyyy-MM-dd' )).minus(2, ChronoUnit.DAYS); def param3 = param1 == param2 ? null : param1; def param4 = ZonedDateTime.now(ZoneId.of('Z')).toLocalDate(); param3 != null ? param3 : param4"
1961+ | "source": "def param1 = (!doc.containsKey('createdAt') || doc['createdAt'].empty ? null : doc['createdAt'].value.toLocalDate()); def param2 = LocalDate.parse(\"2025-09-11\", DateTimeFormatter.ofPattern(\" yyyy-MM-dd\" )).minus(2, ChronoUnit.DAYS); def param3 = param1 == param2 ? null : param1; def param4 = ZonedDateTime.now(ZoneId.of('Z')).toLocalDate(); param3 != null ? param3 : param4"
19621962 | }
19631963 | }
19641964 | },
@@ -2016,7 +2016,7 @@ class SQLQuerySpec extends AnyFlatSpec with Matchers {
20162016 | "c": {
20172017 | "script": {
20182018 | "lang": "painless",
2019- | "source": "def param1 = (!doc.containsKey('createdAt') || doc['createdAt'].empty ? null : doc['createdAt'].value.toLocalDate()); def param2 = LocalDate.parse(\"2025-09-11\", DateTimeFormatter.ofPattern(' yyyy-MM-dd' )); def param3 = param1 == param2 ? null : param1; def param4 = ZonedDateTime.now(ZoneId.of('Z')).toLocalDate().minus(2, ChronoUnit.HOURS); try { param3 != null ? param3 : param4 } catch (Exception e) { return null; }"
2019+ | "source": "def param1 = (!doc.containsKey('createdAt') || doc['createdAt'].empty ? null : doc['createdAt'].value.toLocalDate()); def param2 = LocalDate.parse(\"2025-09-11\", DateTimeFormatter.ofPattern(\" yyyy-MM-dd\" )); def param3 = param1 == param2 ? null : param1; def param4 = ZonedDateTime.now(ZoneId.of('Z')).toLocalDate().minus(2, ChronoUnit.HOURS); try { param3 != null ? param3 : param4 } catch (Exception e) { return null; }"
20202020 | }
20212021 | },
20222022 | "c2": {
@@ -2040,7 +2040,7 @@ class SQLQuerySpec extends AnyFlatSpec with Matchers {
20402040 | "c5": {
20412041 | "script": {
20422042 | "lang": "painless",
2043- | "source": "def param1 = LocalDate.parse(\"2025-09-11\", DateTimeFormatter.ofPattern(' yyyy-MM-dd' )); param1"
2043+ | "source": "def param1 = LocalDate.parse(\"2025-09-11\", DateTimeFormatter.ofPattern(\" yyyy-MM-dd\" )); param1"
20442044 | }
20452045 | }
20462046 | },
@@ -2086,7 +2086,7 @@ class SQLQuerySpec extends AnyFlatSpec with Matchers {
20862086 .replaceAll(" } catch" , " } catch" )
20872087 }
20882088
2089- it should " handle case function as script field" in {
2089+ it should " handle case function as script field" in { // 40
20902090 val select : ElasticSearchRequest =
20912091 SQLQuery (caseWhen)
20922092 val query = select.query
@@ -2100,7 +2100,7 @@ class SQLQuerySpec extends AnyFlatSpec with Matchers {
21002100 | "c": {
21012101 | "script": {
21022102 | "lang": "painless",
2103- | "source": "def param1 = (!doc.containsKey('lastUpdated') || doc['lastUpdated'].empty ? null : doc['lastUpdated'].value); def param2 = ZonedDateTime.now(ZoneId.of('Z')).minus(7, ChronoUnit.DAYS); def param3 = param1 == null ? false : (param1 > param2); def param4 = (!doc.containsKey('lastSeen') || doc['lastSeen'].empty ? null : doc['lastSeen'].value.plus(2, ChronoUnit.DAYS)); def param5 = (!doc.containsKey('createdAt') || doc['createdAt'].empty ? null : doc['createdAt'].value); param3 ? param1 : param4 != null ? param4 : param5"
2103+ | "source": "def param1 = (!doc.containsKey('lastUpdated') || doc['lastUpdated'].empty ? null : doc['lastUpdated'].value); def param2 = ZonedDateTime.now(ZoneId.of('Z')).minus(7, ChronoUnit.DAYS); def param3 = param1 == null ? false : (param1.isAfter( param2) ); def param4 = (!doc.containsKey('lastSeen') || doc['lastSeen'].empty ? null : doc['lastSeen'].value.plus(2, ChronoUnit.DAYS)); def param5 = (!doc.containsKey('createdAt') || doc['createdAt'].empty ? null : doc['createdAt'].value); param3 ? param1 : param4 != null ? param4 : param5"
21042104 | }
21052105 | }
21062106 | },
@@ -2577,7 +2577,7 @@ class SQLQuerySpec extends AnyFlatSpec with Matchers {
25772577 .replaceAll(" \\ (double\\ )(\\ d)" , " (double) $1" )
25782578 }
25792579
2580- it should " handle string function as script field and condition" in {
2580+ it should " handle string function as script field and condition" in { // 45
25812581 val select : ElasticSearchRequest =
25822582 SQLQuery (string)
25832583 val query = select.query
@@ -3183,7 +3183,7 @@ class SQLQuerySpec extends AnyFlatSpec with Matchers {
31833183 .replaceAll(" lat,arg" , " lat, arg" )
31843184 }
31853185
3186- it should " handle between with temporal" in {
3186+ it should " handle between with temporal" in { // 50
31873187 val select : ElasticSearchRequest =
31883188 SQLQuery (betweenTemporal)
31893189 val query = select.query
@@ -3208,7 +3208,7 @@ class SQLQuerySpec extends AnyFlatSpec with Matchers {
32083208 | "script": {
32093209 | "script": {
32103210 | "lang": "painless",
3211- | "source": "def param1 = (!doc.containsKey('lastUpdated') || doc['lastUpdated'].empty ? null : doc['lastUpdated'].value) ; def param2 = LocalDate.parse(\"2025-09-11\", DateTimeFormatter.ofPattern(' yyyy-MM-dd' )); param1 == null ? false : (param1 >= param2.withDayOfMonth(param2.lengthOfMonth()))"
3211+ | "source": "def param1 = (!doc.containsKey('lastUpdated') || doc['lastUpdated'].empty ? null : doc['lastUpdated'].value.toLocalDate()) ; def param2 = LocalDate.parse(\"2025-09-11\", DateTimeFormatter.ofPattern(\" yyyy-MM-dd\" )); param1 == null ? false : (param1.isBefore( param2.withDayOfMonth(param2.lengthOfMonth())) == false )"
32123212 | }
32133213 | }
32143214 | },
@@ -3298,7 +3298,7 @@ class SQLQuerySpec extends AnyFlatSpec with Matchers {
32983298 | "script": {
32993299 | "script": {
33003300 | "lang": "painless",
3301- | "source": "def param1 = (!doc.containsKey('comments.replies.lastUpdated') || doc['comments.replies.lastUpdated'].empty ? null : doc['comments.replies.lastUpdated'].value) ; def param2 = LocalDate.parse(\"2025-09-10\", DateTimeFormatter.ofPattern(' yyyy-MM-dd' )); param1 == null ? false : (param1 < param2.withDayOfMonth(param2.lengthOfMonth()))"
3301+ | "source": "def param1 = (!doc.containsKey('comments.replies.lastUpdated') || doc['comments.replies.lastUpdated'].empty ? null : doc['comments.replies.lastUpdated'].value.toLocalDate()) ; def param2 = LocalDate.parse(\"2025-09-10\", DateTimeFormatter.ofPattern(\" yyyy-MM-dd\" )); param1 == null ? false : (param1.isBefore( param2.withDayOfMonth(param2.lengthOfMonth() )))"
33023302 | }
33033303 | }
33043304 | }
@@ -3396,7 +3396,7 @@ class SQLQuerySpec extends AnyFlatSpec with Matchers {
33963396 | "script": {
33973397 | "script": {
33983398 | "lang": "painless",
3399- | "source": "def param1 = (!doc.containsKey('replies.lastUpdated') || doc['replies.lastUpdated'].empty ? null : doc['replies.lastUpdated'].value) ; def param2 = LocalDate.parse(\"2025-09-10\", DateTimeFormatter.ofPattern(' yyyy-MM-dd' )); param1 == null ? false : (param1 < param2.withDayOfMonth(param2.lengthOfMonth()))"
3399+ | "source": "def param1 = (!doc.containsKey('replies.lastUpdated') || doc['replies.lastUpdated'].empty ? null : doc['replies.lastUpdated'].value.toLocalDate()) ; def param2 = LocalDate.parse(\"2025-09-10\", DateTimeFormatter.ofPattern(\" yyyy-MM-dd\" )); param1 == null ? false : (param1.isBefore( param2.withDayOfMonth(param2.lengthOfMonth() )))"
34003400 | }
34013401 | }
34023402 | },
@@ -3503,7 +3503,7 @@ class SQLQuerySpec extends AnyFlatSpec with Matchers {
35033503 | "script": {
35043504 | "script": {
35053505 | "lang": "painless",
3506- | "source": "def param1 = (!doc.containsKey('lastUpdated') || doc['lastUpdated'].empty ? null : doc['lastUpdated'].value); def param2 = ZonedDateTime.now(ZoneId.of('Z')).toLocalDate(); param1 == null ? false : (param1 < param2)"
3506+ | "source": "def param1 = (!doc.containsKey('lastUpdated') || doc['lastUpdated'].empty ? null : doc['lastUpdated'].value); def param2 = ZonedDateTime.now(ZoneId.of('Z')).toLocalDate(); param1 == null ? false : (param1.isBefore( param2) )"
35073507 | }
35083508 | }
35093509 | }
0 commit comments