fix(TransportRequestPromise): add finally method to TransportRequestP… (#1415)
* fix(TransportRequestPromise): add finally method to TransportRequestPromise interface * fix(TransportRequestPromise): add finally method to transportReturn object * fix(TransportRequestPromise): add finally method tests
This commit is contained in:
1
lib/Transport.d.ts
vendored
1
lib/Transport.d.ts
vendored
@ -120,6 +120,7 @@ export interface TransportRequestCallback {
|
|||||||
|
|
||||||
export interface TransportRequestPromise<T> extends Promise<T> {
|
export interface TransportRequestPromise<T> extends Promise<T> {
|
||||||
abort: () => void;
|
abort: () => void;
|
||||||
|
finally(onFinally?: (() => void) | undefined | null): Promise<T>;
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface TransportGetConnectionOptions {
|
export interface TransportGetConnectionOptions {
|
||||||
|
|||||||
@ -163,6 +163,9 @@ class Transport {
|
|||||||
request.abort()
|
request.abort()
|
||||||
debug('Aborting request', params)
|
debug('Aborting request', params)
|
||||||
return this
|
return this
|
||||||
|
},
|
||||||
|
finally (onFinally) {
|
||||||
|
return p.finally(onFinally)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -124,6 +124,33 @@ test('Error (promises)', t => {
|
|||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
|
test('Finally method (promises)', t => {
|
||||||
|
t.plan(1)
|
||||||
|
|
||||||
|
function handler (req, res) {
|
||||||
|
res.setHeader('Content-Type', 'application/json;utf=8')
|
||||||
|
res.end(JSON.stringify({ hello: 'world' }))
|
||||||
|
}
|
||||||
|
|
||||||
|
buildServer(handler, ({ port }, server) => {
|
||||||
|
const client = new Client({
|
||||||
|
node: `http://localhost:${port}`
|
||||||
|
})
|
||||||
|
|
||||||
|
const request = client.search({
|
||||||
|
index: 'test',
|
||||||
|
q: 'foo:bar'
|
||||||
|
})
|
||||||
|
|
||||||
|
t.type(request.finally, 'function')
|
||||||
|
|
||||||
|
request
|
||||||
|
.finally(() => {
|
||||||
|
server.stop()
|
||||||
|
})
|
||||||
|
})
|
||||||
|
})
|
||||||
|
|
||||||
test('Abort method (callback)', t => {
|
test('Abort method (callback)', t => {
|
||||||
t.plan(3)
|
t.plan(3)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user