@@ -29,7 +29,6 @@ trait BaseSqlTests { this: SqlTestVerticle =>
29
29
30
30
def simpleConnection (): Unit = asyncTest {
31
31
expectOk(raw(" SELECT 0" )) map { reply =>
32
- assertEquals(1 , reply.getNumber(" rows" ))
33
32
val res = reply.getArray(" results" )
34
33
assertEquals(1 , res.size())
35
34
assertEquals(0 , res.get[JsonArray ](0 ).get[Int ](0 ))
@@ -38,7 +37,6 @@ trait BaseSqlTests { this: SqlTestVerticle =>
38
37
39
38
def multipleFields (): Unit = asyncTest {
40
39
expectOk(raw(" SELECT 1, 0" )) map { reply =>
41
- assertEquals(1 , reply.getNumber(" rows" ))
42
40
val res = reply.getArray(" results" )
43
41
assertEquals(1 , res.size())
44
42
val firstElem = res.get[JsonArray ](0 )
@@ -75,10 +73,32 @@ trait BaseSqlTests { this: SqlTestVerticle =>
75
73
}
76
74
}
77
75
76
+ def selectWithoutFields (): Unit = typeTestInsert {
77
+ expectOk(select(" some_test" )) map { reply =>
78
+ val receivedFields = reply.getArray(" fields" )
79
+ def assertFieldName (field : String ) = {
80
+ assertTrue(" fields should contain '" + field + " '" , receivedFields.contains(field))
81
+ }
82
+ assertFieldName(" id" )
83
+ assertFieldName(" name" )
84
+ assertFieldName(" email" )
85
+ assertFieldName(" is_male" )
86
+ assertFieldName(" age" )
87
+ assertFieldName(" money" )
88
+ assertFieldName(" wedding_date" )
89
+
90
+ val mrTest = reply.getArray(" results" ).get[JsonArray ](0 )
91
+ assertTrue(mrTest.contains(" Mr. Test" ))
92
+ assertTrue(mrTest.contains(" test@example.com" ))
93
+ assertTrue(mrTest.contains(true ))
94
+ assertTrue(mrTest.contains(15 ))
95
+ assertTrue(mrTest.contains(167.31 ))
96
+ }
97
+ }
98
+
78
99
def selectEverything (): Unit = typeTestInsert {
79
100
val fieldsArray = new JsonArray (""" ["name","email","is_male","age","money","wedding_date"]""" )
80
101
expectOk(select(" some_test" , fieldsArray)) map { reply =>
81
- logger.info(" reply: " + reply.encode())
82
102
val receivedFields = reply.getArray(" fields" )
83
103
assertEquals(fieldsArray, receivedFields)
84
104
val results = reply.getArray(" results" )
@@ -118,7 +138,8 @@ trait BaseSqlTests { this: SqlTestVerticle =>
118
138
val fieldsArray = new JsonArray (""" ["name","email"]""" )
119
139
expectOk(select(" some_test" , fieldsArray)) map { reply =>
120
140
val receivedFields = reply.getArray(" fields" )
121
- assertEquals(fieldsArray, receivedFields)
141
+ assertTrue(" arrays " + fieldsArray.encode() + " and " + receivedFields.encode() +
142
+ " should match" , fieldsArray == receivedFields)
122
143
assertEquals(2 , reply.getInteger(" rows" ))
123
144
val results = reply.getArray(" results" )
124
145
val mrOrMrs = results.get[JsonArray ](0 )
@@ -151,7 +172,17 @@ trait BaseSqlTests { this: SqlTestVerticle =>
151
172
// }
152
173
// }))
153
174
154
- def selectWithCondition (): Unit = fail(" not implemented" )
175
+ def selectWithCondition (): Unit = typeTestInsert {
176
+ expectOk(select(" some_test" , List (" email" ),
177
+ Json .obj(" $and" -> Json .arr(List (
178
+ Json .obj(" $eq" -> Json .obj(" is_male" -> " true" )),
179
+ Json .obj(" $gt" -> Json .obj(" age" -> 14 ))))))) map { reply =>
180
+ val results = reply.getArray(" results" )
181
+ assertEquals(1 , results.size())
182
+ assertEquals(" test@example.com" , results.get[JsonArray ](0 ).get[String ](0 ))
183
+ }
184
+ }
185
+
155
186
def updateWithoutCondition (): Unit = fail(" not implemented" )
156
187
def updateWithCondition (): Unit = fail(" not implemented" )
157
188
def preparedSelect (): Unit = typeTestInsert {
0 commit comments