Skip to content

Commit 0f4a6a3

Browse files
committed
Skip tests incompatible with 5.x server
1 parent 14066c4 commit 0f4a6a3

File tree

14 files changed

+821
-936
lines changed

14 files changed

+821
-936
lines changed

driver/pom.xml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -103,10 +103,12 @@
103103
<dependency>
104104
<groupId>org.reactivestreams</groupId>
105105
<artifactId>reactive-streams-tck</artifactId>
106+
<scope>test</scope>
106107
</dependency>
107108
<dependency>
108109
<groupId>ch.qos.logback</groupId>
109110
<artifactId>logback-classic</artifactId>
111+
<scope>test</scope>
110112
</dependency>
111113
</dependencies>
112114

driver/src/test/java/org/neo4j/driver/integration/ConnectionHandlingIT.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
import static org.junit.jupiter.api.Assertions.assertNotNull;
2626
import static org.junit.jupiter.api.Assertions.assertSame;
2727
import static org.junit.jupiter.api.Assertions.assertThrows;
28+
import static org.junit.jupiter.api.Assumptions.assumeTrue;
2829
import static org.mockito.Mockito.atLeastOnce;
2930
import static org.mockito.Mockito.never;
3031
import static org.mockito.Mockito.spy;
@@ -243,6 +244,7 @@ void connectionUsedForTransactionReturnedToThePoolWhenTransactionRolledBack() {
243244

244245
@Test
245246
void connectionUsedForTransactionReturnedToThePoolWhenTransactionFailsToCommitted() {
247+
assumeTrue(neo4j.isNeo4j44OrEarlier());
246248
try (Session session = driver.session()) {
247249
session.run("CREATE CONSTRAINT ON (book:Library) ASSERT exists(book.isbn)");
248250
}

driver/src/test/java/org/neo4j/driver/integration/ErrorIT.java

Lines changed: 18 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -152,22 +152,24 @@ void shouldExplainConnectionError() {
152152

153153
@Test
154154
void shouldHandleFailureAtRunTime() {
155-
String label = UUID.randomUUID().toString(); // avoid clashes with other tests
156-
157-
// given
158-
Transaction tx = session.beginTransaction();
159-
tx.run("CREATE CONSTRAINT ON (a:`" + label + "`) ASSERT a.name IS UNIQUE");
160-
tx.commit();
161-
162-
// and
163-
Transaction anotherTx = session.beginTransaction();
164-
165-
// then expect
166-
ClientException e =
167-
assertThrows(ClientException.class, () -> anotherTx.run("CREATE INDEX ON :`" + label + "`(name)"));
168-
anotherTx.rollback();
169-
assertThat(e.getMessage(), containsString(label));
170-
assertThat(e.getMessage(), containsString("name"));
155+
if (session.isNeo4j44OrEarlier()) {
156+
String label = UUID.randomUUID().toString(); // avoid clashes with other tests
157+
158+
// given
159+
Transaction tx = session.beginTransaction();
160+
tx.run("CREATE CONSTRAINT ON (a:`" + label + "`) ASSERT a.name IS UNIQUE");
161+
tx.commit();
162+
163+
// and
164+
Transaction anotherTx = session.beginTransaction();
165+
166+
// then expect
167+
ClientException e =
168+
assertThrows(ClientException.class, () -> anotherTx.run("CREATE INDEX ON :`" + label + "`(name)"));
169+
anotherTx.rollback();
170+
assertThat(e.getMessage(), containsString(label));
171+
assertThat(e.getMessage(), containsString("name"));
172+
}
171173
}
172174

173175
@Test

driver/src/test/java/org/neo4j/driver/integration/SessionBoltV3IT.java

Lines changed: 71 additions & 62 deletions
Original file line numberDiff line numberDiff line change
@@ -75,37 +75,42 @@ class SessionBoltV3IT {
7575

7676
@Test
7777
void shouldSetTransactionMetadata() {
78-
Map<String, Object> metadata = new HashMap<>();
79-
metadata.put("a", "hello world");
80-
metadata.put("b", LocalDate.now());
81-
metadata.put("c", asList(true, false, true));
78+
if (driver.isNeo4j44OrEarlier()) {
79+
Map<String, Object> metadata = new HashMap<>();
80+
metadata.put("a", "hello world");
81+
metadata.put("b", LocalDate.now());
82+
metadata.put("c", asList(true, false, true));
8283

83-
TransactionConfig config =
84-
TransactionConfig.builder().withMetadata(metadata).build();
84+
TransactionConfig config =
85+
TransactionConfig.builder().withMetadata(metadata).build();
8586

86-
// call listTransactions procedure that should list itself with the specified metadata
87-
Result result = driver.session().run("CALL dbms.listTransactions()", config);
88-
Map<String, Object> receivedMetadata = result.single().get("metaData").asMap();
87+
// call listTransactions procedure that should list itself with the specified metadata
88+
Result result = driver.session().run("CALL dbms.listTransactions()", config);
89+
Map<String, Object> receivedMetadata =
90+
result.single().get("metaData").asMap();
8991

90-
assertEquals(metadata, receivedMetadata);
92+
assertEquals(metadata, receivedMetadata);
93+
}
9194
}
9295

9396
@Test
9497
void shouldSetTransactionMetadataAsync() {
95-
Map<String, Object> metadata = new HashMap<>();
96-
metadata.put("key1", "value1");
97-
metadata.put("key2", 42L);
98+
if (driver.isNeo4j44OrEarlier()) {
99+
Map<String, Object> metadata = new HashMap<>();
100+
metadata.put("key1", "value1");
101+
metadata.put("key2", 42L);
98102

99-
TransactionConfig config =
100-
TransactionConfig.builder().withMetadata(metadata).build();
103+
TransactionConfig config =
104+
TransactionConfig.builder().withMetadata(metadata).build();
101105

102-
// call listTransactions procedure that should list itself with the specified metadata
103-
CompletionStage<Map<String, Object>> metadataFuture = driver.asyncSession()
104-
.runAsync("CALL dbms.listTransactions()", config)
105-
.thenCompose(ResultCursor::singleAsync)
106-
.thenApply(record -> record.get("metaData").asMap());
106+
// call listTransactions procedure that should list itself with the specified metadata
107+
CompletionStage<Map<String, Object>> metadataFuture = driver.asyncSession()
108+
.runAsync("CALL dbms.listTransactions()", config)
109+
.thenCompose(ResultCursor::singleAsync)
110+
.thenApply(record -> record.get("metaData").asMap());
107111

108-
assertEquals(metadata, await(metadataFuture));
112+
assertEquals(metadata, await(metadataFuture));
113+
}
109114
}
110115

111116
@Test
@@ -300,50 +305,54 @@ void shouldSendGoodbyeWhenClosingDriver() {
300305
}
301306

302307
private static void testTransactionMetadataWithAsyncTransactionFunctions(boolean read) {
303-
AsyncSession asyncSession = driver.asyncSession();
304-
Map<String, Object> metadata = new HashMap<>();
305-
metadata.put("foo", "bar");
306-
metadata.put("baz", true);
307-
metadata.put("qux", 12345L);
308-
309-
TransactionConfig config =
310-
TransactionConfig.builder().withMetadata(metadata).build();
311-
312-
// call listTransactions procedure that should list itself with the specified metadata
313-
CompletionStage<Record> singleFuture = read
314-
? asyncSession.readTransactionAsync(
315-
tx -> tx.runAsync("CALL dbms.listTransactions()").thenCompose(ResultCursor::singleAsync),
316-
config)
317-
: asyncSession.writeTransactionAsync(
318-
tx -> tx.runAsync("CALL dbms.listTransactions()").thenCompose(ResultCursor::singleAsync),
319-
config);
320-
321-
CompletionStage<Map<String, Object>> metadataFuture =
322-
singleFuture.thenApply(record -> record.get("metaData").asMap());
323-
324-
assertEquals(metadata, await(metadataFuture));
308+
if (driver.isNeo4j44OrEarlier()) {
309+
AsyncSession asyncSession = driver.asyncSession();
310+
Map<String, Object> metadata = new HashMap<>();
311+
metadata.put("foo", "bar");
312+
metadata.put("baz", true);
313+
metadata.put("qux", 12345L);
314+
315+
TransactionConfig config =
316+
TransactionConfig.builder().withMetadata(metadata).build();
317+
318+
// call listTransactions procedure that should list itself with the specified metadata
319+
CompletionStage<Record> singleFuture = read
320+
? asyncSession.readTransactionAsync(
321+
tx -> tx.runAsync("CALL dbms.listTransactions()").thenCompose(ResultCursor::singleAsync),
322+
config)
323+
: asyncSession.writeTransactionAsync(
324+
tx -> tx.runAsync("CALL dbms.listTransactions()").thenCompose(ResultCursor::singleAsync),
325+
config);
326+
327+
CompletionStage<Map<String, Object>> metadataFuture =
328+
singleFuture.thenApply(record -> record.get("metaData").asMap());
329+
330+
assertEquals(metadata, await(metadataFuture));
331+
}
325332
}
326333

327334
private static void testTransactionMetadataWithTransactionFunctions(boolean read) {
328-
Session session = driver.session();
329-
Map<String, Object> metadata = new HashMap<>();
330-
metadata.put("foo", "bar");
331-
metadata.put("baz", true);
332-
metadata.put("qux", 12345L);
333-
334-
TransactionConfig config =
335-
TransactionConfig.builder().withMetadata(metadata).build();
336-
337-
// call listTransactions procedure that should list itself with the specified metadata
338-
Record single = read
339-
? session.readTransaction(
340-
tx -> tx.run("CALL dbms.listTransactions()").single(), config)
341-
: session.writeTransaction(
342-
tx -> tx.run("CALL dbms.listTransactions()").single(), config);
343-
344-
Map<String, Object> receivedMetadata = single.get("metaData").asMap();
345-
346-
assertEquals(metadata, receivedMetadata);
335+
if (driver.isNeo4j44OrEarlier()) {
336+
Session session = driver.session();
337+
Map<String, Object> metadata = new HashMap<>();
338+
metadata.put("foo", "bar");
339+
metadata.put("baz", true);
340+
metadata.put("qux", 12345L);
341+
342+
TransactionConfig config =
343+
TransactionConfig.builder().withMetadata(metadata).build();
344+
345+
// call listTransactions procedure that should list itself with the specified metadata
346+
Record single = read
347+
? session.readTransaction(
348+
tx -> tx.run("CALL dbms.listTransactions()").single(), config)
349+
: session.writeTransaction(
350+
tx -> tx.run("CALL dbms.listTransactions()").single(), config);
351+
352+
Map<String, Object> receivedMetadata = single.get("metaData").asMap();
353+
354+
assertEquals(metadata, receivedMetadata);
355+
}
347356
}
348357

349358
private static void verifyValidException(Exception error) {

driver/src/test/java/org/neo4j/driver/integration/SessionIT.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@
3535
import static org.junit.jupiter.api.Assertions.assertSame;
3636
import static org.junit.jupiter.api.Assertions.assertThrows;
3737
import static org.junit.jupiter.api.Assertions.assertTrue;
38+
import static org.junit.jupiter.api.Assumptions.assumeTrue;
3839
import static org.mockito.ArgumentMatchers.any;
3940
import static org.mockito.Mockito.spy;
4041
import static org.mockito.Mockito.times;
@@ -677,6 +678,7 @@ public String execute(Transaction tx) {
677678

678679
@Test
679680
void shouldThrowRunFailureImmediatelyAndCloseSuccessfully() {
681+
assumeTrue(neo4j.isNeo4j44OrEarlier());
680682
try (Session session = neo4j.driver().session()) {
681683
ClientException e = assertThrows(ClientException.class, () -> session.run("RETURN 10 / 0"));
682684

@@ -706,6 +708,7 @@ void shouldNotBePossibleToConsumeResultAfterSessionIsClosed() {
706708

707709
@Test
708710
void shouldThrowRunFailureImmediatelyAfterMultipleSuccessfulRunsAndCloseSuccessfully() {
711+
assumeTrue(neo4j.isNeo4j44OrEarlier());
709712
try (Session session = neo4j.driver().session()) {
710713
session.run("CREATE ()");
711714
session.run("CREATE ()");
@@ -717,6 +720,7 @@ void shouldThrowRunFailureImmediatelyAfterMultipleSuccessfulRunsAndCloseSuccessf
717720

718721
@Test
719722
void shouldThrowRunFailureImmediatelyAndAcceptSubsequentRun() {
723+
assumeTrue(neo4j.isNeo4j44OrEarlier());
720724
try (Session session = neo4j.driver().session()) {
721725
session.run("CREATE ()");
722726
session.run("CREATE ()");

0 commit comments

Comments
 (0)