Skip to content

Commit d6ac49f

Browse files
Improve testing infrastructure.
1 parent 495bd21 commit d6ac49f

File tree

4 files changed

+17
-26
lines changed

4 files changed

+17
-26
lines changed

src/test/java/org/springframework/data/neo4j/integration/imperative/RepositoryIT.java

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -169,7 +169,7 @@
169169
class RepositoryIT {
170170

171171
protected static Neo4jExtension.Neo4jConnectionSupport neo4jConnectionSupport;
172-
protected static DatabaseSelection databaseSelection = DatabaseSelection.undecided();
172+
protected static final ThreadLocal<DatabaseSelection> databaseSelection = ThreadLocal.withInitial(DatabaseSelection::undecided);
173173

174174
private static final String TEST_PERSON1_NAME = "Test";
175175
private static final String TEST_PERSON2_NAME = "Test2";
@@ -192,10 +192,6 @@ static PersonWithAllConstructor personExample(String sameValue) {
192192
PersonWithAllConstructor person1;
193193
PersonWithAllConstructor person2;
194194

195-
RepositoryIT() {
196-
databaseSelection = DatabaseSelection.undecided();
197-
}
198-
199195
@Nested
200196
class Find extends IntegrationTestBase {
201197

@@ -4515,7 +4511,7 @@ void before() {
45154511
}
45164512

45174513
<T> T doWithSession(Function<Session, T> sessionConsumer) {
4518-
try (Session session = driver.session(bookmarkCapture.createSessionConfig(databaseSelection.getValue()))) {
4514+
try (Session session = driver.session(bookmarkCapture.createSessionConfig(databaseSelection.get().getValue()))) {
45194515
T result = sessionConsumer.apply(session);
45204516
bookmarkCapture.seedWith(session.lastBookmark());
45214517
return result;
@@ -4524,7 +4520,7 @@ <T> T doWithSession(Function<Session, T> sessionConsumer) {
45244520

45254521
void assertWithSession(Consumer<Session> consumer) {
45264522

4527-
try (Session session = driver.session(bookmarkCapture.createSessionConfig(databaseSelection.getValue()))) {
4523+
try (Session session = driver.session(bookmarkCapture.createSessionConfig(databaseSelection.get().getValue()))) {
45284524
consumer.accept(session);
45294525
}
45304526
}
@@ -4577,7 +4573,7 @@ public TransactionTemplate transactionTemplate(PlatformTransactionManager transa
45774573

45784574
@Bean
45794575
public DatabaseSelectionProvider databaseSelectionProvider() {
4580-
return () -> databaseSelection;
4576+
return () -> databaseSelection.get();
45814577
}
45824578
}
45834579
}

src/test/java/org/springframework/data/neo4j/integration/imperative/RepositoryWithADifferentDatabaseIT.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -33,17 +33,15 @@ class RepositoryWithADifferentDatabaseIT extends RepositoryIT {
3333

3434
private static final String TEST_DATABASE_NAME = "aTestDatabase";
3535

36-
RepositoryWithADifferentDatabaseIT() {
37-
databaseSelection = DatabaseSelection.byName(TEST_DATABASE_NAME);
38-
}
39-
4036
@BeforeAll
4137
static void createTestDatabase() {
4238

4339
try (Session session = neo4jConnectionSupport.getDriver().session(SessionConfig.forDatabase("system"))) {
4440

4541
session.run("CREATE DATABASE " + TEST_DATABASE_NAME).consume();
4642
}
43+
44+
databaseSelection.set(DatabaseSelection.byName(TEST_DATABASE_NAME));
4745
}
4846

4947
@AfterAll
@@ -53,5 +51,7 @@ static void dropTestDatabase() {
5351

5452
session.run("DROP DATABASE " + TEST_DATABASE_NAME).consume();
5553
}
54+
55+
databaseSelection.set(DatabaseSelection.undecided());
5656
}
5757
}

src/test/java/org/springframework/data/neo4j/integration/reactive/ReactiveRepositoryIT.java

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -129,7 +129,7 @@
129129
class ReactiveRepositoryIT {
130130

131131
protected static Neo4jExtension.Neo4jConnectionSupport neo4jConnectionSupport;
132-
protected static DatabaseSelection databaseSelection = DatabaseSelection.undecided();
132+
protected static final ThreadLocal<DatabaseSelection> databaseSelection = ThreadLocal.withInitial(DatabaseSelection::undecided);
133133

134134
private static final String TEST_PERSON1_NAME = "Test";
135135
private static final String TEST_PERSON2_NAME = "Test2";
@@ -151,10 +151,6 @@ static PersonWithAllConstructor personExample(String sameValue) {
151151
private PersonWithAllConstructor person1;
152152
private PersonWithAllConstructor person2;
153153

154-
ReactiveRepositoryIT() {
155-
databaseSelection = DatabaseSelection.undecided();
156-
}
157-
158154
@Nested
159155
class Find extends ReactiveIntegrationTestBase {
160156

@@ -2713,7 +2709,7 @@ void before() {
27132709
}
27142710

27152711
<T> T doWithSession(Function<Session, T> sessionConsumer) {
2716-
try (Session session = driver.session(bookmarkCapture.createSessionConfig(databaseSelection.getValue()))) {
2712+
try (Session session = driver.session(bookmarkCapture.createSessionConfig(databaseSelection.get().getValue()))) {
27172713
T result = sessionConsumer.apply(session);
27182714
bookmarkCapture.seedWith(session.lastBookmark());
27192715
return result;
@@ -2722,14 +2718,14 @@ <T> T doWithSession(Function<Session, T> sessionConsumer) {
27222718

27232719
void assertInSession(Consumer<Session> consumer) {
27242720

2725-
try (Session session = driver.session(bookmarkCapture.createSessionConfig(databaseSelection.getValue()))) {
2721+
try (Session session = driver.session(bookmarkCapture.createSessionConfig(databaseSelection.get().getValue()))) {
27262722
consumer.accept(session);
27272723
}
27282724
}
27292725

27302726
RxSession createRxSession() {
27312727

2732-
return driver.rxSession(bookmarkCapture.createSessionConfig(databaseSelection.getValue()));
2728+
return driver.rxSession(bookmarkCapture.createSessionConfig(databaseSelection.get().getValue()));
27332729
}
27342730

27352731
TransactionalOperator getTransactionalOperator() {
@@ -2772,7 +2768,7 @@ public TransactionalOperator transactionalOperator(ReactiveTransactionManager re
27722768
@Override
27732769
@Bean
27742770
public ReactiveDatabaseSelectionProvider reactiveDatabaseSelectionProvider() {
2775-
return Optional.ofNullable(databaseSelection.getValue())
2771+
return Optional.ofNullable(databaseSelection.get().getValue())
27762772
.map(ReactiveDatabaseSelectionProvider::createStaticDatabaseSelectionProvider)
27772773
.orElse(ReactiveDatabaseSelectionProvider.getDefaultSelectionProvider());
27782774
}

src/test/java/org/springframework/data/neo4j/integration/reactive/ReactiveRepositoryWithADifferentDatabaseIT.java

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -33,17 +33,15 @@ class ReactiveRepositoryWithADifferentDatabaseIT extends ReactiveRepositoryIT {
3333

3434
private static final String TEST_DATABASE_NAME = "aTestDatabase";
3535

36-
ReactiveRepositoryWithADifferentDatabaseIT() {
37-
databaseSelection = DatabaseSelection.byName(TEST_DATABASE_NAME);
38-
}
39-
4036
@BeforeAll
4137
static void createTestDatabase() {
4238

4339
try (Session session = neo4jConnectionSupport.getDriver().session(SessionConfig.forDatabase("system"))) {
4440

4541
session.run("CREATE DATABASE " + TEST_DATABASE_NAME).consume();
4642
}
43+
44+
databaseSelection.set(DatabaseSelection.byName(TEST_DATABASE_NAME));
4745
}
4846

4947
@AfterAll
@@ -53,6 +51,7 @@ static void dropTestDatabase() {
5351

5452
session.run("DROP DATABASE " + TEST_DATABASE_NAME).consume();
5553
}
56-
}
5754

55+
databaseSelection.set(DatabaseSelection.undecided());
56+
}
5857
}

0 commit comments

Comments
 (0)