Skip to content

Commit 8c81607

Browse files
authored
Merge pull request #240 from eclipse/increase-test
Increase the test covery at the Repository specializations
2 parents b9af346 + e0ea687 commit 8c81607

File tree

13 files changed

+224
-15
lines changed

13 files changed

+224
-15
lines changed

jnosql-arangodb/src/test/java/org/eclipse/jnosql/databases/arangodb/mapping/ArangoDBDocumentRepositoryProxyTest.java

Lines changed: 34 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@
3535
import java.time.Duration;
3636
import java.util.List;
3737
import java.util.Map;
38+
import java.util.Optional;
3839

3940
import static java.util.Collections.emptyMap;
4041
import static org.junit.jupiter.api.Assertions.assertEquals;
@@ -65,12 +66,13 @@ public class ArangoDBDocumentRepositoryProxyTest {
6566

6667
private PersonRepository personRepository;
6768

69+
@SuppressWarnings("rawtypes")
6870
@BeforeEach
6971
public void setUp() {
7072
this.template = Mockito.mock(ArangoDBTemplate.class);
7173

7274
PersonRepository personRepository = producer.get(PersonRepository.class, template);
73-
ArangoDBDocumentRepositoryProxy handler = new ArangoDBDocumentRepositoryProxy(template,
75+
ArangoDBDocumentRepositoryProxy handler = new ArangoDBDocumentRepositoryProxy<>(template,
7476
PersonRepository.class, personRepository, converters, entitiesMetadata);
7577

7678
when(template.insert(any(Person.class))).thenReturn(new Person());
@@ -98,6 +100,37 @@ public void shouldFindByNameAQL() {
98100
assertEquals("Ada", value.get("name"));
99101
}
100102

103+
@Test
104+
public void shouldSaveUsingInsert() {
105+
Person person = Person.of("Ada", 10);
106+
personRepository.save(person);
107+
verify(template).insert(eq(person));
108+
}
109+
110+
111+
@Test
112+
public void shouldSaveUsingUpdate() {
113+
Person person = Person.of("Ada-2", 10);
114+
when(template.find(Person.class, "Ada-2")).thenReturn(Optional.of(person));
115+
personRepository.save(person);
116+
verify(template).update(eq(person));
117+
}
118+
119+
@Test
120+
public void shouldDelete(){
121+
personRepository.deleteById("id");
122+
verify(template).delete(Person.class, "id");
123+
}
124+
125+
126+
@Test
127+
public void shouldDeleteEntity(){
128+
Person person = Person.of("Ada", 10);
129+
personRepository.delete(person);
130+
verify(template).delete(Person.class, person.getName());
131+
}
132+
133+
101134
interface PersonRepository extends ArangoDBRepository<Person, String> {
102135

103136
@AQL("FOR p IN Person RETURN p")

jnosql-arangodb/src/test/java/org/eclipse/jnosql/databases/arangodb/mapping/Person.java

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -70,9 +70,13 @@ public int hashCode() {
7070

7171
@Override
7272
public String toString() {
73-
String sb = "Person{" + "name='" + name + '\'' +
73+
return "Person{" +
74+
"name='" + name + '\'' +
7475
", age=" + age +
7576
'}';
76-
return sb;
77+
}
78+
79+
public static Person of(String name, Integer age) {
80+
return new Person(name, age);
7781
}
7882
}

jnosql-cassandra/src/test/java/org/eclipse/jnosql/databases/cassandra/mapping/CassandraRepositoryProxyTest.java

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,9 +35,11 @@
3535
import java.time.Duration;
3636
import java.util.List;
3737
import java.util.Map;
38+
import java.util.Optional;
3839

3940
import static org.junit.jupiter.api.Assertions.assertEquals;
4041
import static org.mockito.ArgumentMatchers.any;
42+
import static org.mockito.ArgumentMatchers.eq;
4143
import static org.mockito.Mockito.verify;
4244
import static org.mockito.Mockito.when;
4345

@@ -113,6 +115,35 @@ public void shouldFindByName2CQL() {
113115
assertEquals("Ada", map.get("name"));
114116
}
115117

118+
@Test
119+
public void shouldSaveUsingInsert() {
120+
Person person = new Person("Ada", 10);
121+
personRepository.save(person);
122+
verify(template).insert(eq(person));
123+
}
124+
125+
@Test
126+
public void shouldSaveUsingUpdate() {
127+
Person person = new Person("Ada-2", 10);
128+
when(template.find(Person.class, "Ada-2")).thenReturn(Optional.of(person));
129+
personRepository.save(person);
130+
verify(template).update(eq(person));
131+
}
132+
133+
@Test
134+
public void shouldDelete(){
135+
personRepository.deleteById("id");
136+
verify(template).delete(Person.class, "id");
137+
}
138+
139+
140+
@Test
141+
public void shouldDeleteEntity(){
142+
Person person = new Person("Ada", 10);
143+
personRepository.delete(person);
144+
verify(template).delete(Person.class, person.getName());
145+
}
146+
116147
interface PersonRepository extends CassandraRepository<Person, String> {
117148

118149
void deleteByName(String namel);

jnosql-cassandra/src/test/java/org/eclipse/jnosql/databases/cassandra/mapping/Person.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -82,9 +82,10 @@ public int hashCode() {
8282

8383
@Override
8484
public String toString() {
85-
String sb = "Person{" + "name='" + name + '\'' +
85+
return "Person{" +
86+
"name='" + name + '\'' +
8687
", age=" + age +
88+
", home=" + home +
8789
'}';
88-
return sb;
8990
}
9091
}

jnosql-couchbase/src/test/java/org/eclipse/jnosql/databases/couchbase/mapping/CouchbaseDocumentRepositoryProxyTest.java

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,9 +35,11 @@
3535
import java.lang.reflect.Proxy;
3636
import java.time.Duration;
3737
import java.util.List;
38+
import java.util.Optional;
3839

3940
import static org.junit.jupiter.api.Assertions.assertEquals;
4041
import static org.mockito.ArgumentMatchers.any;
42+
import static org.mockito.ArgumentMatchers.eq;
4143
import static org.mockito.Mockito.verify;
4244
import static org.mockito.Mockito.when;
4345

@@ -98,6 +100,36 @@ public void shouldFindByNameN1ql() {
98100
assertEquals("Ada", value.getString("name"));
99101
}
100102

103+
@Test
104+
public void shouldSaveUsingInsert() {
105+
Person person = Person.of("Ada", 10);
106+
personRepository.save(person);
107+
verify(template).insert(eq(person));
108+
}
109+
110+
111+
@Test
112+
public void shouldSaveUsingUpdate() {
113+
Person person = Person.of("Ada-2", 10);
114+
when(template.find(Person.class, "Ada-2")).thenReturn(Optional.of(person));
115+
personRepository.save(person);
116+
verify(template).update(eq(person));
117+
}
118+
119+
@Test
120+
public void shouldDelete(){
121+
personRepository.deleteById("id");
122+
verify(template).delete(Person.class, "id");
123+
}
124+
125+
126+
@Test
127+
public void shouldDeleteEntity(){
128+
Person person = Person.of("Ada", 10);
129+
personRepository.delete(person);
130+
verify(template).delete(Person.class, person.getName());
131+
}
132+
101133
interface PersonRepository extends CouchbaseRepository<Person, String> {
102134

103135
@N1QL("select * from Person")

jnosql-couchbase/src/test/java/org/eclipse/jnosql/databases/couchbase/mapping/Person.java

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -70,9 +70,13 @@ public int hashCode() {
7070

7171
@Override
7272
public String toString() {
73-
String sb = "Person{" + "name='" + name + '\'' +
73+
return "Person{" +
74+
"name='" + name + '\'' +
7475
", age=" + age +
7576
'}';
76-
return sb;
77+
}
78+
79+
public static Person of(String name, Integer age) {
80+
return new Person(name, age);
7781
}
7882
}

jnosql-hazelcast/src/test/java/org/eclipse/jnosql/databases/hazelcast/mapping/HazelcastRepositoryProxyTest.java

Lines changed: 30 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,13 +36,15 @@
3636
import java.util.HashMap;
3737
import java.util.List;
3838
import java.util.Map;
39+
import java.util.Optional;
3940
import java.util.Set;
4041

4142
import static java.util.Arrays.asList;
4243
import static org.junit.jupiter.api.Assertions.assertNotNull;
4344
import static org.junit.jupiter.api.Assertions.assertTrue;
4445
import static org.mockito.ArgumentMatchers.any;
4546
import static org.mockito.ArgumentMatchers.anyString;
47+
import static org.mockito.ArgumentMatchers.eq;
4648
import static org.mockito.Mockito.verify;
4749
import static org.mockito.Mockito.when;
4850

@@ -64,13 +66,14 @@ public class HazelcastRepositoryProxyTest {
6466
private PersonRepository personRepository;
6567

6668

69+
@SuppressWarnings("rawtypes")
6770
@BeforeEach
6871
public void setUp() {
6972

7073
Collection<Object> people = asList(new Person("Poliana", 25), new Person("Otavio", 28));
7174

7275
when(template.sql(anyString())).thenReturn(people);
73-
HazelcastRepositoryProxy handler = new HazelcastRepositoryProxy(template, PersonRepository.class, repository);
76+
HazelcastRepositoryProxy handler = new HazelcastRepositoryProxy<>(template, PersonRepository.class, repository);
7477

7578
when(template.sql(anyString(), any(Map.class))).thenReturn(people);
7679

@@ -98,6 +101,32 @@ public void shouldFindByAgeAndInteger() {
98101
assertTrue(people.stream().allMatch(Person.class::isInstance));
99102
}
100103

104+
@Test
105+
public void shouldSaveUsingInsert() {
106+
Person person = Person.of("Ada", 10);
107+
personRepository.save(person);
108+
}
109+
110+
111+
@Test
112+
public void shouldSaveUsingUpdate() {
113+
Person person = Person.of("Ada-2", 10);
114+
when(template.find(Person.class, "Ada-2")).thenReturn(Optional.of(person));
115+
personRepository.save(person);
116+
}
117+
118+
@Test
119+
public void shouldDelete(){
120+
personRepository.deleteById("id");
121+
}
122+
123+
124+
@Test
125+
public void shouldDeleteEntity(){
126+
Person person = Person.of("Ada", 10);
127+
personRepository.delete(person);
128+
}
129+
101130

102131
interface PersonRepository extends HazelcastRepository<Person, String> {
103132

jnosql-hazelcast/src/test/java/org/eclipse/jnosql/databases/hazelcast/mapping/Person.java

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -70,9 +70,13 @@ public int hashCode() {
7070

7171
@Override
7272
public String toString() {
73-
String sb = "Person{" + "name='" + name + '\'' +
73+
return "Person{" +
74+
"name='" + name + '\'' +
7475
", age=" + age +
7576
'}';
76-
return sb;
77+
}
78+
79+
public static Person of(String name, Integer age) {
80+
return new Person(name, age);
7781
}
7882
}

jnosql-orientdb/src/test/java/org/eclipse/jnosql/databases/orientdb/mapping/OrientDBDocumentRepositoryProxyTest.java

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,9 +34,11 @@
3434
import java.time.Duration;
3535
import java.util.List;
3636
import java.util.Map;
37+
import java.util.Optional;
3738

3839
import static org.junit.jupiter.api.Assertions.assertEquals;
3940
import static org.mockito.ArgumentMatchers.any;
41+
import static org.mockito.ArgumentMatchers.eq;
4042
import static org.mockito.Mockito.verify;
4143
import static org.mockito.Mockito.when;
4244

@@ -100,6 +102,36 @@ public void shouldFindByNameSQL2() {
100102
assertEquals(10, value.get("age"));
101103
}
102104

105+
@Test
106+
public void shouldSaveUsingInsert() {
107+
Person person = Person.of("Ada", 10);
108+
personRepository.save(person);
109+
verify(template).insert(eq(person));
110+
}
111+
112+
113+
@Test
114+
public void shouldSaveUsingUpdate() {
115+
Person person = Person.of("Ada-2", 10);
116+
when(template.find(Person.class, "Ada-2")).thenReturn(Optional.of(person));
117+
personRepository.save(person);
118+
verify(template).update(eq(person));
119+
}
120+
121+
@Test
122+
public void shouldDelete(){
123+
personRepository.deleteById("id");
124+
verify(template).delete(Person.class, "id");
125+
}
126+
127+
128+
@Test
129+
public void shouldDeleteEntity(){
130+
Person person = Person.of("Ada", 10);
131+
personRepository.delete(person);
132+
verify(template).delete(Person.class, person.getName());
133+
}
134+
103135
interface PersonRepository extends OrientDBCrudRepository<Person, String> {
104136

105137
@SQL("select * from Person")

jnosql-orientdb/src/test/java/org/eclipse/jnosql/databases/orientdb/mapping/Person.java

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -70,9 +70,13 @@ public int hashCode() {
7070

7171
@Override
7272
public String toString() {
73-
String sb = "Person{" + "name='" + name + '\'' +
73+
return "Person{" +
74+
"name='" + name + '\'' +
7475
", age=" + age +
7576
'}';
76-
return sb;
77+
}
78+
79+
public static Person of(String name, Integer age) {
80+
return new Person(name, age);
7781
}
7882
}

0 commit comments

Comments
 (0)