diff --git a/index.js b/index.js index 76047d2..272550e 100644 --- a/index.js +++ b/index.js @@ -61,6 +61,10 @@ class AsyncClient { }) } + reconnect (...args) { + return this._client.reconnect(...args); + } + addListener (...args) { return this._client.addListener(...args); } diff --git a/test.js b/test.js index e831115..7a1f228 100644 --- a/test.js +++ b/test.js @@ -131,6 +131,26 @@ function runTests () { return client.end(); }); }); + + test('Calling reconnect after end should resolve once reconnect', t => { + t.plan(2); + + const client = AsyncMQTT.connect(SERVER_URL); + + client.once('reconnect', () => { + t.pass('Reconnect event occured'); + client.once('connect', () => { + client.end(); + }); + }); + + client.once('connect', () => { + client.end().then(() => { + t.pass('End resolved'); + client.reconnect(); + }); + }); + }); } // Taken from MQTT.js tests