Skip to content

Commit 3ab1ac5

Browse files
committed
Adapt backend to new provider calls for Basic and Bearer tokens
1 parent 0909f29 commit 3ab1ac5

File tree

4 files changed

+63
-21
lines changed

4 files changed

+63
-21
lines changed

packages/testkit-backend/src/context.js

Lines changed: 20 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,8 @@ export default class Context {
1515
this._authTokenManagers = {}
1616
this._authTokenManagerGetAuthRequests = {}
1717
this._authTokenManagerOnAuthExpiredRequests = {}
18-
this._expirationBasedAuthTokenProviderRequests = {}
18+
this._bearerAuthTokenProviderRequests = {}
19+
this._basicAuthTokenProviderRequests = {}
1920
this._binder = binder
2021
this._environmentLogLevel = environmentLogLevel
2122
}
@@ -201,16 +202,28 @@ export default class Context {
201202
delete this._authTokenManagerOnAuthExpiredRequests[id]
202203
}
203204

204-
addExpirationBasedAuthTokenProviderRequest (resolve, reject) {
205-
return this._add(this._expirationBasedAuthTokenProviderRequests, { resolve, reject })
205+
addBearerAuthTokenProviderRequest (resolve, reject) {
206+
return this._add(this._bearerAuthTokenProviderRequests, { resolve, reject })
206207
}
207208

208-
getExpirationBasedAuthTokenProviderRequest (id) {
209-
return this._expirationBasedAuthTokenProviderRequests[id]
209+
getBearerAuthTokenProviderRequest (id) {
210+
return this._bearerAuthTokenProviderRequests[id]
210211
}
211212

212-
removeExpirationBasedAuthTokenProviderRequest (id) {
213-
delete this._expirationBasedAuthTokenProviderRequests[id]
213+
removeBearerAuthTokenProviderRequest (id) {
214+
delete this._bearerAuthTokenProviderRequests[id]
215+
}
216+
217+
addBasicAuthTokenProviderRequest (resolve, reject) {
218+
return this._add(this._basicAuthTokenProviderRequests, { resolve, reject })
219+
}
220+
221+
getBasicAuthTokenProviderRequest (id) {
222+
return this._basicAuthTokenProviderRequests[id]
223+
}
224+
225+
removeBasicAuthTokenProviderRequest (id) {
226+
delete this._basicAuthTokenProviderRequests[id]
214227
}
215228

216229
_add (map, object) {

packages/testkit-backend/src/request-handlers-rx.js

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,10 @@ export {
2929
AuthTokenManagerClose,
3030
AuthTokenManagerGetAuthCompleted,
3131
AuthTokenManagerOnAuthExpiredCompleted,
32-
NewExpirationBasedAuthTokenManager,
33-
ExpirationBasedAuthTokenProviderCompleted,
32+
NewBearerAuthTokenManager,
33+
BearerAuthTokenProviderCompleted,
34+
NewBasicAuthTokenManager,
35+
BasicAuthTokenProviderCompleted,
3436
FakeTimeInstall,
3537
FakeTimeTick,
3638
FakeTimeUninstall

packages/testkit-backend/src/request-handlers.js

Lines changed: 27 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -560,28 +560,47 @@ export function AuthTokenManagerOnAuthExpiredCompleted (_, context, { requestId
560560
context.removeAuthTokenManagerOnAuthExpiredRequest(requestId)
561561
}
562562

563-
export function NewExpirationBasedAuthTokenManager ({ neo4j }, context, _, wire) {
564-
const id = context.addAuthTokenManager((expirationBasedAuthTokenManagerId) => {
563+
export function NewBearerAuthTokenManager ({ neo4j }, context, _, wire) {
564+
const id = context.addAuthTokenManager((bearerAuthTokenManagerId) => {
565565
return neo4j.authTokenManagers.bearer({
566566
tokenProvider: () => new Promise((resolve, reject) => {
567-
const id = context.addExpirationBasedAuthTokenProviderRequest(resolve, reject)
568-
wire.writeResponse(responses.ExpirationBasedAuthTokenProviderRequest({ id, expirationBasedAuthTokenManagerId }))
567+
const id = context.addBearerAuthTokenProviderRequest(resolve, reject)
568+
wire.writeResponse(responses.BearerAuthTokenProviderRequest({ id, bearerAuthTokenManagerId }))
569569
})
570570
})
571571
})
572572

573-
wire.writeResponse(responses.ExpirationBasedAuthTokenManager({ id }))
573+
wire.writeResponse(responses.BearerAuthTokenManager({ id }))
574574
}
575575

576-
export function ExpirationBasedAuthTokenProviderCompleted (_, context, { requestId, auth }) {
577-
const request = context.getExpirationBasedAuthTokenProviderRequest(requestId)
576+
export function BearerAuthTokenProviderCompleted (_, context, { requestId, auth }) {
577+
const request = context.getBearerAuthTokenProviderRequest(requestId)
578578
request.resolve({
579579
expiration: auth.data.expiresInMs != null
580580
? new Date(new Date().getTime() + auth.data.expiresInMs)
581581
: undefined,
582582
token: context.binder.parseAuthToken(auth.data.auth.data)
583583
})
584-
context.removeExpirationBasedAuthTokenProviderRequest(requestId)
584+
context.removeBearerAuthTokenProviderRequest(requestId)
585+
}
586+
587+
export function NewBasicAuthTokenManager ({ neo4j }, context, _, wire) {
588+
const id = context.addAuthTokenManager((basicAuthTokenManagerId) => {
589+
return neo4j.authTokenManagers.basic({
590+
tokenProvider: () => new Promise((resolve, reject) => {
591+
const id = context.addBasicAuthTokenProviderRequest(resolve, reject)
592+
wire.writeResponse(responses.BasicAuthTokenProviderRequest({ id, basicAuthTokenManagerId }))
593+
})
594+
})
595+
})
596+
597+
wire.writeResponse(responses.BasicAuthTokenManager({ id }))
598+
}
599+
600+
export function BasicAuthTokenProviderCompleted (_, context, { requestId, auth }) {
601+
const request = context.getBasicAuthTokenProviderRequest(requestId)
602+
request.resolve(context.binder.parseAuthToken(auth.data))
603+
context.removeBasicAuthTokenProviderRequest(requestId)
585604
}
586605

587606
export function GetRoutingTable (_, context, { driverId, database }, wire) {

packages/testkit-backend/src/responses.js

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -119,12 +119,20 @@ export function AuthTokenManagerOnAuthExpiredRequest ({ id, authTokenManagerId,
119119
return response('AuthTokenManagerOnAuthExpiredRequest', { id, authTokenManagerId, auth: AuthorizationToken(auth) })
120120
}
121121

122-
export function ExpirationBasedAuthTokenManager ({ id }) {
123-
return response('ExpirationBasedAuthTokenManager', { id })
122+
export function BearerAuthTokenManager ({ id }) {
123+
return response('BearerAuthTokenManager', { id })
124124
}
125125

126-
export function ExpirationBasedAuthTokenProviderRequest ({ id, expirationBasedAuthTokenManagerId }) {
127-
return response('ExpirationBasedAuthTokenProviderRequest', { id, expirationBasedAuthTokenManagerId })
126+
export function BearerAuthTokenProviderRequest ({ id, bearerAuthTokenManagerId }) {
127+
return response('BearerAuthTokenProviderRequest', { id, bearerAuthTokenManagerId })
128+
}
129+
130+
export function BasicAuthTokenManager ({ id }) {
131+
return response('BasicAuthTokenManager', { id })
132+
}
133+
134+
export function BasicAuthTokenProviderRequest ({ id, basicAuthTokenManagerId }) {
135+
return response('BasicAuthTokenProviderRequest', { id, basicAuthTokenManagerId })
128136
}
129137

130138
export function DriverIsAuthenticated ({ id, authenticated }) {

0 commit comments

Comments
 (0)