use of jakarta.nosql.Params in project jnosql-diana by eclipse.
the class DocumentParamsTest method shouldNotUseValueWhenIsInvalid.
@Test
public void shouldNotUseValueWhenIsInvalid() {
Params params = Params.newParams();
Value name = params.add("name");
assertThrows(QueryException.class, name::get);
assertThrows(QueryException.class, () -> name.get(String.class));
}
use of jakarta.nosql.Params in project jnosql-diana by eclipse.
the class ParamsTest method shouldSetParameter.
@Test
public void shouldSetParameter() {
Params params = Params.newParams();
Value name = params.add("name");
KeyValueEntity entity = KeyValueEntity.of("name", name);
params.bind("name", "Ada Lovelace");
assertEquals("Ada Lovelace", entity.getValue());
params.bind("name", "Diana");
assertEquals("Diana", entity.getValue());
}
use of jakarta.nosql.Params in project jnosql-diana by eclipse.
the class ParamsTest method shouldNotUseValueWhenIsInvalid.
@Test
public void shouldNotUseValueWhenIsInvalid() {
Params params = Params.newParams();
Value name = params.add("name");
assertThrows(QueryException.class, name::get);
assertThrows(QueryException.class, () -> name.get(String.class));
}
use of jakarta.nosql.Params in project jnosql-diana by eclipse.
the class ParamsTest method shouldAddParameter.
@Test
public void shouldAddParameter() {
Params params = Params.newParams();
Value name = params.add("name");
assertNotNull(name);
MatcherAssert.<List<String>>assertThat(params.getParametersNames(), containsInAnyOrder("name"));
}
use of jakarta.nosql.Params in project jnosql-diana by eclipse.
the class ParamsBinderTest method shouldConvert2.
@Test
public void shouldConvert2() {
Method method = Stream.of(PersonRepository.class.getMethods()).filter(m -> m.getName().equals("findByAgeAndName")).findFirst().get();
ClassMapping classMapping = mappings.get(Person.class);
RepositoryColumnObserverParser parser = new RepositoryColumnObserverParser(classMapping);
paramsBinder = new ParamsBinder(classMapping, converters);
SelectMethodProvider selectMethodFactory = SelectMethodProvider.get();
SelectQuery selectQuery = selectMethodFactory.apply(method, classMapping.getName());
SelectQueryConverter converter = ServiceLoaderProvider.get(SelectQueryConverter.class);
ColumnQueryParams queryParams = converter.apply(selectQuery, parser);
Params params = queryParams.getParams();
paramsBinder.bind(params, new Object[] { 10L, "Ada" }, method);
ColumnQuery query = queryParams.getQuery();
ColumnCondition columnCondition = query.getCondition().get();
List<ColumnCondition> conditions = columnCondition.getColumn().get(new TypeReference<List<ColumnCondition>>() {
});
List<Object> values = conditions.stream().map(ColumnCondition::getColumn).map(Column::getValue).map(Value::get).collect(Collectors.toList());
assertEquals(10, values.get(0));
assertEquals("Ada", values.get(1));
}
Aggregations