Skip to content

Commit c39b35c

Browse files
committed
testkit-backend: Treating SessionLastBookmarks, SessionWriteTransaction and session/transaction parameters
These updates enable stub tests for bookmarks, session and transaction parameters, disconnected and iteration
1 parent 60dfc06 commit c39b35c

File tree

2 files changed

+31
-5
lines changed

2 files changed

+31
-5
lines changed

testkit-backend/context.js

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,6 @@ export default class Context {
4040
}
4141

4242
getSession (id) {
43-
console.log(this._sessions)
4443
return this._sessions[id]
4544
}
4645

testkit-backend/main.js

Lines changed: 31 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,7 @@ class Backend {
8080

8181
case 'NewSession':
8282
{
83-
let { driverId, accessMode, bookmarks, database } = data
83+
let { driverId, accessMode, bookmarks, database, fetchSize } = data
8484
switch (accessMode) {
8585
case 'r':
8686
accessMode = neo4j.session.READ
@@ -96,7 +96,8 @@ class Backend {
9696
const session = driver.session({
9797
defaultAccessMode: accessMode,
9898
bookmarks,
99-
database
99+
database,
100+
fetchSize
100101
})
101102
const id = this._context.addSession(session)
102103
this._writeResponse('Session', { id })
@@ -119,7 +120,7 @@ class Backend {
119120

120121
case 'SessionRun':
121122
{
122-
const { sessionId, cypher, params } = data
123+
const { sessionId, cypher, params, txMeta: metadata, timeout } = data
123124
const session = this._context.getSession(sessionId)
124125
if (params) {
125126
for (const [key, value] of Object.entries(params)) {
@@ -134,7 +135,7 @@ class Backend {
134135
Promise.all(observers.map(obs => obs.completitionPromise()))
135136
.catch(_ => null)
136137
.then(_ => {
137-
const result = session.run(cypher, params)
138+
const result = session.run(cypher, params, { metadata, timeout })
138139
const resultObserver = new ResultObserver({ sessionId })
139140
result.subscribe(resultObserver)
140141
const id = this._context.addResultObserver(resultObserver)
@@ -246,6 +247,32 @@ class Backend {
246247
}
247248
break
248249

250+
case 'SessionLastBookmarks':
251+
{
252+
const { sessionId } = data
253+
const session = this._context.getSession(sessionId)
254+
const bookmarks = session.lastBookmark()
255+
this._writeResponse('Bookmarks', { bookmarks })
256+
}
257+
break
258+
259+
case 'SessionWriteTransaction':
260+
{
261+
const { sessionId } = data
262+
const session = this._context.getSession(sessionId)
263+
session
264+
.writeTransaction(
265+
tx =>
266+
new Promise((resolve, reject) => {
267+
const id = this._context.addTx(tx, sessionId, resolve, reject)
268+
this._writeResponse('RetryableTry', { id })
269+
})
270+
)
271+
.then(_ => this._writeResponse('RetryableDone', null))
272+
.catch(error => this._writeError(error))
273+
}
274+
break
275+
249276
default:
250277
this._writeBackendError('Unknown request: ' + name)
251278
console.log('Unknown request: ' + name)

0 commit comments

Comments
 (0)