Search in sources :

Example 61 with Where

use of jakarta.nosql.query.Where in project jnosql-diana by eclipse.

the class FindByMethodQueryProviderTest method checkNotCondition.

private void checkNotCondition(String query, Operator operator, String variable) {
    String entity = "entity";
    SelectQuery selectQuery = queryProvider.apply(query, entity);
    assertNotNull(selectQuery);
    assertEquals(entity, selectQuery.getEntity());
    assertTrue(selectQuery.getFields().isEmpty());
    assertTrue(selectQuery.getOrderBy().isEmpty());
    assertEquals(0, selectQuery.getLimit());
    assertEquals(0, selectQuery.getSkip());
    Optional<Where> where = selectQuery.getWhere();
    assertTrue(where.isPresent());
    Condition condition = where.get().getCondition();
    QueryValue<?> value = condition.getValue();
    assertEquals(Operator.NOT, condition.getOperator());
    assertEquals("_NOT", condition.getName());
    assertTrue(value instanceof ConditionQueryValue);
    Condition condition1 = ConditionQueryValue.class.cast(value).get().get(0);
    QueryValue<?> param = condition1.getValue();
    assertEquals(operator, condition1.getOperator());
    assertTrue(ParamQueryValue.class.cast(param).get().contains(variable));
}
Also used : SelectQuery(jakarta.nosql.query.SelectQuery) Condition(jakarta.nosql.query.Condition) ParamQueryValue(jakarta.nosql.query.ParamQueryValue) ConditionQueryValue(jakarta.nosql.query.ConditionQueryValue) Where(jakarta.nosql.query.Where)

Example 62 with Where

use of jakarta.nosql.query.Where in project jnosql-diana by eclipse.

the class FindByMethodQueryProviderTest method shouldReturnParserQuery27.

@ParameterizedTest(name = "Should parser the query {0}")
@ValueSource(strings = { "findByAgeBetween" })
public void shouldReturnParserQuery27(String query) {
    Operator operator = Operator.BETWEEN;
    String entity = "entity";
    SelectQuery selectQuery = queryProvider.apply(query, entity);
    assertNotNull(selectQuery);
    assertEquals(entity, selectQuery.getEntity());
    assertTrue(selectQuery.getFields().isEmpty());
    assertTrue(selectQuery.getOrderBy().isEmpty());
    assertEquals(0, selectQuery.getLimit());
    assertEquals(0, selectQuery.getSkip());
    Optional<Where> where = selectQuery.getWhere();
    assertTrue(where.isPresent());
    Condition condition = where.get().getCondition();
    QueryValue<?> value = condition.getValue();
    assertEquals(operator, condition.getOperator());
    QueryValue<?>[] values = MethodArrayValue.class.cast(value).get();
    ParamQueryValue param1 = (ParamQueryValue) values[0];
    ParamQueryValue param2 = (ParamQueryValue) values[1];
    assertNotEquals(param2.get(), param1.get());
}
Also used : Operator(jakarta.nosql.query.Operator) SelectQuery(jakarta.nosql.query.SelectQuery) Condition(jakarta.nosql.query.Condition) ParamQueryValue(jakarta.nosql.query.ParamQueryValue) Where(jakarta.nosql.query.Where) ParamQueryValue(jakarta.nosql.query.ParamQueryValue) ConditionQueryValue(jakarta.nosql.query.ConditionQueryValue) QueryValue(jakarta.nosql.query.QueryValue) ValueSource(org.junit.jupiter.params.provider.ValueSource) ParameterizedTest(org.junit.jupiter.params.ParameterizedTest)

Example 63 with Where

use of jakarta.nosql.query.Where in project jnosql-diana by eclipse.

the class FindByMethodQueryProviderTest method shouldRunQuery29.

@ParameterizedTest(name = "Should parser the query {0}")
@ValueSource(strings = { "findBySalary_Currency" })
public void shouldRunQuery29(String query) {
    String entity = "entity";
    SelectQuery selectQuery = queryProvider.apply(query, entity);
    assertNotNull(selectQuery);
    assertEquals(entity, selectQuery.getEntity());
    assertTrue(selectQuery.getFields().isEmpty());
    assertTrue(selectQuery.getOrderBy().isEmpty());
    assertEquals(0, selectQuery.getLimit());
    assertEquals(0, selectQuery.getSkip());
    Optional<Where> where = selectQuery.getWhere();
    assertTrue(where.isPresent());
    assertTrue(where.isPresent());
    Condition condition = where.get().getCondition();
    Assertions.assertEquals(Operator.EQUALS, condition.getOperator());
    assertEquals("salary.currency", condition.getName());
}
Also used : SelectQuery(jakarta.nosql.query.SelectQuery) Condition(jakarta.nosql.query.Condition) Where(jakarta.nosql.query.Where) ValueSource(org.junit.jupiter.params.provider.ValueSource) ParameterizedTest(org.junit.jupiter.params.ParameterizedTest)

Aggregations

Where (jakarta.nosql.query.Where)63 Condition (jakarta.nosql.query.Condition)61 ParameterizedTest (org.junit.jupiter.params.ParameterizedTest)54 ValueSource (org.junit.jupiter.params.provider.ValueSource)54 SelectQuery (jakarta.nosql.query.SelectQuery)32 DeleteQuery (jakarta.nosql.query.DeleteQuery)30 ConditionQueryValue (jakarta.nosql.query.ConditionQueryValue)22 NumberQueryValue (jakarta.nosql.query.NumberQueryValue)22 StringQueryValue (jakarta.nosql.query.StringQueryValue)19 ParamQueryValue (jakarta.nosql.query.ParamQueryValue)16 JSONQueryValue (jakarta.nosql.query.JSONQueryValue)14 JsonObject (javax.json.JsonObject)14 ArrayQueryValue (jakarta.nosql.query.ArrayQueryValue)8 FunctionQueryValue (jakarta.nosql.query.FunctionQueryValue)8 Function (jakarta.nosql.query.Function)6 QueryValue (jakarta.nosql.query.QueryValue)6 Operator (jakarta.nosql.query.Operator)2 Sort (jakarta.nosql.Sort)1 Vertex (org.apache.tinkerpop.gremlin.structure.Vertex)1