use of jakarta.nosql.column.ColumnQuery in project jnosql-diana by eclipse.
the class ColumnRepositoryProxyPaginationTest method shouldFindByNameLike.
@Test
public void shouldFindByNameLike() {
Person ada = Person.builder().withAge(20).withName("Ada").build();
when(template.select(any(ColumnQuery.class))).thenReturn(Stream.of(ada));
Pagination pagination = getPagination();
personRepository.findByNameLike("Ada", pagination);
ArgumentCaptor<ColumnQuery> captor = ArgumentCaptor.forClass(ColumnQuery.class);
verify(template).select(captor.capture());
ColumnQuery query = captor.getValue();
ColumnCondition condition = query.getCondition().get();
assertEquals("Person", query.getColumnFamily());
assertEquals(LIKE, condition.getCondition());
assertEquals(Column.of("name", "Ada"), condition.getColumn());
assertEquals(pagination.getSkip(), query.getSkip());
assertEquals(pagination.getLimit(), query.getLimit());
}
use of jakarta.nosql.column.ColumnQuery in project jnosql-diana by eclipse.
the class ColumnRepositoryProxyTest method shouldFindAll.
@Test
public void shouldFindAll() {
Person ada = Person.builder().withAge(20).withName("Ada").build();
when(template.select(any(ColumnQuery.class))).thenReturn(Stream.of(ada));
List<Person> persons = personRepository.findAll();
ArgumentCaptor<ColumnQuery> captor = ArgumentCaptor.forClass(ColumnQuery.class);
verify(template).select(captor.capture());
ColumnQuery query = captor.getValue();
assertFalse(query.getCondition().isPresent());
assertEquals("Person", query.getColumnFamily());
}
use of jakarta.nosql.column.ColumnQuery in project jnosql-diana by eclipse.
the class ColumnRepositoryProxyTest method shouldFindBySalary_CurrencyOrderByCurrency_Name.
@Test
public void shouldFindBySalary_CurrencyOrderByCurrency_Name() {
Person ada = Person.builder().withAge(20).withName("Ada").build();
when(template.select(any(ColumnQuery.class))).thenReturn(Stream.of(ada));
personRepository.findBySalary_CurrencyOrderByCurrency_Name("USD");
ArgumentCaptor<ColumnQuery> captor = ArgumentCaptor.forClass(ColumnQuery.class);
verify(template).select(captor.capture());
ColumnQuery query = captor.getValue();
ColumnCondition condition = query.getCondition().get();
final Sort sort = query.getSorts().get(0);
final Column document = condition.getColumn();
assertEquals("Person", query.getColumnFamily());
assertEquals("salary.currency", document.getName());
assertEquals("currency.name", sort.getName());
}
use of jakarta.nosql.column.ColumnQuery in project jnosql-diana by eclipse.
the class ColumnRepositoryProxyTest method shouldConvertFieldToTheType.
@Test
public void shouldConvertFieldToTheType() {
Person ada = Person.builder().withAge(20).withName("Ada").build();
when(template.select(any(ColumnQuery.class))).thenReturn(Stream.of(ada));
personRepository.findByAge("120");
ArgumentCaptor<ColumnQuery> captor = ArgumentCaptor.forClass(ColumnQuery.class);
verify(template).select(captor.capture());
ColumnQuery query = captor.getValue();
ColumnCondition condition = query.getCondition().get();
assertEquals("Person", query.getColumnFamily());
assertEquals(EQUALS, condition.getCondition());
assertEquals(Column.of("age", 120), condition.getColumn());
}
use of jakarta.nosql.column.ColumnQuery in project jnosql-diana by eclipse.
the class ColumnRepositoryProxyTest method shouldFindByAgeLessThanEqual.
@Test
public void shouldFindByAgeLessThanEqual() {
Person ada = Person.builder().withAge(20).withName("Ada").build();
when(template.select(any(ColumnQuery.class))).thenReturn(Stream.of(ada));
personRepository.findByAgeLessThanEqual(33);
ArgumentCaptor<ColumnQuery> captor = ArgumentCaptor.forClass(ColumnQuery.class);
verify(template).select(captor.capture());
ColumnQuery query = captor.getValue();
ColumnCondition condition = query.getCondition().get();
assertEquals("Person", query.getColumnFamily());
assertEquals(LESSER_EQUALS_THAN, condition.getCondition());
assertEquals(Column.of("age", 33), condition.getColumn());
}
Aggregations