diff --git a/jnosql-oracle-nosql/src/main/java/org/eclipse/jnosql/databases/oracle/communication/AbstractQueryBuilder.java b/jnosql-oracle-nosql/src/main/java/org/eclipse/jnosql/databases/oracle/communication/AbstractQueryBuilder.java index 963c330be..0793a691f 100644 --- a/jnosql-oracle-nosql/src/main/java/org/eclipse/jnosql/databases/oracle/communication/AbstractQueryBuilder.java +++ b/jnosql-oracle-nosql/src/main/java/org/eclipse/jnosql/databases/oracle/communication/AbstractQueryBuilder.java @@ -64,9 +64,9 @@ protected void condition(CriteriaCondition condition, StringBuilder query, List< case GREATER_EQUALS_THAN: predicate(query, " >= ", document, params); return; - case LIKE: +/* case LIKE: predicate(query, " LIKE ", document, params); - return; + return;*/ case NOT: query.append(" NOT "); condition(document.get(CriteriaCondition.class), query, params, ids); @@ -88,13 +88,12 @@ protected void condition(CriteriaCondition condition, StringBuilder query, List< } protected void predicateBetween(StringBuilder query,List params, Element document) { - query.append(" BETWEEN "); String name = identifierOf(document.name()); List values = new ArrayList<>(); ((Iterable) document.get()).forEach(values::add); - query.append(name).append(" ? AND ? "); + query.append(name).append(" BETWEEN ? AND ? "); FieldValue fieldValue = FieldValueConverter.INSTANCE.of(values.get(ORIGIN)); FieldValue fieldValue2 = FieldValueConverter.INSTANCE.of(values.get(1)); params.add(fieldValue); diff --git a/jnosql-oracle-nosql/src/main/java/org/eclipse/jnosql/databases/oracle/communication/DefaultOracleNoSQLDocumentManager.java b/jnosql-oracle-nosql/src/main/java/org/eclipse/jnosql/databases/oracle/communication/DefaultOracleNoSQLDocumentManager.java index 850f0ec92..679f5decf 100644 --- a/jnosql-oracle-nosql/src/main/java/org/eclipse/jnosql/databases/oracle/communication/DefaultOracleNoSQLDocumentManager.java +++ b/jnosql-oracle-nosql/src/main/java/org/eclipse/jnosql/databases/oracle/communication/DefaultOracleNoSQLDocumentManager.java @@ -143,7 +143,7 @@ public void delete(DeleteQuery query) { } } if (!oracleQuery.hasOnlyIds()) { - LOGGER.finest("Executing delete query at Oracle NoSQL: " +oracleQuery.query()); + LOGGER.finest("Executing delete query at Oracle NoSQL: " + oracleQuery.query()); var prepReq = new PrepareRequest().setStatement(oracleQuery.query()); var prepRes = serviceHandle.prepare(prepReq); PreparedStatement preparedStatement = prepRes.getPreparedStatement(); diff --git a/jnosql-oracle-nosql/src/test/java/org/eclipse/jnosql/databases/oracle/tck/OracleNoSQLTemplateSupplier.java b/jnosql-oracle-nosql/src/test/java/org/eclipse/jnosql/databases/oracle/tck/OracleNoSQLTemplateSupplier.java new file mode 100644 index 000000000..5f29c150d --- /dev/null +++ b/jnosql-oracle-nosql/src/test/java/org/eclipse/jnosql/databases/oracle/tck/OracleNoSQLTemplateSupplier.java @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2024 Contributors to the Eclipse Foundation + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * and Apache License v2.0 which accompanies this distribution. + * The Eclipse Public License is available at http://www.eclipse.org/legal/epl-v10.html + * and the Apache License v2.0 is available at http://www.opensource.org/licenses/apache2.0.php. + * + * You may elect to redistribute this code under either of these licenses. + * + * Contributors: + * + * Otavio Santana + * Alessandro Moscatelli + * Maximillian Arruda + */ +package org.eclipse.jnosql.databases.oracle.tck; + +import jakarta.enterprise.inject.se.SeContainerInitializer; +import jakarta.enterprise.inject.spi.CDI; +import jakarta.nosql.Template; +import jakarta.nosql.tck.TemplateSupplier; +import org.eclipse.jnosql.databases.oracle.communication.Database; +import org.eclipse.jnosql.databases.oracle.communication.OracleNoSQLConfigurations; +import org.eclipse.jnosql.mapping.core.config.MappingConfigurations; +import org.eclipse.jnosql.mapping.document.DocumentTemplate; + + +public class OracleNoSQLTemplateSupplier implements TemplateSupplier { + + static { + System.setProperty(OracleNoSQLConfigurations.HOST.get(), Database.INSTANCE.host()); + System.setProperty(MappingConfigurations.DOCUMENT_DATABASE.get(), "jakartanosqltck"); + SeContainerInitializer.newInstance().initialize(); + } + + @Override + public Template get() { + return CDI.current().select(DocumentTemplate.class).get(); + } +} diff --git a/jnosql-oracle-nosql/src/test/resources/META-INF/beans.xml b/jnosql-oracle-nosql/src/test/resources/META-INF/beans.xml new file mode 100644 index 000000000..0340ecdbc --- /dev/null +++ b/jnosql-oracle-nosql/src/test/resources/META-INF/beans.xml @@ -0,0 +1,21 @@ + + + + \ No newline at end of file diff --git a/jnosql-oracle-nosql/src/test/resources/META-INF/services/jakarta.nosql.tck.TemplateSupplier b/jnosql-oracle-nosql/src/test/resources/META-INF/services/jakarta.nosql.tck.TemplateSupplier new file mode 100644 index 000000000..c0767d71a --- /dev/null +++ b/jnosql-oracle-nosql/src/test/resources/META-INF/services/jakarta.nosql.tck.TemplateSupplier @@ -0,0 +1 @@ +org.eclipse.jnosql.databases.oracle.tck.OracleNoSQLTemplateSupplier \ No newline at end of file diff --git a/jnosql-redis/src/test/java/org/eclipse/jnosql/databases/redis/communication/KeyValueDatabase.java b/jnosql-redis/src/test/java/org/eclipse/jnosql/databases/redis/communication/KeyValueDatabase.java index 64565f937..60bbb91a6 100644 --- a/jnosql-redis/src/test/java/org/eclipse/jnosql/databases/redis/communication/KeyValueDatabase.java +++ b/jnosql-redis/src/test/java/org/eclipse/jnosql/databases/redis/communication/KeyValueDatabase.java @@ -35,6 +35,14 @@ public enum KeyValueDatabase implements Supplier { redis.start(); } + public String host() { + return redis.getHost(); + } + + public String port() { + return String.valueOf(redis.getFirstMappedPort()); + } + @Override public RedisBucketManagerFactory get() { RedisConfiguration configuration = new RedisConfiguration(); diff --git a/jnosql-redis/src/test/java/org/eclipse/jnosql/databases/redis/tck/RedisDBTemplateSupplier.java b/jnosql-redis/src/test/java/org/eclipse/jnosql/databases/redis/tck/RedisDBTemplateSupplier.java new file mode 100644 index 000000000..1752dcd6c --- /dev/null +++ b/jnosql-redis/src/test/java/org/eclipse/jnosql/databases/redis/tck/RedisDBTemplateSupplier.java @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2024 Contributors to the Eclipse Foundation + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * and Apache License v2.0 which accompanies this distribution. + * The Eclipse Public License is available at http://www.eclipse.org/legal/epl-v10.html + * and the Apache License v2.0 is available at http://www.opensource.org/licenses/apache2.0.php. + * + * You may elect to redistribute this code under either of these licenses. + * + * Contributors: + * + * Otavio Santana + * Alessandro Moscatelli + * Maximillian Arruda + */ +package org.eclipse.jnosql.databases.redis.tck; + +import jakarta.enterprise.inject.se.SeContainerInitializer; +import jakarta.enterprise.inject.spi.CDI; +import jakarta.nosql.Template; +import jakarta.nosql.tck.TemplateSupplier; +import org.eclipse.jnosql.databases.redis.communication.KeyValueDatabase; +import org.eclipse.jnosql.databases.redis.communication.RedisConfigurations; +import org.eclipse.jnosql.mapping.core.config.MappingConfigurations; + + +public class RedisDBTemplateSupplier implements TemplateSupplier { + + static { + System.setProperty(RedisConfigurations.HOST.get(), KeyValueDatabase.INSTANCE.host()); + System.setProperty(RedisConfigurations.PORT.get(), KeyValueDatabase.INSTANCE.port()); + System.setProperty(MappingConfigurations.KEY_VALUE_DATABASE.get(), "jakarta-nosql-tck"); + SeContainerInitializer.newInstance().initialize(); + } + + @Override + public Template get() { + return CDI.current().select(Template.class).get(); + } +} diff --git a/jnosql-redis/src/test/resources/META-INF/beans.xml b/jnosql-redis/src/test/resources/META-INF/beans.xml new file mode 100644 index 000000000..0340ecdbc --- /dev/null +++ b/jnosql-redis/src/test/resources/META-INF/beans.xml @@ -0,0 +1,21 @@ + + + + \ No newline at end of file diff --git a/jnosql-redis/src/test/resources/META-INF/services/jakarta.nosql.tck.TemplateSupplier b/jnosql-redis/src/test/resources/META-INF/services/jakarta.nosql.tck.TemplateSupplier new file mode 100644 index 000000000..dddef1385 --- /dev/null +++ b/jnosql-redis/src/test/resources/META-INF/services/jakarta.nosql.tck.TemplateSupplier @@ -0,0 +1 @@ +org.eclipse.jnosql.databases.redis.tck.RedisDBTemplateSupplier \ No newline at end of file