Skip to content

Commit 2099321

Browse files
committed
creates map scenario
1 parent 3d876db commit 2099321

File tree

1 file changed

+24
-0
lines changed

1 file changed

+24
-0
lines changed

couchdb-driver/src/test/java/org/eclipse/jnosql/communication/couchdb/document/DefaultCouchDBDocumentCollectionManagerTest.java

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,13 +22,18 @@
2222
import jakarta.nosql.document.DocumentEntity;
2323
import jakarta.nosql.document.DocumentQuery;
2424
import org.eclipse.jnosql.communication.document.Documents;
25+
import org.junit.jupiter.api.Assertions;
2526
import org.junit.jupiter.api.BeforeEach;
2627
import org.junit.jupiter.api.Test;
2728

2829
import java.util.ArrayList;
30+
import java.util.Collections;
2931
import java.util.HashMap;
3032
import java.util.List;
3133
import java.util.Map;
34+
import java.util.Optional;
35+
import java.util.UUID;
36+
import java.util.concurrent.ThreadLocalRandom;
3237
import java.util.stream.Collectors;
3338

3439
import static jakarta.nosql.document.DocumentDeleteQuery.delete;
@@ -230,6 +235,25 @@ public void shouldSaveSubDocument2() {
230235
assertThat(documents, containsInAnyOrder(Document.of("mobile", "1231231"), Document.of("mobile2", "1231231")));
231236
}
232237

238+
@Test
239+
public void shouldSaveMap() {
240+
DocumentEntity entity = DocumentEntity.of(COLLECTION_NAME);
241+
String id = UUID.randomUUID().toString();
242+
entity.add("properties", Collections.singletonMap("hallo", "Welt"));
243+
entity.add("scope", "xxx");
244+
entity.add("_id", id);
245+
entityManager.insert(entity);
246+
final DocumentQuery query = select().from(COLLECTION_NAME)
247+
.where("_id").eq(id).and("scope").eq("xxx").build();
248+
final Optional<DocumentEntity> optional = entityManager.select(query).findFirst();
249+
Assertions.assertTrue(optional.isPresent());
250+
DocumentEntity documentEntity = optional.get();
251+
Document properties = documentEntity.find("properties").get();
252+
Map<String, Object> map = properties.get(new TypeReference<Map<String, Object>>() {
253+
});
254+
Assertions.assertNotNull(map);
255+
}
256+
233257
private DocumentEntity createDocumentList() {
234258
DocumentEntity entity = DocumentEntity.of("AppointmentBook");
235259
List<List<Document>> documents = new ArrayList<>();

0 commit comments

Comments
 (0)