From f37c387d52577455edee2d13950bb3f1d78015c8 Mon Sep 17 00:00:00 2001 From: Hornwitser Date: Wed, 9 Jun 2021 13:10:17 +0200 Subject: [PATCH] Fix instance deleted status not being sent out --- packages/lib/link/messages.js | 2 +- packages/master/src/ControlConnection.js | 2 +- test/integration/clusterio.js | 7 ++++--- 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/packages/lib/link/messages.js b/packages/lib/link/messages.js index 72dbe3a8..6ba0a8a4 100644 --- a/packages/lib/link/messages.js +++ b/packages/lib/link/messages.js @@ -374,7 +374,7 @@ let instanceProperties = { "assigned_slave": { type: ["null", "integer"] }, "status": { enum: [ "unknown", "unassigned", "stopped", "starting", "running", "stopping", - "creating_save", "exporting_data", + "creating_save", "exporting_data", "deleted", ]}, }; diff --git a/packages/master/src/ControlConnection.js b/packages/master/src/ControlConnection.js index ad53cb0b..ddf42e83 100644 --- a/packages/master/src/ControlConnection.js +++ b/packages/master/src/ControlConnection.js @@ -252,7 +252,7 @@ class ControlConnection extends BaseConnection { let prev = instance.status; instance.status = "deleted"; - this.instanceUpdated(instance); + this._master.instanceUpdated(instance); await libPlugin.invokeHook(this._master.plugins, "onInstanceStatusChanged", instance, prev); } diff --git a/test/integration/clusterio.js b/test/integration/clusterio.js index 474c86e4..990c52ec 100644 --- a/test/integration/clusterio.js +++ b/test/integration/clusterio.js @@ -501,9 +501,10 @@ describe("Integration of Clusterio", function() { describe("instanceUpdateEventHandler()", function() { it("should have triggered for the previous instance status updates", function() { - let statusesToCheck = new Set( - ["unassigned", "stopped", "creating_save", "exporting_data", "starting", "running", "stopping"] - ); + let statusesToCheck = new Set([ + "unassigned", "stopped", "creating_save", "exporting_data", + "starting", "running", "stopping", "deleted", + ]); let statusesNotSeen = new Set(statusesToCheck); for (let update of getControl().instanceUpdates) {