Skip to content

Commit ce001bb

Browse files
author
Julien Ruaux
committed
Fixed unit tests
1 parent 8599050 commit ce001bb

File tree

8 files changed

+40
-35
lines changed

8 files changed

+40
-35
lines changed

subprojects/trino-redisearch/src/main/java/com/redis/trino/RediSearchClientModule.java

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@
33
import static io.airlift.configuration.ConfigBinder.configBinder;
44
import static java.util.Objects.requireNonNull;
55

6+
import java.util.Optional;
7+
68
import javax.inject.Singleton;
79

810
import com.google.inject.Binder;
@@ -29,8 +31,9 @@ public void configure(Binder binder) {
2931
@Provides
3032
public static RediSearchSession createRediSearchSession(TypeManager typeManager, RediSearchConfig config) {
3133
requireNonNull(config, "config is null");
32-
if (config.getUri().isPresent()) {
33-
RedisModulesClient client = RedisModulesClient.create(config.getUri().get());
34+
Optional<String> uri = config.getUri();
35+
if (uri.isPresent()) {
36+
RedisModulesClient client = RedisModulesClient.create(uri.get());
3437
return new RediSearchSession(typeManager, client.connect(), config);
3538
}
3639
throw new IllegalArgumentException("No Redis URI specified");

subprojects/trino-redisearch/src/main/java/com/redis/trino/RediSearchSession.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313

1414
import java.util.Collections;
1515
import java.util.List;
16+
import java.util.Optional;
1617
import java.util.Set;
1718
import java.util.stream.Collectors;
1819

@@ -89,8 +90,9 @@ public void shutdown() {
8990
}
9091

9192
public List<HostAddress> getAddresses() {
92-
if (config.getUri().isPresent()) {
93-
RedisURI redisURI = RedisURI.create(config.getUri().get());
93+
Optional<String> uri = config.getUri();
94+
if (uri.isPresent()) {
95+
RedisURI redisURI = RedisURI.create(uri.get());
9496
return Collections.singletonList(HostAddress.fromParts(redisURI.getHost(), redisURI.getPort()));
9597
}
9698
return Collections.emptyList();

subprojects/trino-redisearch/src/test/java/com/redis/trino/RediSearchQueryRunner.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,6 @@
1212

1313
import com.google.common.collect.ImmutableList;
1414
import com.google.common.collect.ImmutableMap;
15-
import com.redis.trino.RediSearchConnectorFactory;
16-
import com.redis.trino.RediSearchPlugin;
1715

1816
import io.airlift.log.Logger;
1917
import io.airlift.log.Logging;

subprojects/trino-redisearch/src/test/java/com/redis/trino/TestRediSearchConfig.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@
99
import org.testng.annotations.Test;
1010

1111
import com.google.common.collect.ImmutableMap;
12-
import com.redis.trino.RediSearchConfig;
1312

1413
import io.airlift.configuration.ConfigurationFactory;
1514

subprojects/trino-redisearch/src/test/java/com/redis/trino/TestRediSearchConnectorTest.java

Lines changed: 26 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import static io.trino.spi.type.VarcharType.VARCHAR;
44
import static io.trino.testing.DataProviders.toDataProvider;
55
import static io.trino.testing.MaterializedResult.resultBuilder;
6+
import static io.trino.testing.TestingConnectorBehavior.SUPPORTS_CREATE_TABLE;
67
import static io.trino.testing.TestingConnectorBehavior.SUPPORTS_INSERT;
78
import static io.trino.testing.assertions.Assert.assertEquals;
89
import static io.trino.tpch.TpchTable.CUSTOMER;
@@ -102,22 +103,6 @@ protected TestTable createTableWithDefaultColumns() {
102103
throw new SkipException("test disabled for RediSearch");
103104
}
104105

105-
@Test
106-
public void testLimitMax() {
107-
int maxLimit = 1000000;
108-
// max int
109-
assertQuery("SELECT orderkey FROM orders LIMIT " + maxLimit);
110-
assertQuery("SELECT orderkey FROM orders ORDER BY orderkey LIMIT " + maxLimit);
111-
112-
// max long; a connector may attempt a pushdown while remote system may not
113-
// accept such high limit values
114-
assertQuery("SELECT nationkey FROM nation LIMIT " + maxLimit, "SELECT nationkey FROM nation");
115-
// Currently this is not supported but once it's supported, it should be tested
116-
// with connectors as well
117-
assertQueryFails("SELECT nationkey FROM nation ORDER BY nationkey LIMIT " + Long.MAX_VALUE,
118-
"ORDER BY LIMIT > 2147483647 is not supported");
119-
}
120-
121106
@Override
122107
public void testShowSchemasLikeWithEscape() {
123108
throw new SkipException("Not supported by RediSearch connector");
@@ -158,6 +143,24 @@ public void testShowColumns() {
158143
throw new SkipException("Not supported by RediSearch connector");
159144
}
160145

146+
@Override
147+
@Test
148+
public void testLimitMax() {
149+
int maxLimit = 1000000;
150+
// max int
151+
assertQuery("SELECT orderkey FROM orders LIMIT " + maxLimit);
152+
assertQuery("SELECT orderkey FROM orders ORDER BY orderkey LIMIT " + maxLimit);
153+
154+
// max long; a connector may attempt a pushdown while remote system may not
155+
// accept such high limit values
156+
assertQuery("SELECT nationkey FROM nation LIMIT " + maxLimit, "SELECT nationkey FROM nation");
157+
// Currently this is not supported but once it's supported, it should be tested
158+
// with connectors as well
159+
assertQueryFails("SELECT nationkey FROM nation ORDER BY nationkey LIMIT " + Long.MAX_VALUE,
160+
"ORDER BY LIMIT > 2147483647 is not supported");
161+
}
162+
163+
@SuppressWarnings("resource")
161164
@Test
162165
public void testInsert() {
163166
if (!hasBehavior(SUPPORTS_INSERT)) {
@@ -167,9 +170,7 @@ public void testInsert() {
167170

168171
String query = "SELECT phone, custkey, acctbal FROM customer";
169172

170-
try (QueryRunner queryRunner = getQueryRunner();
171-
TestTable table = new TestTable(queryRunner::execute, "test_insert_",
172-
"AS " + query + " WITH NO DATA")) {
173+
try (TestTable table = new TestTable(getQueryRunner()::execute, "test_insert_", "AS " + query + " WITH NO DATA")) {
173174
assertQuery("SELECT count(*) FROM " + table.getName() + "", "SELECT 0");
174175

175176
assertUpdate("INSERT INTO " + table.getName() + " " + query, "SELECT count(*) FROM customer");
@@ -233,17 +234,20 @@ public void testDescribeTable() {
233234
assertEquals(actualColumns, expectedColumns);
234235
}
235236

237+
@SuppressWarnings("deprecation")
236238
@Test(dataProvider = "testCaseSensitiveDataMappingProvider", enabled = false)
237239
public void testCaseSensitiveDataMapping(DataMappingTestSetup dataMappingTestSetup) {
238240
}
239241

242+
@SuppressWarnings("deprecation")
240243
@Test(dataProvider = "testRediSearchDataMappingSmokeTestDataProvider")
241244
public void testDataMappingSmokeTest(DataMappingTestSetup dataMappingTestSetup) {
242245
testDataMapping(dataMappingTestSetup);
243246
}
244247

248+
@SuppressWarnings("deprecation")
245249
private void testDataMapping(DataMappingTestSetup dataMappingTestSetup) {
246-
skipTestUnless(supportsCreateTable());
250+
skipTestUnless(hasBehavior(SUPPORTS_CREATE_TABLE));
247251

248252
String trinoTypeName = dataMappingTestSetup.getTrinoTypeName();
249253
String sampleValueLiteral = dataMappingTestSetup.getSampleValueLiteral();
@@ -289,12 +293,14 @@ private void testDataMapping(DataMappingTestSetup dataMappingTestSetup) {
289293
assertUpdate("DROP TABLE " + tableName);
290294
}
291295

296+
@SuppressWarnings("deprecation")
292297
@DataProvider
293298
public final Object[][] testRediSearchDataMappingSmokeTestDataProvider() {
294299
return testDataMappingSmokeTestData().stream().map(this::filterDataMappingSmokeTestData)
295300
.flatMap(Optional::stream).collect(toDataProvider());
296301
}
297302

303+
@SuppressWarnings("deprecation")
298304
private List<DataMappingTestSetup> testDataMappingSmokeTestData() {
299305
return ImmutableList.<DataMappingTestSetup>builder()
300306
// .add(new DataMappingTestSetup("boolean", "false", "true"))

subprojects/trino-redisearch/src/test/java/com/redis/trino/TestRediSearchPlugin.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,13 @@
88
import org.testng.annotations.Test;
99

1010
import com.google.common.collect.ImmutableMap;
11-
import com.redis.trino.RediSearchPlugin;
1211

1312
import io.trino.spi.connector.Connector;
1413
import io.trino.spi.connector.ConnectorFactory;
1514
import io.trino.testing.TestingConnectorContext;
1615

1716
public class TestRediSearchPlugin {
17+
1818
private RediSearchServer server;
1919

2020
@BeforeClass

subprojects/trino-redisearch/src/test/java/com/redis/trino/TestRediSearchQueryBuilder.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,6 @@
1212
import org.testng.annotations.Test;
1313

1414
import com.google.common.collect.ImmutableMap;
15-
import com.redis.trino.RediSearchColumnHandle;
16-
import com.redis.trino.RediSearchQueryBuilder;
1715

1816
import io.trino.spi.connector.ColumnHandle;
1917
import io.trino.spi.predicate.Domain;

subprojects/trino-redisearch/src/test/java/com/redis/trino/TestRediSearchTableHandle.java

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,11 @@
11
package com.redis.trino;
22

3-
import io.airlift.json.JsonCodec;
4-
import io.trino.spi.connector.SchemaTableName;
5-
import org.testng.annotations.Test;
3+
import static org.testng.Assert.assertEquals;
64

7-
import com.redis.trino.RediSearchTableHandle;
5+
import org.testng.annotations.Test;
86

9-
import static org.testng.Assert.assertEquals;
7+
import io.airlift.json.JsonCodec;
8+
import io.trino.spi.connector.SchemaTableName;
109

1110
public class TestRediSearchTableHandle
1211
{

0 commit comments

Comments
 (0)