attach errorhandler to failed calls and failed connects
This commit is contained in:
+44
-6
@@ -551,14 +551,17 @@ describe("Class binding", ()=>{
|
||||
|
||||
}
|
||||
let serv: RPCServer,
|
||||
sock: RPCSocket,
|
||||
sock: RPCSocket & myExporterIfc,
|
||||
exporter: MyExporter
|
||||
|
||||
before((done)=>{
|
||||
exporter = new MyExporter()
|
||||
serv = new RPCServer(21004, [exporter])
|
||||
sock = new RPCSocket(21004, 'localhost')
|
||||
sock.connect<myExporterIfc>().then(_ => done())
|
||||
const s = new RPCSocket(21004, 'localhost')
|
||||
s.connect<myExporterIfc>().then(conn => {
|
||||
sock = conn
|
||||
done()
|
||||
})
|
||||
})
|
||||
after(() => {
|
||||
sock.destroy()
|
||||
@@ -574,13 +577,11 @@ describe("Class binding", ()=>{
|
||||
|
||||
|
||||
describe("attaching handlers before connecting", ()=>{
|
||||
|
||||
|
||||
it("fires error if server is unreachable", (done)=>{
|
||||
const sock = new RPCSocket(21004, 'localhost')
|
||||
let errorHandleCount = 0
|
||||
|
||||
sock.on('error', (socket) => {
|
||||
sock.on('error', (err) => {
|
||||
//attached listener fires first
|
||||
if(errorHandleCount != 0){
|
||||
console.log("Error handler didn't fire first");
|
||||
@@ -601,4 +602,41 @@ describe("attaching handlers before connecting", ()=>{
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
it("fires error if call is unknown", (done)=>{
|
||||
const serv = new RPCServer(21004)
|
||||
const sock = new RPCSocket(21004, 'localhost')
|
||||
|
||||
sock.on('error', (err) => {
|
||||
sock.destroy()
|
||||
serv.destroy()
|
||||
done()
|
||||
})
|
||||
|
||||
sock.connect().then(_ => {
|
||||
sock.call("unknownRPC123", "AAAAA").catch(e => {
|
||||
console.log("unexpected call catch clause");
|
||||
done(e)
|
||||
})
|
||||
}).catch(e => {
|
||||
console.log("unexpected connect catch clause");
|
||||
done(e)
|
||||
})
|
||||
})
|
||||
|
||||
it("demands catch on method invocation if call is unknown", (done)=>{
|
||||
const serv = new RPCServer(21004)
|
||||
const sock = new RPCSocket(21004, 'localhost')
|
||||
|
||||
sock.connect().then(_ => {
|
||||
sock.call("unknownRPC123", "AAAAA").catch(e => {
|
||||
sock.destroy()
|
||||
serv.destroy()
|
||||
done()
|
||||
})
|
||||
}).catch(e => {
|
||||
console.log("unexpected connect catch clause");
|
||||
done(e)
|
||||
})
|
||||
})
|
||||
})
|
||||
Reference in New Issue
Block a user