diff --git a/src/plugins/comps/CompsManager.js b/src/plugins/comps/CompsManager.js
index dde296b72d..c362c10345 100644
--- a/src/plugins/comps/CompsManager.js
+++ b/src/plugins/comps/CompsManager.js
@@ -9,7 +9,6 @@ export default class CompsManager extends EventEmitter {
#dataFrame = {};
#telemetryLoadedPromises = [];
#loaded = false;
- #valid = false;
#telemetryProcessors = {};
constructor(openmct, domainObject) {
@@ -19,11 +18,11 @@ export default class CompsManager extends EventEmitter {
}
isValid() {
- return this.#valid;
+ return this.#domainObject.configuration.comps.valid;
}
setValid(valid) {
- this.#valid = valid;
+ this.#domainObject.configuration.comps.valid = valid;
}
#getNextAlphabeticalParameterName() {
diff --git a/src/plugins/comps/components/CompsView.vue b/src/plugins/comps/components/CompsView.vue
index cfd6f0cd53..d1fd5b6eb7 100644
--- a/src/plugins/comps/components/CompsView.vue
+++ b/src/plugins/comps/components/CompsView.vue
@@ -26,7 +26,10 @@
Current Output
-
+
+ {{ currentTestOutput }}
+
+
{{ currentCompOutput }}
---
@@ -128,6 +131,7 @@ const domainObject = inject('domainObject');
const compsManagerPool = inject('compsManagerPool');
const compsManager = CompsManager.getCompsManager(domainObject, openmct, compsManagerPool);
const currentCompOutput = ref(null);
+const currentTestOutput = ref(null);
const testDataApplied = ref(false);
const parameters = ref(null);
const expression = ref(null);
@@ -210,12 +214,15 @@ function applyTestData() {
}, {});
try {
const testOutput = evaluate(expression.value, scope);
- currentCompOutput.value = testOutput;
+ currentTestOutput.value = testOutput;
expressionOutput.value = null;
+ compsManager.setValid(true);
+ compsManager.persist(domainObject);
} catch (error) {
console.error('👎 Error applying test data', error);
- currentCompOutput.value = null;
+ currentTestOutput.value = null;
compsManager.setValid(false);
+ compsManager.persist(domainObject);
expressionOutput.value = error.message;
}
}
diff --git a/src/plugins/comps/plugin.js b/src/plugins/comps/plugin.js
index 964d1ef18d..be7c29fef9 100644
--- a/src/plugins/comps/plugin.js
+++ b/src/plugins/comps/plugin.js
@@ -38,7 +38,8 @@ export default function CompsPlugin() {
domainObject.configuration = {
comps: {
expression: '',
- parameters: []
+ parameters: [],
+ valid: false
}
};
domainObject.composition = [];