Skip to content

Commit 5b0178e

Browse files
committed
test: create cassandra integration test
Signed-off-by: Otavio Santana <[email protected]>
1 parent d8b6bd4 commit 5b0178e

File tree

4 files changed

+32
-31
lines changed

4 files changed

+32
-31
lines changed

jnosql-cassandra/src/test/java/org/eclipse/jnosql/databases/cassandra/communication/ColumnDatabase.java

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323
import java.util.Map;
2424
import java.util.function.Supplier;
2525

26-
enum ColumnDatabase implements Supplier<CassandraColumnManagerFactory> {
26+
public enum ColumnDatabase implements Supplier<CassandraColumnManagerFactory> {
2727

2828
INSTANCE;
2929

@@ -42,10 +42,18 @@ public CassandraColumnManagerFactory get() {
4242
return cassandraConfiguration.apply(settings);
4343
}
4444

45-
Settings getSettings() {
45+
public Settings getSettings() {
4646
Map<String, Object> configuration = new HashMap<>(ConfigurationReader.from("cassandra.properties"));
47-
configuration.put(CassandraConfigurations.HOST.get()+".1", cassandra.getHost());
48-
configuration.put(CassandraConfigurations.PORT.get(), cassandra.getFirstMappedPort());
47+
configuration.put(CassandraConfigurations.HOST.get()+".1", host());
48+
configuration.put(CassandraConfigurations.PORT.get(), port());
4949
return Settings.of(configuration);
5050
}
51+
52+
public String host() {
53+
return cassandra.getHost();
54+
}
55+
56+
public int port() {
57+
return cassandra.getFirstMappedPort();
58+
}
5159
}

jnosql-cassandra/src/test/java/org/eclipse/jnosql/databases/cassandra/integration/Book.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
import jakarta.nosql.Id;
2020

2121
@Entity
22-
public record Book(@Id String id, @Column("title") String title, @Column("edition") int edition) {
22+
public record Book(@Id("id") String id, @Column("title") String title, @Column("edition") int edition) {
2323

2424

2525
}

jnosql-cassandra/src/test/java/org/eclipse/jnosql/databases/cassandra/integration/TemplateIntegrationTest.java

Lines changed: 19 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -12,46 +12,53 @@
1212
*
1313
* Otavio Santana
1414
*/
15-
package org.eclipse.jnosql.databases.mongodb.integration;
15+
package org.eclipse.jnosql.databases.cassandra.integration;
1616

1717

1818
import jakarta.inject.Inject;
19-
import jakarta.nosql.document.DocumentTemplate;
20-
import org.eclipse.jnosql.databases.mongodb.communication.MongoDBDocumentConfigurations;
19+
import jakarta.nosql.column.ColumnTemplate;
20+
import org.eclipse.jnosql.communication.driver.ConfigurationReader;
21+
import org.eclipse.jnosql.databases.cassandra.communication.CassandraConfigurations;
22+
import org.eclipse.jnosql.databases.cassandra.communication.ColumnDatabase;
2123
import org.eclipse.jnosql.mapping.Convert;
24+
import org.eclipse.jnosql.mapping.column.ColumnEntityConverter;
25+
import org.eclipse.jnosql.mapping.column.spi.ColumnExtension;
2226
import org.eclipse.jnosql.mapping.config.MappingConfigurations;
23-
import org.eclipse.jnosql.mapping.document.DocumentEntityConverter;
24-
import org.eclipse.jnosql.mapping.document.spi.DocumentExtension;
2527
import org.eclipse.jnosql.mapping.reflection.EntityMetadataExtension;
2628
import org.jboss.weld.junit5.auto.AddExtensions;
2729
import org.jboss.weld.junit5.auto.AddPackages;
2830
import org.jboss.weld.junit5.auto.EnableAutoWeld;
2931
import org.junit.jupiter.api.Test;
3032
import org.junit.jupiter.api.condition.EnabledIfSystemProperty;
3133

34+
import java.util.HashMap;
35+
import java.util.Map;
3236
import java.util.Optional;
3337

3438
import static java.util.UUID.randomUUID;
3539
import static org.assertj.core.api.Assertions.assertThat;
3640
import static org.eclipse.jnosql.communication.driver.IntegrationTest.MATCHES;
3741
import static org.eclipse.jnosql.communication.driver.IntegrationTest.NAMED;
38-
import static org.eclipse.jnosql.databases.mongodb.communication.DocumentDatabase.INSTANCE;
3942

4043
@EnableAutoWeld
41-
@AddPackages(value = {Convert.class, DocumentEntityConverter.class})
44+
@AddPackages(value = {Convert.class, ColumnEntityConverter.class})
4245
@AddPackages(Book.class)
4346
@AddExtensions({EntityMetadataExtension.class,
44-
DocumentExtension.class})
47+
ColumnExtension.class})
4548
@EnabledIfSystemProperty(named = NAMED, matches = MATCHES)
4649
class TemplateIntegrationTest {
4750

4851
@Inject
49-
private DocumentTemplate template;
52+
private ColumnTemplate template;
5053

5154
static {
52-
INSTANCE.get("library");
53-
System.setProperty(MongoDBDocumentConfigurations.HOST.get() + ".1", INSTANCE.host());
54-
System.setProperty(MappingConfigurations.DOCUMENT_DATABASE.get(), "library");
55+
Map<String, Object> configuration = new HashMap<>(ConfigurationReader.from("mapping.properties"));
56+
for (Map.Entry<String, Object> entry : configuration.entrySet()) {
57+
System.setProperty(entry.getKey(), entry.getValue().toString());
58+
}
59+
System.setProperty(MappingConfigurations.COLUMN_DATABASE.get(), "library");
60+
System.setProperty(CassandraConfigurations.HOST.get()+".1", ColumnDatabase.INSTANCE.host());
61+
System.setProperty(CassandraConfigurations.PORT.get(), Integer.toString(ColumnDatabase.INSTANCE.port()));
5562
}
5663

5764
@Test

jnosql-cassandra/src/test/resources/cassandra.properties

Lines changed: 0 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,3 @@
1-
#
2-
# Copyright (c) 2017 Otávio Santana and others
3-
# All rights reserved. This program and the accompanying materials
4-
# are made available under the terms of the Eclipse Public License v1.0
5-
# and Apache License v2.0 which accompanies this distribution.
6-
# The Eclipse Public License is available at http://www.eclipse.org/legal/epl-v10.html
7-
# and the Apache License v2.0 is available at http://www.opensource.org/licenses/apache2.0.php.
8-
#
9-
# You may elect to redistribute this code under either of these licenses.
10-
#
11-
# Contributors:
12-
#
13-
# Otavio Santana
14-
#
151
jnosql.cassandra.host.1=localhost
162
jnosql.cassandra.port=9142
173
jnosql.cassandra.query.1=CREATE KEYSPACE IF NOT EXISTS newKeySpace WITH replication = {'class': 'SimpleStrategy', 'replication_factor' : 3};

0 commit comments

Comments
 (0)