Skip to content

Commit dea9f9e

Browse files
Moved Simple Tests to isolated tests
1 parent 1846bc5 commit dea9f9e

13 files changed

Lines changed: 154 additions & 87 deletions

File tree

spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/shared/tests/SimpleMultipleTest.java renamed to spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/simple/SimpleMultipleTest.java

Lines changed: 23 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -13,33 +13,42 @@
1313
* See the License for the specific language governing permissions and
1414
* limitations under the License.
1515
*/
16-
package software.xdev.spring.data.eclipse.store.integration.shared.tests;
16+
package software.xdev.spring.data.eclipse.store.integration.isolated.tests.simple;
1717

1818
import java.util.List;
1919

2020
import org.junit.jupiter.api.Assertions;
2121
import org.junit.jupiter.api.Test;
2222
import org.springframework.beans.factory.annotation.Autowired;
23+
import org.springframework.test.context.ContextConfiguration;
2324

2425
import software.xdev.spring.data.eclipse.store.helper.TestData;
2526
import software.xdev.spring.data.eclipse.store.helper.TestUtil;
26-
import software.xdev.spring.data.eclipse.store.integration.shared.DefaultTestAnnotations;
27-
import software.xdev.spring.data.eclipse.store.integration.shared.SharedTestConfiguration;
28-
import software.xdev.spring.data.eclipse.store.integration.shared.repositories.Customer;
29-
import software.xdev.spring.data.eclipse.store.integration.shared.repositories.CustomerRepository;
30-
import software.xdev.spring.data.eclipse.store.integration.shared.repositories.Owner;
31-
import software.xdev.spring.data.eclipse.store.integration.shared.repositories.OwnerRepository;
27+
import software.xdev.spring.data.eclipse.store.integration.isolated.IsolatedTestAnnotations;
28+
import software.xdev.spring.data.eclipse.store.integration.isolated.tests.simple.model.Customer;
29+
import software.xdev.spring.data.eclipse.store.integration.isolated.tests.simple.model.CustomerRepository;
30+
import software.xdev.spring.data.eclipse.store.integration.isolated.tests.simple.model.Owner;
31+
import software.xdev.spring.data.eclipse.store.integration.isolated.tests.simple.model.OwnerRepository;
3232

3333

