use of jakarta.nosql.tck.entities.Person 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.tck.entities.Person 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.tck.entities.Person 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());
}
use of jakarta.nosql.tck.entities.Person in project jnosql-diana by eclipse.
the class ColumnRepositoryProxyTest method shouldSaveUsingInsertWhenDataDoesNotExist.
@Test
public void shouldSaveUsingInsertWhenDataDoesNotExist() {
when(template.find(Person.class, 10L)).thenReturn(Optional.empty());
ArgumentCaptor<Person> captor = ArgumentCaptor.forClass(Person.class);
Person person = Person.builder().withName("Ada").withId(10L).withPhones(singletonList("123123")).build();
assertNotNull(personRepository.save(person));
verify(template).insert(captor.capture());
Person value = captor.getValue();
assertEquals(person, value);
}
use of jakarta.nosql.tck.entities.Person in project jnosql-diana by eclipse.
the class ColumnPageTest method shouldExecutePaginationAsQuery.
@Test
public void shouldExecutePaginationAsQuery() {
Pagination pagination = Pagination.page(1).size(1);
ColumnQueryPagination queryPagination = ColumnQueryPagination.of(select().from("person").build(), pagination);
ColumnQuery query = queryPagination;
List<Person> people = subject.<Person>select(query).collect(Collectors.toList());
assertEquals(0L, people.stream().map(Person::getId).findFirst().orElse(-0L));
queryPagination = queryPagination.next();
query = queryPagination;
people = subject.<Person>select(query).collect(Collectors.toList());
assertEquals(1L, people.stream().map(Person::getId).findFirst().orElse(-0L));
queryPagination = queryPagination.next();
query = queryPagination;
people = subject.<Person>select(query).collect(Collectors.toList());
assertEquals(2L, people.stream().map(Person::getId).findFirst().orElse(-0L));
queryPagination = queryPagination.next();
query = queryPagination;
people = subject.<Person>select(query).collect(Collectors.toList());
assertEquals(3L, people.stream().map(Person::getId).findFirst().orElse(-0L));
queryPagination = queryPagination.next();
query = queryPagination;
people = subject.<Person>select(query).collect(Collectors.toList());
assertEquals(4L, people.stream().map(Person::getId).findFirst().orElse(-0L));
queryPagination = queryPagination.next();
query = queryPagination;
people = subject.<Person>select(query).collect(Collectors.toList());
assertEquals(5L, people.stream().map(Person::getId).findFirst().orElse(-0L));
}
Aggregations