Skip to content

Commit 5d7ef79

Browse files
committed
improve test names and add a test that quotes are not handled specially in normal circumstances
1 parent 21adf13 commit 5d7ef79

File tree

1 file changed

+22
-10
lines changed

1 file changed

+22
-10
lines changed

Postgrest/src/commonTest/kotlin/PostgrestFilterBuilderTest.kt

Lines changed: 22 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -34,19 +34,27 @@ class PostgrestFilterBuilderTest {
3434
}
3535

3636
@Test
37-
fun eq_reserved() {
37+
fun eq_with_reserved() {
3838
val filter = filterToString {
39-
eq("id", "2004-09-16T23:59:58.75")
39+
eq("time", "2004-09-16T23:59:58.75")
4040
}
41-
assertEquals("id=eq.2004-09-16T23:59:58.75", filter)
41+
assertEquals("time=eq.2004-09-16T23:59:58.75", filter)
4242
}
4343

4444
@Test
45-
fun eq_quoted() {
45+
fun eq_with_quotes() {
4646
val filter = filterToString {
47-
isIn("id", listOf("Hello, \"World\"", "."))
47+
eq("message", "Hello, \"World\"")
4848
}
49-
assertEquals("id=in.(\"Hello,+\\\"World\\\"\",\".\")", filter)
49+
assertEquals("message=eq.Hello,+\"World\"", filter)
50+
}
51+
52+
@Test
53+
fun in_quoted() {
54+
val filter = filterToString {
55+
isIn("message", listOf("\"Hello, World\"", "Goodbye.", "Greetings"))
56+
}
57+
assertEquals("message=in.(\"\\\"Hello,+World\\\"\",\"Goodbye.\",Greetings)", filter)
5058
}
5159

5260
@Test
@@ -148,15 +156,15 @@ class PostgrestFilterBuilderTest {
148156
@Test
149157
fun contained() {
150158
val filter = filterToString {
151-
contained("id", listOf(1,2,3))
159+
contained("id", listOf(1, 2, 3))
152160
}
153161
assertEquals("id=cd.{1,2,3}", filter)
154162
}
155163

156164
@Test
157165
fun overlaps() {
158166
val filter = filterToString {
159-
overlaps("id", listOf(1,2,3))
167+
overlaps("id", listOf(1, 2, 3))
160168
}
161169
assertEquals("id=ov.{1,2,3}", filter)
162170
}
@@ -293,15 +301,19 @@ class PostgrestFilterBuilderTest {
293301

294302
@Test
295303
fun propertyConversionWithSerialName() {
296-
if(CurrentPlatformTarget in listOf(PlatformTarget.JVM, PlatformTarget.ANDROID)) {
304+
if (CurrentPlatformTarget in listOf(PlatformTarget.JVM, PlatformTarget.ANDROID)) {
297305
assertEquals("created_at", PropertyConversionMethod.SERIAL_NAME(TestData::createdAt))
298306
} else {
299307
assertFails { PropertyConversionMethod.SERIAL_NAME(TestData::createdAt) }
300308
}
301309
}
302310

303311
private fun filterToString(builder: PostgrestFilterBuilder.() -> Unit): String {
304-
return PostgrestFilterBuilder(PropertyConversionMethod.NONE).apply(block = builder).params.mapValues { (_, value) -> listOf(value.first()) }.let {
312+
return PostgrestFilterBuilder(PropertyConversionMethod.NONE).apply(block = builder).params.mapValues { (_, value) ->
313+
listOf(
314+
value.first()
315+
)
316+
}.let {
305317
parametersOf(it).formUrlEncode()
306318
}.decodeURLQueryComponent()
307319
}

0 commit comments

Comments
 (0)