use of jakarta.nosql.column.ColumnEntity in project jnosql-diana by eclipse.
the class ColumnEntityTest method shouldReturnErrorWhenAddColumnsObjectWhenHasNullColumnName.
@Test
public void shouldReturnErrorWhenAddColumnsObjectWhenHasNullColumnName() {
Assertions.assertThrows(NullPointerException.class, () -> {
ColumnEntity entity = new DefaultColumnEntity("columnFamily");
entity.add(null, 10);
});
}
use of jakarta.nosql.column.ColumnEntity in project jnosql-diana by eclipse.
the class ColumnEntityTest method shouldConvertSubColumnListToMap.
@Test
public void shouldConvertSubColumnListToMap() {
ColumnEntity entity = ColumnEntity.of("entity");
entity.add(Column.of("_id", "id"));
List<Column> columns = asList(Column.of("name", "Ada"), Column.of("type", "type"), Column.of("information", "ada@lovelace.com"));
entity.add(Column.of("contacts", columns));
Map<String, Object> result = entity.toMap();
assertEquals("id", result.get("_id"));
List<Map<String, Object>> contacts = (List<Map<String, Object>>) result.get("contacts");
assertEquals(3, contacts.size());
assertThat(contacts, containsInAnyOrder(singletonMap("name", "Ada"), singletonMap("type", "type"), singletonMap("information", "ada@lovelace.com")));
}
use of jakarta.nosql.column.ColumnEntity in project jnosql-diana by eclipse.
the class ColumnEntityTest method shouldFindTypeSupplier.
@Test
public void shouldFindTypeSupplier() {
Column column = Column.of("name", "name");
ColumnEntity entity = ColumnEntity.of("entity", singletonList(column));
List<String> names = entity.find("name", new TypeReference<List<String>>() {
}).orElse(Collections.emptyList());
Assertions.assertNotNull(names);
Assertions.assertFalse(names.isEmpty());
MatcherAssert.assertThat(names, Matchers.contains("name"));
}
use of jakarta.nosql.column.ColumnEntity in project jnosql-diana by eclipse.
the class DefaultSelectQueryBuilderTest method shouldExecuteSingleResultManager.
@Test
public void shouldExecuteSingleResultManager() {
ColumnFamilyManager manager = Mockito.mock(ColumnFamilyManager.class);
ArgumentCaptor<ColumnQuery> queryCaptor = ArgumentCaptor.forClass(ColumnQuery.class);
String columnFamily = "columnFamily";
Optional<ColumnEntity> entities = select().from(columnFamily).getSingleResult(manager);
Mockito.verify(manager).singleResult(queryCaptor.capture());
checkQuery(queryCaptor, columnFamily);
}
use of jakarta.nosql.column.ColumnEntity in project jnosql-diana by eclipse.
the class InsertQueryParserTest method shouldReturnParserQuery8.
@ParameterizedTest(name = "Should parser the query {0}")
@ValueSource(strings = { "insert Person {\"name\":\"Ada Lovelace\"}" })
public void shouldReturnParserQuery8(String query) {
ArgumentCaptor<ColumnEntity> captor = ArgumentCaptor.forClass(ColumnEntity.class);
parser.query(query, manager, observer);
Mockito.verify(manager).insert(captor.capture());
ColumnEntity entity = captor.getValue();
assertEquals("Person", entity.getName());
assertEquals(Column.of("name", "Ada Lovelace"), entity.find("name").get());
}
Aggregations