diff --git a/openc3-cosmos-cmd-tlm-api/spec/controllers/plugins_controller_spec.rb b/openc3-cosmos-cmd-tlm-api/spec/controllers/plugins_controller_spec.rb index 1e6c33470c..ba78261e53 100644 --- a/openc3-cosmos-cmd-tlm-api/spec/controllers/plugins_controller_spec.rb +++ b/openc3-cosmos-cmd-tlm-api/spec/controllers/plugins_controller_spec.rb @@ -98,6 +98,15 @@ expect(json["files"]).to eq(["INST/screen.txt"]) end + it "returns internal_server_error when the diff fails" do + allow(OpenC3::PluginModel).to receive(:modified_diff).and_raise("boom") + + post :modified_diff, params: {scope: "DEFAULT", plugin_hash: '{"name":"x"}'} + expect(response).to have_http_status(:internal_server_error) + json = JSON.parse(response.body) + expect(json["message"]).to eq("boom") + end + it "returns bad_request on invalid plugin_hash JSON" do post :modified_diff, params: {scope: "DEFAULT", plugin_hash: "not json"} expect(response).to have_http_status(:bad_request) diff --git a/openc3-cosmos-init/plugins/packages/openc3-vue-common/src/tools/admin/ModifiedPluginDialog.vue b/openc3-cosmos-init/plugins/packages/openc3-vue-common/src/tools/admin/ModifiedPluginDialog.vue index c7425dae17..a204e43426 100644 --- a/openc3-cosmos-init/plugins/packages/openc3-vue-common/src/tools/admin/ModifiedPluginDialog.vue +++ b/openc3-cosmos-init/plugins/packages/openc3-vue-common/src/tools/admin/ModifiedPluginDialog.vue @@ -20,13 +20,18 @@ - -