Skip to content

Commit 1c3d161

Browse files
committed
feat: Added getters on Admin
1 parent 7f65a62 commit 1c3d161

File tree

5 files changed

+72
-24
lines changed

5 files changed

+72
-24
lines changed

core/redis-enterprise-admin/src/main/java/com/redis/enterprise/Admin.java

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -86,6 +86,26 @@ public void close() throws IOException {
8686
}
8787
}
8888

89+
public String getUserName() {
90+
return userName;
91+
}
92+
93+
public int getPort() {
94+
return port;
95+
}
96+
97+
public String getProtocol() {
98+
return protocol;
99+
}
100+
101+
public String getPassword() {
102+
return password;
103+
}
104+
105+
public String getHost() {
106+
return host;
107+
}
108+
89109
public Admin withHost(String host) {
90110
this.host = host;
91111
return this;

core/redis-enterprise-admin/src/test/java/com/redis/enterprise/AdminTests.java renamed to core/redis-enterprise-admin/src/test/java/com/redis/enterprise/AbstractTestBase.java

Lines changed: 10 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -18,40 +18,28 @@
1818
import org.junit.jupiter.api.Test;
1919
import org.junit.jupiter.api.TestInstance;
2020
import org.junit.jupiter.api.TestInstance.Lifecycle;
21-
import org.junit.jupiter.api.condition.EnabledOnOs;
22-
import org.junit.jupiter.api.condition.OS;
2321
import org.springframework.util.unit.DataSize;
24-
import org.testcontainers.junit.jupiter.Container;
25-
import org.testcontainers.junit.jupiter.Testcontainers;
26-
27-
import com.redis.testcontainers.RedisEnterpriseContainer;
2822

2923
import io.lettuce.core.RedisURI;
3024
import io.lettuce.core.cluster.RedisClusterClient;
3125
import io.lettuce.core.cluster.api.StatefulRedisClusterConnection;
3226

33-
@Testcontainers
3427
@TestInstance(Lifecycle.PER_CLASS)
35-
@EnabledOnOs(value = OS.LINUX)
36-
class AdminTests {
37-
38-
private static final Logger log = Logger.getLogger(AdminTests.class.getName());
28+
abstract class AbstractTestBase {
3929

40-
@Container
41-
private static RedisEnterpriseContainer server = new RedisEnterpriseContainer(
42-
RedisEnterpriseContainer.DEFAULT_IMAGE_NAME.withTag(RedisEnterpriseContainer.DEFAULT_TAG));
30+
private static final Logger log = Logger.getLogger(AbstractTestBase.class.getName());
4331

44-
private static Admin admin;
32+
protected Admin admin;
4533

4634
@BeforeAll
47-
static void setupAdmin() throws ParseException, GeneralSecurityException, IOException {
48-
admin = new Admin();
49-
admin.withUserName(RedisEnterpriseContainer.ADMIN_USERNAME)
50-
.withPassword(RedisEnterpriseContainer.ADMIN_PASSWORD).withHost(server.getHost());
35+
void setupAdmin() throws ParseException, GeneralSecurityException, IOException {
36+
admin = admin();
5137
}
5238

39+
protected abstract Admin admin();
40+
5341
@AfterAll
54-
static void teardownAdmin() throws Exception {
42+
void teardownAdmin() throws Exception {
5543
admin.close();
5644
}
5745

@@ -77,13 +65,12 @@ void createDatabase() throws ParseException, GeneralSecurityException, IOExcepti
7765
@Test
7866
void createClusterDatabase() throws ParseException, GeneralSecurityException, IOException {
7967
String databaseName = "CreateClusterDBTest";
80-
admin.createDatabase(Database.builder().name(databaseName).ossCluster(true)
81-
.port(RedisEnterpriseContainer.DEFAULT_DATABASE_PORT).build());
68+
admin.createDatabase(Database.builder().name(databaseName).ossCluster(true).port(12000).build());
8269
List<Database> databases = admin.getDatabases();
8370
Assertions.assertEquals(1, databases.size());
8471
Assertions.assertEquals(databaseName, databases.get(0).getName());
8572
Database database = databases.get(0);
86-
RedisClusterClient client = RedisClusterClient.create(RedisURI.create(server.getHost(), database.getPort()));
73+
RedisClusterClient client = RedisClusterClient.create(RedisURI.create(admin.getHost(), database.getPort()));
8774
try (StatefulRedisClusterConnection<String, String> connection = client.connect()) {
8875
Assertions.assertEquals("PONG", connection.sync().ping());
8976
}
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
package com.redis.enterprise;
2+
3+
import org.junit.jupiter.api.condition.EnabledOnOs;
4+
import org.junit.jupiter.api.condition.OS;
5+
import org.testcontainers.junit.jupiter.Container;
6+
import org.testcontainers.junit.jupiter.Testcontainers;
7+
8+
import com.redis.testcontainers.RedisEnterpriseContainer;
9+
10+
@Testcontainers
11+
@EnabledOnOs(value = OS.LINUX)
12+
class RedisEnterpriseContainerTests extends AbstractTestBase {
13+
14+
@Container
15+
private static RedisEnterpriseContainer server = new RedisEnterpriseContainer(
16+
RedisEnterpriseContainer.DEFAULT_IMAGE_NAME.withTag(RedisEnterpriseContainer.DEFAULT_TAG));
17+
18+
@Override
19+
protected Admin admin() {
20+
Admin admin = new Admin();
21+
admin.withHost(server.getHost());
22+
return admin;
23+
}
24+
25+
}
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
package com.redis.enterprise;
2+
3+
import org.junit.jupiter.api.condition.EnabledOnOs;
4+
import org.junit.jupiter.api.condition.OS;
5+
6+
@EnabledOnOs(value = OS.MAC)
7+
class RedisEnterpriseServerTests extends AbstractTestBase {
8+
9+
@Override
10+
protected Admin admin() {
11+
Admin admin = new Admin();
12+
admin.withHost("nuc");
13+
return admin;
14+
}
15+
16+
}

gradle.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ springBootVersion = 3.2.2
88

99
jacocoVersion = 0.8.11
1010
lettucemodVersion = 3.7.3
11-
testcontainersRedisVersion = 2.0.2
11+
testcontainersRedisVersion = 2.0.3-SNAPSHOT
1212

1313
org.gradle.daemon = false
1414
org.gradle.caching = false

0 commit comments

Comments
 (0)