Search in sources :

Example 56 with Condition

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

the class UpdateQueryProviderTest method shouldReturnParserQuery.

@ParameterizedTest(name = "Should parser the query {0}")
@ValueSource(strings = { "update God (name = \"Diana\")" })
public void shouldReturnParserQuery(String query) {
    UpdateQuery updateQuery = checkUpdateFromStart(query);
    List<Condition> conditions = updateQuery.getConditions();
    assertEquals(1, conditions.size());
    Condition condition = conditions.get(0);
    assertEquals("name", condition.getName());
    assertEquals(Operator.EQUALS, condition.getOperator());
    QueryValue<?> value = condition.getValue();
    assertTrue(value instanceof StringQueryValue);
    assertEquals("Diana", StringQueryValue.class.cast(value).get());
}
Also used : Condition(jakarta.nosql.query.Condition) UpdateQuery(jakarta.nosql.query.UpdateQuery) StringQueryValue(jakarta.nosql.query.StringQueryValue) ValueSource(org.junit.jupiter.params.provider.ValueSource) ParameterizedTest(org.junit.jupiter.params.ParameterizedTest)

Example 57 with Condition

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

the class DeleteByMethodQueryProviderTest method checkAppendCondition.

private void checkAppendCondition(String query, Operator operator, Operator operator2, String variable, String variable2, Operator operatorAppender) {
    String entity = "entity";
    DeleteQuery deleteQuery = queryProvider.apply(query, entity);
    assertNotNull(deleteQuery);
    assertEquals(entity, deleteQuery.getEntity());
    assertTrue(deleteQuery.getFields().isEmpty());
    Optional<Where> where = deleteQuery.getWhere();
    assertTrue(where.isPresent());
    Condition condition = where.get().getCondition();
    QueryValue<?> value = condition.getValue();
    assertEquals(operatorAppender, condition.getOperator());
    assertTrue(value instanceof ConditionQueryValue);
    Condition condition1 = ConditionQueryValue.class.cast(value).get().get(0);
    Condition condition2 = ConditionQueryValue.class.cast(value).get().get(1);
    assertEquals(operator, condition1.getOperator());
    QueryValue<?> param = condition1.getValue();
    assertEquals(operator, condition1.getOperator());
    assertTrue(ParamQueryValue.class.cast(param).get().contains(variable));
    assertEquals(operator2, condition2.getOperator());
    QueryValue<?> param2 = condition2.getValue();
    assertEquals(condition2.getOperator(), operator2);
    assertTrue(ParamQueryValue.class.cast(param2).get().contains(variable2));
}
Also used : Condition(jakarta.nosql.query.Condition) ParamQueryValue(jakarta.nosql.query.ParamQueryValue) ConditionQueryValue(jakarta.nosql.query.ConditionQueryValue) DeleteQuery(jakarta.nosql.query.DeleteQuery) Where(jakarta.nosql.query.Where)

Example 58 with Condition

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

the class FindByMethodQueryProviderTest method checkCondition.

private void checkCondition(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, condition.getOperator());
    assertTrue(ParamQueryValue.class.cast(value).get().contains(variable));
}
Also used : SelectQuery(jakarta.nosql.query.SelectQuery) Condition(jakarta.nosql.query.Condition) ParamQueryValue(jakarta.nosql.query.ParamQueryValue) Where(jakarta.nosql.query.Where)

Example 59 with Condition

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

the class InsertQueryProviderTest method shouldReturnParserQuery.

@ParameterizedTest(name = "Should parser the query {0}")
@ValueSource(strings = { "insert God (name = \"Diana\")" })
public void shouldReturnParserQuery(String query) {
    InsertQuery insertQuery = checkInsertFromStart(query);
    List<Condition> conditions = insertQuery.getConditions();
    assertEquals(1, conditions.size());
    Condition condition = conditions.get(0);
    assertEquals("name", condition.getName());
    assertEquals(Operator.EQUALS, condition.getOperator());
    QueryValue<?> value = condition.getValue();
    assertTrue(value instanceof StringQueryValue);
    assertEquals("Diana", StringQueryValue.class.cast(value).get());
    assertFalse(insertQuery.getTtl().isPresent());
}
Also used : Condition(jakarta.nosql.query.Condition) InsertQuery(jakarta.nosql.query.InsertQuery) StringQueryValue(jakarta.nosql.query.StringQueryValue) ValueSource(org.junit.jupiter.params.provider.ValueSource) ParameterizedTest(org.junit.jupiter.params.ParameterizedTest)

Example 60 with Condition

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

the class InsertQueryProviderTest method shouldReturnParserQuery2.

@ParameterizedTest(name = "Should parser the query {0}")
@ValueSource(strings = { "insert God (stamina = 32.23)" })
public void shouldReturnParserQuery2(String query) {
    InsertQuery insertQuery = checkInsertFromStart(query);
    List<Condition> conditions = insertQuery.getConditions();
    assertEquals(1, conditions.size());
    Condition condition = conditions.get(0);
    assertEquals("stamina", condition.getName());
    assertEquals(Operator.EQUALS, condition.getOperator());
    QueryValue<?> value = condition.getValue();
    assertTrue(value instanceof NumberQueryValue);
    assertEquals(32.23, NumberQueryValue.class.cast(value).get());
    assertFalse(insertQuery.getTtl().isPresent());
}
Also used : Condition(jakarta.nosql.query.Condition) NumberQueryValue(jakarta.nosql.query.NumberQueryValue) InsertQuery(jakarta.nosql.query.InsertQuery) ValueSource(org.junit.jupiter.params.provider.ValueSource) ParameterizedTest(org.junit.jupiter.params.ParameterizedTest)

Aggregations

Condition (jakarta.nosql.query.Condition)79 ParameterizedTest (org.junit.jupiter.params.ParameterizedTest)66 ValueSource (org.junit.jupiter.params.provider.ValueSource)66 Where (jakarta.nosql.query.Where)61 SelectQuery (jakarta.nosql.query.SelectQuery)31 DeleteQuery (jakarta.nosql.query.DeleteQuery)29 NumberQueryValue (jakarta.nosql.query.NumberQueryValue)28 ConditionQueryValue (jakarta.nosql.query.ConditionQueryValue)25 StringQueryValue (jakarta.nosql.query.StringQueryValue)24 ParamQueryValue (jakarta.nosql.query.ParamQueryValue)18 JsonObject (javax.json.JsonObject)18 JSONQueryValue (jakarta.nosql.query.JSONQueryValue)16 FunctionQueryValue (jakarta.nosql.query.FunctionQueryValue)10 ArrayQueryValue (jakarta.nosql.query.ArrayQueryValue)8 Function (jakarta.nosql.query.Function)8 InsertQuery (jakarta.nosql.query.InsertQuery)7 UpdateQuery (jakarta.nosql.query.UpdateQuery)7 QueryValue (jakarta.nosql.query.QueryValue)6 Operator (jakarta.nosql.query.Operator)3 ArrayList (java.util.ArrayList)2