@@ -135,7 +135,7 @@ TEST_F(HttpTest, TestSearchNoResults) {
135
135
ASSERT_EQ(response.body().toStdString(), "{\"results\":[]}");
136
136
}
137
137
138
- TEST_F(HttpTest, TestBulk ) {
138
+ TEST_F(HttpTest, TestBulkArray ) {
139
139
indexes->createIndex("testidx");
140
140
indexes->getIndex("testidx")->insertOrUpdateDocument(112, {31, 41, 51});
141
141
indexes->getIndex("testidx")->insertOrUpdateDocument(113, {31, 41, 51});
@@ -157,3 +157,22 @@ TEST_F(HttpTest, TestBulk) {
157
157
ASSERT_FALSE(indexes->getIndex("testidx")->containsDocument(113));
158
158
ASSERT_EQ(indexes->getIndex("testidx")->getAttribute("foo").toStdString(), "bar");
159
159
}*/
160
+
161
+ TEST_F (HttpTest, TestBulkObject) {
162
+ auto request = HttpRequest (HTTP_POST, QUrl (" /main/_bulk" ));
163
+ request.setBody (QJsonDocument (QJsonObject{
164
+ {" operations" , QJsonArray{
165
+ QJsonObject{{" upsert" , QJsonObject{{" id" , 111 }, {" terms" , QJsonArray{1 , 2 , 3 }}}}},
166
+ QJsonObject{{" upsert" , QJsonObject{{" id" , 112 }, {" terms" , QJsonArray{3 , 4 , 5 }}}}},
167
+ QJsonObject{{" set" , QJsonObject{{" name" , " foo" }, {" value" , " bar" }}}},
168
+ }},
169
+ }));
170
+
171
+ auto response = handler->router ().handle (request);
172
+ ASSERT_EQ (response.body ().toStdString (), " {}" );
173
+ ASSERT_EQ (response.status (), HTTP_OK);
174
+
175
+ // ASSERT_TRUE(index->containsDocument(111));
176
+ // ASSERT_TRUE(index->containsDocument(112));
177
+ ASSERT_EQ (index ->info ().attribute (" foo" ).toStdString (), " bar" );
178
+ }
0 commit comments