34-
@DefaultTestAnnotations
34+
@IsolatedTestAnnotations
35+
@ContextConfiguration(classes = {SimpleTestConfiguration.class})
3536
class SimpleMultipleTest
3637
{
38+
private final CustomerRepository customerRepository;
39+
private final OwnerRepository ownerRepository;
40+
private final SimpleTestConfiguration configuration;
41+
3742
@Autowired
38-
private CustomerRepository customerRepository;
39-
@Autowired
40-
private OwnerRepository ownerRepository;
41-
@Autowired
42-
private SharedTestConfiguration configuration;
43+
public SimpleMultipleTest(
44+
final CustomerRepository customerRepository,
45+
final OwnerRepository ownerRepository,
46+
final SimpleTestConfiguration configuration)
47+
{
48+
this.customerRepository = customerRepository;
49+
this.ownerRepository = ownerRepository;
50+
this.configuration = configuration;
51+
}
4352

4453
@Test
4554
void testBasicSaveAndFindAll()
@@ -48,8 +57,7 @@ void testBasicSaveAndFindAll()
4857
customer = new Customer(TestData.FIRST_NAME, TestData.LAST_NAME);
4958
this.customerRepository.save(customer);
5059

51-
final Owner
52-
owner = new Owner(TestData.FIRST_NAME, TestData.LAST_NAME);
60+
final Owner owner = new Owner(TestData.FIRST_NAME, TestData.LAST_NAME);
5361
this.ownerRepository.save(owner);
5462

5563
TestUtil.doBeforeAndAfterRestartOfDatastore(

spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/shared/tests/SimpleSingleTest.java renamed to spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/simple/SimpleSingleTest.java

Lines changed: 23 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
* See the License for the specific language governing permissions and
1414
* limitations under the License.
1515
*/
16-
package software.xdev.spring.data.eclipse.store.integration.shared.tests;
16+
package software.xdev.spring.data.eclipse.store.integration.isolated.tests.simple;
1717

1818
import java.util.ArrayList;
1919
import java.util.List;
@@ -22,29 +22,37 @@
2222
import org.junit.jupiter.api.Assertions;
2323
import org.junit.jupiter.api.Test;
2424
import org.springframework.beans.factory.annotation.Autowired;
25+
import org.springframework.test.context.ContextConfiguration;
2526

2627
import software.xdev.spring.data.eclipse.store.helper.TestData;
2728
import software.xdev.spring.data.eclipse.store.helper.TestUtil;
28-
import software.xdev.spring.data.eclipse.store.integration.shared.DefaultTestAnnotations;
29-
import software.xdev.spring.data.eclipse.store.integration.shared.SharedTestConfiguration;
30-
import software.xdev.spring.data.eclipse.store.integration.shared.repositories.Customer;
31-
import software.xdev.spring.data.eclipse.store.integration.shared.repositories.CustomerAsRecord;
32-
import software.xdev.spring.data.eclipse.store.integration.shared.repositories.CustomerAsRecordRepository;
33-
import software.xdev.spring.data.eclipse.store.integration.shared.repositories.CustomerNotCrud;
34-
import software.xdev.spring.data.eclipse.store.integration.shared.repositories.CustomerNotCrudRepository;
35-
import software.xdev.spring.data.eclipse.store.integration.shared.repositories.CustomerRepository;
29+
import software.xdev.spring.data.eclipse.store.integration.isolated.IsolatedTestAnnotations;
30+
import software.xdev.spring.data.eclipse.store.integration.isolated.tests.simple.model.Customer;
31+
import software.xdev.spring.data.eclipse.store.integration.isolated.tests.simple.model.CustomerAsRecord;
32+
import software.xdev.spring.data.eclipse.store.integration.isolated.tests.simple.model.CustomerAsRecordRepository;
33+
import software.xdev.spring.data.eclipse.store.integration.isolated.tests.simple.model.CustomerNotCrud;
34+
import software.xdev.spring.data.eclipse.store.integration.isolated.tests.simple.model.CustomerNotCrudRepository;
35+
import software.xdev.spring.data.eclipse.store.integration.isolated.tests.simple.model.CustomerRepository;
3636

3737

38-
@DefaultTestAnnotations
38+
@IsolatedTestAnnotations
39+
@ContextConfiguration(classes = {SimpleTestConfiguration.class})
3940
class SimpleSingleTest
4041
{
41-
@Autowired
42-
private CustomerRepository repository;
43-
@Autowired
44-
private CustomerAsRecordRepository recordRepository;
42+
private final CustomerRepository repository;
43+
private final CustomerAsRecordRepository recordRepository;
44+
private final SimpleTestConfiguration configuration;
4545

4646
@Autowired
47-
private SharedTestConfiguration configuration;
47+
public SimpleSingleTest(
48+
final CustomerRepository repository,
49+
final CustomerAsRecordRepository recordRepository,
50+
final SimpleTestConfiguration configuration)
51+
{
52+
this.repository = repository;
53+
this.recordRepository = recordRepository;
54+
this.configuration = configuration;
55+
}
4856

4957
@Test
5058
void testNullFindAll()
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
/*
2+
* Copyright © 2024 XDEV Software (https://xdev.software)
3+
*
4+
* Licensed under the Apache License, Version 2.0 (the "License");
5+
* you may not use this file except in compliance with the License.
6+
* You may obtain a copy of the License at
7+
*
8+
* http://www.apache.org/licenses/LICENSE-2.0
9+
*
10+
* Unless required by applicable law or agreed to in writing, software
11+
* distributed under the License is distributed on an "AS IS" BASIS,
12+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13+
* See the License for the specific language governing permissions and
14+
* limitations under the License.
15+
*/
16+
package software.xdev.spring.data.eclipse.store.integration.isolated.tests.simple;
17+
18+
import org.eclipse.serializer.reflect.ClassLoaderProvider;
19+
import org.eclipse.store.integrations.spring.boot.types.configuration.EclipseStoreProperties;
20+
import org.eclipse.store.integrations.spring.boot.types.factories.EmbeddedStorageFoundationFactory;
21+
import org.springframework.beans.factory.annotation.Autowired;
22+
import org.springframework.context.annotation.Configuration;
23+
24+
import software.xdev.spring.data.eclipse.store.integration.TestConfiguration;
25+
import software.xdev.spring.data.eclipse.store.repository.config.EnableEclipseStoreRepositories;
26+
27+
28+
@Configuration
29+
@EnableEclipseStoreRepositories
30+
public class SimpleTestConfiguration extends TestConfiguration
31+
{
32+
@Autowired
33+
protected SimpleTestConfiguration(
34+
final EclipseStoreProperties defaultEclipseStoreProperties,
35+
final EmbeddedStorageFoundationFactory defaultEclipseStoreProvider,
36+
final ClassLoaderProvider classLoaderProvider)
37+
{
38+
super(defaultEclipseStoreProperties, defaultEclipseStoreProvider, classLoaderProvider);
39+
}
40+
}

spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/shared/repositories/CustomerWithChild.java renamed to spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/simple/model/Customer.java

Lines changed: 5 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -13,24 +13,21 @@
1313
* See the License for the specific language governing permissions and
1414
* limitations under the License.
1515
*/
16-
package software.xdev.spring.data.eclipse.store.integration.shared.repositories;
16+
package software.xdev.spring.data.eclipse.store.integration.isolated.tests.simple.model;
1717

1818
import java.util.List;
1919
import java.util.Objects;
2020

2121

22-
public class CustomerWithChild
22+
public class Customer
2323
{
2424
private String firstName;
2525
private String lastName;
2626

27-
private Child child;
28-
29-
public CustomerWithChild(final String firstName, final String lastName, final Child child)
27+
public Customer(final String firstName, final String lastName)
3028
{
3129
this.firstName = firstName;
3230
this.lastName = lastName;
33-
this.child = child;
3431
}
3532

3633
public String getFirstName()
@@ -53,16 +50,6 @@ public void setLastName(final String lastName)
5350
this.lastName = lastName;
5451
}
5552

56-
public Child getChild()
57-
{
58-
return this.child;
59-
}
60-
61-
public void setChild(final Child child)
62-
{
63-
this.child = child;
64-
}
65-
6653
@Override
6754
public String toString()
6855
{
@@ -82,7 +69,7 @@ public boolean equals(final Object o)
8269
{
8370
return false;
8471
}
85-
final CustomerWithChild customer = (CustomerWithChild)o;
72+
final Customer customer = (Customer)o;
8673
return Objects.equals(this.firstName, customer.firstName) && Objects.equals(
8774
this.lastName,
8875
customer.lastName);
@@ -95,9 +82,7 @@ public int hashCode()
9582
}
9683

9784
@SuppressWarnings("OptionalGetWithoutIsPresent")
98-
public static CustomerWithChild getCustomerWithFirstName(
99-
final List<CustomerWithChild> customers,
100-
final String firstName)
85+
public static Customer getCustomerWithFirstName(final List<Customer> customers, final String firstName)
10186
{
10287
return customers.stream().filter(customer -> customer.getFirstName().equals(firstName)).findFirst().get();
10388
}

spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/shared/repositories/CustomerAsRecord.java renamed to spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/simple/model/CustomerAsRecord.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
* See the License for the specific language governing permissions and
1414
* limitations under the License.
1515
*/
16-
package software.xdev.spring.data.eclipse.store.integration.shared.repositories;
16+
package software.xdev.spring.data.eclipse.store.integration.isolated.tests.simple.model;
1717

1818
import java.util.List;
1919

spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/shared/repositories/CustomerAsRecordRepository.java renamed to spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/simple/model/CustomerAsRecordRepository.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
* See the License for the specific language governing permissions and
1414
* limitations under the License.
1515
*/
16-
package software.xdev.spring.data.eclipse.store.integration.shared.repositories;
16+
package software.xdev.spring.data.eclipse.store.integration.isolated.tests.simple.model;
1717

1818
import java.util.Optional;
1919

spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/shared/repositories/CustomerNotCrud.java renamed to spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/simple/model/CustomerNotCrud.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
* See the License for the specific language governing permissions and
1414
* limitations under the License.
1515
*/
16-
package software.xdev.spring.data.eclipse.store.integration.shared.repositories;
16+
package software.xdev.spring.data.eclipse.store.integration.isolated.tests.simple.model;
1717

1818
import java.util.Objects;
1919

spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/shared/repositories/CustomerNotCrudRepository.java renamed to spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/simple/model/CustomerNotCrudRepository.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
* See the License for the specific language governing permissions and
1414
* limitations under the License.
1515
*/
16-
package software.xdev.spring.data.eclipse.store.integration.shared.repositories;
16+
package software.xdev.spring.data.eclipse.store.integration.isolated.tests.simple.model;
1717

1818
import java.util.List;
1919

Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
/*
2+
* Copyright © 2024 XDEV Software (https://xdev.software)
3+
*
4+
* Licensed under the Apache License, Version 2.0 (the "License");
5+
* you may not use this file except in compliance with the License.
6+
* You may obtain a copy of the License at
7+
*
8+
* http://www.apache.org/licenses/LICENSE-2.0
9+
*
10+
* Unless required by applicable law or agreed to in writing, software
11+
* distributed under the License is distributed on an "AS IS" BASIS,
12+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13+
* See the License for the specific language governing permissions and
14+
* limitations under the License.
15+
*/
16+
package software.xdev.spring.data.eclipse.store.integration.isolated.tests.simple.model;
17+
18+
import java.util.List;
19+
import java.util.Optional;
20+
21+
import org.springframework.data.domain.Page;
22+
import org.springframework.data.domain.Pageable;
23+
import org.springframework.data.domain.Sort;
24+
import org.springframework.data.repository.CrudRepository;
25+
import org.springframework.data.repository.PagingAndSortingRepository;
26+
27+
28+
public interface CustomerRepository
29+
extends CrudRepository<Customer, String>, PagingAndSortingRepository<Customer, String>
30+
{
31+
Optional<Customer> findByFirstName(String firstName);
32+
33+
Iterable<Customer> findAllByLastName(String lastName);
34+
35+
@Override
36+
Page<Customer> findAll(Pageable pageable);
37+
38+
Page<Customer> findAllByLastName(String lastName, Pageable pageable);
39+
40+
List<Customer> findByOrderByLastNameAsc();
41+
42+
Iterable<Customer> findAllByLastName(String lastName, Sort sort);
43+
44+
List<Customer> findAllByFirstName(String lastName, Pageable pageable);
45+
}

spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/shared/repositories/Owner.java renamed to spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/simple/model/Owner.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
* See the License for the specific language governing permissions and
1414
* limitations under the License.
1515
*/
16-
package software.xdev.spring.data.eclipse.store.integration.shared.repositories;
16+
package software.xdev.spring.data.eclipse.store.integration.isolated.tests.simple.model;
1717

1818
import java.util.List;
1919
import java.util.Objects;

0 commit comments

Comments
 (0)