use of org.neo4j.driver.Result in project spring-boot by spring-projects.
the class Neo4jHealthIndicatorTests method mockStatementResult.
private Result mockStatementResult(ResultSummary resultSummary, String version, String edition) {
Record record = mock(Record.class);
given(record.get("edition")).willReturn(Values.value(edition));
given(record.get("version")).willReturn(Values.value(version));
Result statementResult = mock(Result.class);
given(statementResult.single()).willReturn(record);
given(statementResult.consume()).willReturn(resultSummary);
return statementResult;
}
use of org.neo4j.driver.Result in project spring-boot by spring-projects.
the class Neo4jHealthIndicatorTests method mockDriver.
private Driver mockDriver(ResultSummary resultSummary, String version, String edition) {
Result statementResult = mockStatementResult(resultSummary, version, edition);
Session session = mock(Session.class);
given(session.run(anyString())).willReturn(statementResult);
Driver driver = mock(Driver.class);
given(driver.session(any(SessionConfig.class))).willReturn(session);
return driver;
}
use of org.neo4j.driver.Result in project spring-boot by spring-projects.
the class Neo4jHealthIndicatorTests method neo4jIsUpWithOneSessionExpiredException.
@Test
void neo4jIsUpWithOneSessionExpiredException() {
ResultSummary resultSummary = ResultSummaryMock.createResultSummary("My Home", "");
Session session = mock(Session.class);
Result statementResult = mockStatementResult(resultSummary, "4711", "some edition");
AtomicInteger count = new AtomicInteger();
given(session.run(anyString())).will((invocation) -> {
if (count.compareAndSet(0, 1)) {
throw new SessionExpiredException("Session expired");
}
return statementResult;
});
Driver driver = mock(Driver.class);
given(driver.session(any(SessionConfig.class))).willReturn(session);
Neo4jHealthIndicator healthIndicator = new Neo4jHealthIndicator(driver);
Health health = healthIndicator.health();
assertThat(health.getStatus()).isEqualTo(Status.UP);
assertThat(health.getDetails()).containsEntry("server", "4711@My Home");
then(session).should(times(2)).close();
}
use of org.neo4j.driver.Result in project zeppelin by apache.
the class Neo4jConnectionManager method execute.
public List<Record> execute(String cypherQuery, InterpreterContext interpreterContext) {
Map<String, Object> params = new HashMap<>();
if (interpreterContext != null) {
ResourcePool resourcePool = interpreterContext.getResourcePool();
Set<String> keys = extractParams(cypherQuery, PROPERTY_PATTERN, REPLACE_CURLY_BRACKETS);
keys.addAll(extractParams(cypherQuery, $_PATTERN, REPLACE_$));
for (String key : keys) {
Resource resource = resourcePool.get(key);
if (resource != null) {
params.put(key, resource.get());
}
}
}
LOGGER.debug("Executing cypher query {} with params {}", cypherQuery, params);
try (Session session = getSession()) {
final Result result = params.isEmpty() ? session.run(cypherQuery) : session.run(cypherQuery, params);
return result.list();
}
}
use of org.neo4j.driver.Result in project spring-boot by spring-projects.
the class Neo4jAutoConfigurationIntegrationTests method driverCanHandleRequest.
@Test
void driverCanHandleRequest() {
try (Session session = this.driver.session();
Transaction tx = session.beginTransaction()) {
Result statementResult = tx.run("MATCH (n:Thing) RETURN n LIMIT 1");
assertThat(statementResult.hasNext()).isFalse();
tx.commit();
}
}
Aggregations