@finos/legend-application-studio 27.1.0 → 27.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/__lib__/LegendStudioEvent.d.ts +1 -0
- package/lib/__lib__/LegendStudioEvent.d.ts.map +1 -1
- package/lib/__lib__/LegendStudioEvent.js +1 -0
- package/lib/__lib__/LegendStudioEvent.js.map +1 -1
- package/lib/components/editor/editor-group/data-editor/EmbeddedDataEditor.d.ts.map +1 -1
- package/lib/components/editor/editor-group/data-editor/EmbeddedDataEditor.js +5 -4
- package/lib/components/editor/editor-group/data-editor/EmbeddedDataEditor.js.map +1 -1
- package/lib/components/editor/editor-group/data-editor/RelationalCSVDataEditor.d.ts.map +1 -1
- package/lib/components/editor/editor-group/data-editor/RelationalCSVDataEditor.js +62 -12
- package/lib/components/editor/editor-group/data-editor/RelationalCSVDataEditor.js.map +1 -1
- package/lib/components/editor/editor-group/mapping-editor/MappingTestableEditor.d.ts +1 -1
- package/lib/components/editor/editor-group/mapping-editor/MappingTestableEditor.d.ts.map +1 -1
- package/lib/components/editor/editor-group/mapping-editor/MappingTestableEditor.js +101 -137
- package/lib/components/editor/editor-group/mapping-editor/MappingTestableEditor.js.map +1 -1
- package/lib/components/editor/editor-group/testable/TestableSharedComponents.d.ts +11 -0
- package/lib/components/editor/editor-group/testable/TestableSharedComponents.d.ts.map +1 -1
- package/lib/components/editor/editor-group/testable/TestableSharedComponents.js +27 -2
- package/lib/components/editor/editor-group/testable/TestableSharedComponents.js.map +1 -1
- package/lib/index.css +2 -2
- package/lib/index.css.map +1 -1
- package/lib/package.json +1 -1
- package/lib/stores/editor/NewElementState.d.ts.map +1 -1
- package/lib/stores/editor/NewElementState.js.map +1 -1
- package/lib/stores/editor/editor-state/element-editor-state/data/DataEditorState.d.ts +2 -2
- package/lib/stores/editor/editor-state/element-editor-state/data/DataEditorState.d.ts.map +1 -1
- package/lib/stores/editor/editor-state/element-editor-state/data/DataEditorState.js +2 -2
- package/lib/stores/editor/editor-state/element-editor-state/data/DataEditorState.js.map +1 -1
- package/lib/stores/editor/editor-state/element-editor-state/data/EmbeddedDataState.d.ts +14 -19
- package/lib/stores/editor/editor-state/element-editor-state/data/EmbeddedDataState.d.ts.map +1 -1
- package/lib/stores/editor/editor-state/element-editor-state/data/EmbeddedDataState.js +30 -65
- package/lib/stores/editor/editor-state/element-editor-state/data/EmbeddedDataState.js.map +1 -1
- package/lib/stores/editor/editor-state/element-editor-state/mapping/testable/MappingTestableState.d.ts +56 -78
- package/lib/stores/editor/editor-state/element-editor-state/mapping/testable/MappingTestableState.d.ts.map +1 -1
- package/lib/stores/editor/editor-state/element-editor-state/mapping/testable/MappingTestableState.js +285 -384
- package/lib/stores/editor/editor-state/element-editor-state/mapping/testable/MappingTestableState.js.map +1 -1
- package/lib/stores/editor/editor-state/element-editor-state/mapping/testable/MappingTestingHelper.d.ts +23 -0
- package/lib/stores/editor/editor-state/element-editor-state/mapping/testable/MappingTestingHelper.d.ts.map +1 -0
- package/lib/stores/editor/editor-state/element-editor-state/mapping/testable/MappingTestingHelper.js +129 -0
- package/lib/stores/editor/editor-state/element-editor-state/mapping/testable/MappingTestingHelper.js.map +1 -0
- package/lib/stores/editor/editor-state/element-editor-state/service/ServiceEditorState.d.ts.map +1 -1
- package/lib/stores/editor/editor-state/element-editor-state/service/ServiceEditorState.js +2 -2
- package/lib/stores/editor/editor-state/element-editor-state/service/ServiceEditorState.js.map +1 -1
- package/lib/stores/editor/editor-state/element-editor-state/service/testable/ServiceTestDataState.d.ts +1 -0
- package/lib/stores/editor/editor-state/element-editor-state/service/testable/ServiceTestDataState.d.ts.map +1 -1
- package/lib/stores/editor/editor-state/element-editor-state/service/testable/ServiceTestDataState.js +12 -2
- package/lib/stores/editor/editor-state/element-editor-state/service/testable/ServiceTestDataState.js.map +1 -1
- package/lib/stores/editor/editor-state/element-editor-state/service/testable/ServiceTestableState.d.ts.map +1 -1
- package/lib/stores/editor/editor-state/element-editor-state/service/testable/ServiceTestableState.js +15 -8
- package/lib/stores/editor/editor-state/element-editor-state/service/testable/ServiceTestableState.js.map +1 -1
- package/lib/stores/editor/editor-state/element-editor-state/testable/TestAssertionState.d.ts +7 -4
- package/lib/stores/editor/editor-state/element-editor-state/testable/TestAssertionState.d.ts.map +1 -1
- package/lib/stores/editor/editor-state/element-editor-state/testable/TestAssertionState.js +53 -10
- package/lib/stores/editor/editor-state/element-editor-state/testable/TestAssertionState.js.map +1 -1
- package/lib/stores/editor/editor-state/element-editor-state/testable/TestableEditorState.d.ts +2 -1
- package/lib/stores/editor/editor-state/element-editor-state/testable/TestableEditorState.d.ts.map +1 -1
- package/lib/stores/editor/editor-state/element-editor-state/testable/TestableEditorState.js +20 -16
- package/lib/stores/editor/editor-state/element-editor-state/testable/TestableEditorState.js.map +1 -1
- package/lib/stores/editor/sidebar-state/testable/GlobalTestRunnerState.d.ts +1 -1
- package/lib/stores/editor/sidebar-state/testable/GlobalTestRunnerState.d.ts.map +1 -1
- package/lib/stores/editor/sidebar-state/testable/GlobalTestRunnerState.js +3 -0
- package/lib/stores/editor/sidebar-state/testable/GlobalTestRunnerState.js.map +1 -1
- package/lib/stores/editor/utils/MockDataUtils.d.ts.map +1 -1
- package/lib/stores/editor/utils/MockDataUtils.js +3 -0
- package/lib/stores/editor/utils/MockDataUtils.js.map +1 -1
- package/lib/stores/editor/utils/TestableUtils.d.ts +11 -1
- package/lib/stores/editor/utils/TestableUtils.d.ts.map +1 -1
- package/lib/stores/editor/utils/TestableUtils.js +50 -1
- package/lib/stores/editor/utils/TestableUtils.js.map +1 -1
- package/lib/stores/graph-modifier/DSL_Mapping_GraphModifierHelper.d.ts +5 -4
- package/lib/stores/graph-modifier/DSL_Mapping_GraphModifierHelper.d.ts.map +1 -1
- package/lib/stores/graph-modifier/DSL_Mapping_GraphModifierHelper.js +4 -1
- package/lib/stores/graph-modifier/DSL_Mapping_GraphModifierHelper.js.map +1 -1
- package/package.json +6 -6
- package/src/__lib__/LegendStudioEvent.ts +1 -1
- package/src/components/editor/editor-group/data-editor/EmbeddedDataEditor.tsx +34 -37
- package/src/components/editor/editor-group/data-editor/RelationalCSVDataEditor.tsx +134 -31
- package/src/components/editor/editor-group/mapping-editor/MappingTestableEditor.tsx +296 -414
- package/src/components/editor/editor-group/testable/TestableSharedComponents.tsx +88 -3
- package/src/stores/editor/NewElementState.ts +0 -1
- package/src/stores/editor/editor-state/element-editor-state/data/DataEditorState.ts +7 -1
- package/src/stores/editor/editor-state/element-editor-state/data/EmbeddedDataState.ts +48 -77
- package/src/stores/editor/editor-state/element-editor-state/mapping/testable/MappingTestableState.ts +407 -617
- package/src/stores/editor/editor-state/element-editor-state/mapping/testable/MappingTestingHelper.ts +243 -0
- package/src/stores/editor/editor-state/element-editor-state/service/ServiceEditorState.ts +6 -2
- package/src/stores/editor/editor-state/element-editor-state/service/testable/ServiceTestDataState.ts +18 -1
- package/src/stores/editor/editor-state/element-editor-state/service/testable/ServiceTestableState.ts +20 -12
- package/src/stores/editor/editor-state/element-editor-state/testable/TestAssertionState.ts +76 -18
- package/src/stores/editor/editor-state/element-editor-state/testable/TestableEditorState.ts +29 -24
- package/src/stores/editor/sidebar-state/testable/GlobalTestRunnerState.ts +4 -1
- package/src/stores/editor/utils/MockDataUtils.ts +2 -0
- package/src/stores/editor/utils/TestableUtils.ts +73 -0
- package/src/stores/graph-modifier/DSL_Mapping_GraphModifierHelper.ts +15 -12
- package/tsconfig.json +1 -0
@@ -15,51 +15,31 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-run
|
|
15
15
|
* limitations under the License.
|
16
16
|
*/
|
17
17
|
import { observer } from 'mobx-react-lite';
|
18
|
-
import { ModelStore, Database, getMappingCompatibleClasses,
|
18
|
+
import { ModelStore, Database, getMappingCompatibleClasses, isStubbed_RawLambda, stub_RawLambda, MappingTest, PackageableElementExplicitReference, DataElementReference, } from '@finos/legend-graph';
|
19
19
|
import { forwardRef, useEffect, useRef, useState } from 'react';
|
20
|
-
import { BlankPanelPlaceholder, CaretDownIcon, clsx, compareLabelFn, CustomSelectorInput, Dialog, DropdownMenu, MenuContent, MenuContentItem, Modal, ModalBody, ModalFooter, ModalFooterButton, ModalTitle, PanelContent, PanelFormTextField, PencilIcon, PlusIcon, ResizablePanel, ResizablePanelGroup, ResizablePanelSplitter, ResizablePanelSplitterLine, RunAllIcon, RunErrorsIcon,
|
21
|
-
import { assertErrorThrown,
|
22
|
-
import {
|
23
|
-
import { useApplicationStore } from '@finos/legend-application';
|
20
|
+
import { BlankPanelPlaceholder, CaretDownIcon, clsx, compareLabelFn, CustomSelectorInput, Dialog, DropdownMenu, MenuContent, MenuContentItem, Modal, ModalBody, ModalFooter, ModalFooterButton, ModalTitle, PanelContent, PanelFormTextField, PencilIcon, PlusIcon, ResizablePanel, ResizablePanelGroup, ResizablePanelSplitter, ResizablePanelSplitterLine, RunAllIcon, RunErrorsIcon, PanelLoadingIndicator, ContextMenu, ModalHeader, PanelFormSection, PlayIcon, } from '@finos/legend-art';
|
21
|
+
import { assertErrorThrown, filterByType, prettyCONSTName, returnUndefOnError, uniq, } from '@finos/legend-shared';
|
22
|
+
import { useApplicationNavigationContext, useApplicationStore, } from '@finos/legend-application';
|
24
23
|
import { flowResult } from 'mobx';
|
25
24
|
import { QueryBuilderTextEditorMode, } from '@finos/legend-query-builder';
|
26
25
|
import { MappingExecutionQueryBuilderState } from '../../../../stores/editor/editor-state/element-editor-state/mapping/MappingExecutionQueryBuilderState.js';
|
27
26
|
import { CODE_EDITOR_LANGUAGE, CodeEditor, } from '@finos/legend-lego/code-editor';
|
28
|
-
import {
|
29
|
-
import {
|
30
|
-
import { RenameModal, TestAssertionEditor, TestAssertionItem, } from '../testable/TestableSharedComponents.js';
|
27
|
+
import { atomicTest_setDoc } from '../../../../stores/graph-modifier/Testable_GraphModifierHelper.js';
|
28
|
+
import { RenameModal, SharedDataElementModal, TestAssertionEditor, } from '../testable/TestableSharedComponents.js';
|
31
29
|
import { EmbeddedDataEditor } from '../data-editor/EmbeddedDataEditor.js';
|
32
|
-
import { TESTABLE_RESULT, getTestableResultFromTestResult, } from '../../../../stores/editor/sidebar-state/testable/GlobalTestRunnerState.js';
|
30
|
+
import { TESTABLE_RESULT, getTestableResultFromTestResult, getTestableResultFromTestResults, } from '../../../../stores/editor/sidebar-state/testable/GlobalTestRunnerState.js';
|
33
31
|
import { getTestableResultIcon } from '../../side-bar/testable/GlobalTestRunner.js';
|
34
|
-
import { validateTestableId } from '../../../../stores/editor/utils/TestableUtils.js';
|
32
|
+
import { EmbeddedDataCreatorFromEmbeddedData, validateTestableId, } from '../../../../stores/editor/utils/TestableUtils.js';
|
35
33
|
import { getMappingStores } from '../../../../stores/editor/editor-state/element-editor-state/mapping/MappingEditorState.js';
|
36
34
|
import { EmbeddedDataType } from '../../../../stores/editor/editor-state/ExternalFormatState.js';
|
37
35
|
import { buildElementOption, getPackageableElementOptionFormatter, } from '@finos/legend-lego/graph-editor';
|
38
|
-
|
39
|
-
const SOURCE_CLASS_FORM_PROMPT = 'Source class to provide test data for';
|
40
|
-
const TARGET_CLASS_FORM_TITLE = 'Target Class To Test';
|
41
|
-
const TARGET_CLASS_FORM_PROMPT = 'Mapped class for which you would like to build test query';
|
36
|
+
import { LEGEND_STUDIO_APPLICATION_NAVIGATION_CONTEXT_KEY } from '../../../../__lib__/LegendStudioApplicationNavigationContext.js';
|
42
37
|
const CreateTestSuiteModal = observer((props) => {
|
43
|
-
const {
|
38
|
+
const { creatorState } = props;
|
39
|
+
const mappingTestableState = creatorState.mappingTestableState;
|
44
40
|
const mappingEditorState = mappingTestableState.mappingEditorState;
|
45
41
|
const mapping = mappingEditorState.mapping;
|
46
|
-
const creatorState = mappingTestableState.createSuiteState;
|
47
42
|
const editorStore = mappingEditorState.editorStore;
|
48
|
-
// quick funcs
|
49
|
-
const getDefaultSuite = (val) => {
|
50
|
-
if (val) {
|
51
|
-
const rootSetImpl = getRootSetImplementation(mapping, val);
|
52
|
-
if (rootSetImpl instanceof RelationalInstanceSetImplementation ||
|
53
|
-
rootSetImpl instanceof EmbeddedRelationalInstanceSetImplementation ||
|
54
|
-
rootSetImpl instanceof EmbeddedRelationalInstanceSetImplementation) {
|
55
|
-
return MAPPING_TEST_SUITE_TYPE.DATA;
|
56
|
-
}
|
57
|
-
else {
|
58
|
-
return MAPPING_TEST_SUITE_TYPE.QUERY;
|
59
|
-
}
|
60
|
-
}
|
61
|
-
return MAPPING_TEST_SUITE_TYPE.QUERY;
|
62
|
-
};
|
63
43
|
// Class mapping selector
|
64
44
|
const compatibleClasses = getMappingCompatibleClasses(mapping, editorStore.graphManagerState.usableClasses);
|
65
45
|
const inputRef = useRef(null);
|
@@ -78,86 +58,73 @@ const CreateTestSuiteModal = observer((props) => {
|
|
78
58
|
}
|
79
59
|
: null;
|
80
60
|
// init states
|
81
|
-
const [suiteType, setSuiteType] = useState(getDefaultSuite(selectedClass));
|
82
61
|
const [suiteName, setSuiteName] = useState(undefined);
|
83
62
|
const [testName, setTestName] = useState(undefined);
|
84
63
|
const isValid = selectedClass && suiteName && testName;
|
85
64
|
const changeClassOption = (val) => {
|
86
65
|
if (val?.value) {
|
87
66
|
setSelectedClass(val.value);
|
88
|
-
setSuiteType(getDefaultSuite(val.value));
|
89
67
|
}
|
90
68
|
else {
|
91
69
|
setSelectedClass(undefined);
|
92
|
-
setSuiteType(getDefaultSuite(undefined));
|
93
70
|
}
|
94
71
|
};
|
95
72
|
// model
|
96
|
-
const close = () =>
|
73
|
+
const close = () => mappingTestableState.closeCreateModal();
|
97
74
|
const create = () => {
|
98
75
|
if (selectedClass && suiteName && testName) {
|
99
|
-
flowResult(creatorState.createAndAddTestSuite(selectedClass,
|
76
|
+
flowResult(creatorState.createAndAddTestSuite(selectedClass, suiteName, testName)).catch(editorStore.applicationStore.alertUnhandledError);
|
100
77
|
}
|
101
78
|
};
|
102
|
-
return (_jsx(Dialog, { open:
|
79
|
+
return (_jsx(Dialog, { open: true, onClose: close, TransitionProps: {
|
103
80
|
onEnter: handleEnter,
|
104
81
|
}, classes: { container: 'search-modal__container' }, PaperProps: { classes: { root: 'search-modal__inner-container' } }, children: _jsxs(Modal, { darkMode: true, children: [_jsx(ModalHeader, { children: _jsx(ModalTitle, { title: "Create Mapping Test Suite" }) }), _jsxs(ModalBody, { children: [_jsx(PanelLoadingIndicator, { className: "panel-loading-indicator--in__modal", isLoading: creatorState.isCreatingSuiteState.isInProgress }), creatorState.isCreatingSuiteState.message && (_jsx(PanelFormSection, { children: _jsx("div", { className: "service-registration-editor__progress-msg", children: `${creatorState.isCreatingSuiteState.message}...` }) })), _jsx(PanelFormTextField, { ref: inputRef, name: "Test Suite Name", prompt: "Unique Identifier for Test suite i.e Person_suite", value: suiteName, update: (value) => setSuiteName(value ?? ''), errorMessage: validateTestableId(suiteName, undefined) }), _jsx(PanelFormTextField, { name: "Test Name", prompt: "Unique Identifier for first test in suite", value: testName, update: (value) => setTestName(value ?? ''), errorMessage: validateTestableId(testName, undefined) }), _jsxs("div", { className: "panel__content__form__section", children: [_jsx("div", { className: "panel__content__form__section__header__label", children: "Class Mapping" }), _jsx("div", { className: "panel__content__form__section__header__prompt", children: "Mapped Class for which you would like to build test suite for" }), _jsx(CustomSelectorInput, { options: mappedClassOptions, onChange: changeClassOption, value: selectedClassOption, formatOptionLabel: getPackageableElementOptionFormatter({}), darkMode: true, placeholder: "Choose a class...", isClearable: true })] })] }), _jsxs(ModalFooter, { children: [_jsx(ModalFooterButton, { disabled: !isValid || creatorState.isCreatingSuiteState.isInProgress, title: 'Create Test', onClick: create, text: "Create" }), _jsx(ModalFooterButton, { onClick: close, text: "Close" })] })] }) }));
|
105
82
|
});
|
106
83
|
const CreateTestModal = observer((props) => {
|
107
84
|
const { mappingSuiteState } = props;
|
108
85
|
const mapping = mappingSuiteState.mappingTestableState.mapping;
|
109
|
-
const editorStore = mappingSuiteState.mappingTestableState.mappingEditorState.editorStore;
|
110
|
-
// Class mapping selector
|
111
|
-
const compatibleClasses = getMappingCompatibleClasses(mapping, editorStore.graphManagerState.usableClasses);
|
112
86
|
const suite = mappingSuiteState.suite;
|
113
|
-
const
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
};
|
119
|
-
// class
|
120
|
-
const [selectedClass, setSelectedClass] = useState(mappingSuiteState.getDefaultClass());
|
121
|
-
const selectedClassOption = selectedClass
|
122
|
-
? {
|
123
|
-
value: selectedClass,
|
124
|
-
label: selectedClass.name,
|
125
|
-
}
|
126
|
-
: null;
|
127
|
-
// id
|
128
|
-
const [id, setId] = useState(generateEnumerableNameFromToken(suite.tests.map((e) => e.id), getDefaultTestName(mappingSuiteState instanceof MappingDataTestSuiteState, selectedClass)));
|
129
|
-
const changeClassOption = (val) => {
|
130
|
-
setSelectedClass(val?.value);
|
131
|
-
setId(generateEnumerableNameFromToken(suite.tests.map((e) => e.id), getDefaultTestName(mappingSuiteState instanceof MappingDataTestSuiteState, selectedClass)));
|
132
|
-
};
|
87
|
+
const testData = suite.tests.filter(filterByType(MappingTest))[0]
|
88
|
+
?.storeTestData[0];
|
89
|
+
const editorStore = mappingSuiteState.editorStore;
|
90
|
+
// test name
|
91
|
+
const [id, setId] = useState(undefined);
|
133
92
|
const isValid = id && !id.includes(' ');
|
93
|
+
const errorMessage = validateTestableId(id, suite.tests.map((t) => t.id));
|
134
94
|
const mappedClassSelectorRef = useRef(null);
|
95
|
+
// const firstTest = mapp
|
96
|
+
// Class mapping selector
|
97
|
+
const compatibleClasses = getMappingCompatibleClasses(mapping, editorStore.graphManagerState.usableClasses);
|
135
98
|
const mappedClassOptions = uniq(compatibleClasses)
|
136
99
|
.map((e) => ({
|
137
100
|
label: e.name,
|
138
101
|
value: e,
|
139
102
|
}))
|
140
103
|
.sort(compareLabelFn);
|
104
|
+
// class if required
|
105
|
+
const [selectedClass, setSelectedClass] = useState(compatibleClasses[0]);
|
106
|
+
const changeClassOption = (val) => {
|
107
|
+
setSelectedClass(val?.value);
|
108
|
+
};
|
109
|
+
const selectedClassOption = selectedClass
|
110
|
+
? {
|
111
|
+
value: selectedClass,
|
112
|
+
label: selectedClass.name,
|
113
|
+
}
|
114
|
+
: null;
|
141
115
|
// model
|
142
116
|
const close = () => mappingSuiteState.setShowModal(false);
|
143
117
|
const create = () => {
|
144
|
-
|
145
|
-
|
118
|
+
if (id) {
|
119
|
+
mappingSuiteState.addNewTest(id, selectedClass);
|
120
|
+
close();
|
121
|
+
}
|
146
122
|
};
|
147
|
-
|
148
|
-
? TARGET_CLASS_FORM_TITLE
|
149
|
-
: SOURCE_CLASS_FORM_TITLE;
|
150
|
-
const modalPrompt = mappingSuiteState instanceof MappingDataTestSuiteState
|
151
|
-
? TARGET_CLASS_FORM_PROMPT
|
152
|
-
: SOURCE_CLASS_FORM_PROMPT;
|
153
|
-
return (_jsx(Dialog, { open: mappingSuiteState.showCreateModal, onClose: close, classes: { container: 'search-modal__container' }, PaperProps: { classes: { root: 'search-modal__inner-container' } }, children: _jsxs(Modal, { darkMode: true, className: "search-modal", children: [_jsx(ModalTitle, { title: "Create Test" }), _jsxs(ModalBody, { children: [_jsx(PanelFormTextField, { name: "Name", prompt: "", value: id, update: (value) => setId(value ?? ''), errorMessage: id.includes(' ')
|
154
|
-
? `Suite name can't contain spaces`
|
155
|
-
: !id
|
156
|
-
? `Suite name is required`
|
157
|
-
: undefined }), _jsxs("div", { className: "panel__content__form__section", children: [_jsx("div", { className: "panel__content__form__section__header__label", children: modalTitle }), _jsx("div", { className: "panel__content__form__section__header__prompt", children: modalPrompt }), _jsx(CustomSelectorInput, { ref: mappedClassSelectorRef, options: mappedClassOptions, onChange: changeClassOption, value: selectedClassOption, darkMode: true, placeholder: "Choose a class...", isClearable: true })] })] }), _jsxs(ModalFooter, { children: [_jsx(ModalFooterButton, { disabled: !isValid, onClick: create, text: "Create" }), _jsx(ModalFooterButton, { onClick: close, text: "Close" })] })] }) }));
|
123
|
+
return (_jsx(Dialog, { open: mappingSuiteState.showCreateModal, onClose: close, classes: { container: 'search-modal__container' }, PaperProps: { classes: { root: 'search-modal__inner-container' } }, children: _jsxs(Modal, { darkMode: true, children: [_jsx(ModalHeader, { children: _jsx(ModalTitle, { title: "Create Mapping Test" }) }), _jsxs(ModalBody, { children: [_jsx(PanelFormTextField, { name: "Name", prompt: "", value: id, update: (value) => setId(value ?? ''), errorMessage: errorMessage }), !testData && (_jsxs("div", { className: "panel__content__form__section", children: [_jsx("div", { className: "panel__content__form__section__header__label", children: "Class Mapping" }), _jsx("div", { className: "panel__content__form__section__header__prompt", children: "Mapped Class for which you would like to build test suite for" }), _jsx(CustomSelectorInput, { ref: mappedClassSelectorRef, options: mappedClassOptions, onChange: changeClassOption, value: selectedClassOption, darkMode: true, placeholder: "Choose a class...", isClearable: true })] }))] }), _jsxs(ModalFooter, { children: [_jsx(ModalFooterButton, { disabled: !isValid, onClick: create, text: "Create" }), _jsx(ModalFooterButton, { onClick: close, text: "Close" })] })] }) }));
|
158
124
|
});
|
159
125
|
const CreateStoreTestDataModal = observer((props) => {
|
160
|
-
const {
|
126
|
+
const { mappingTestState } = props;
|
127
|
+
const mappingTestableDataState = mappingTestState.dataState;
|
161
128
|
const editorStore = mappingTestableDataState.editorStore;
|
162
129
|
const mapping = mappingTestableDataState.mappingTestableState.mapping;
|
163
130
|
const isReadOnly = mappingTestableDataState.mappingTestableState.mappingEditorState
|
@@ -241,12 +208,12 @@ const CreateStoreTestDataModal = observer((props) => {
|
|
241
208
|
close();
|
242
209
|
}
|
243
210
|
};
|
244
|
-
return (_jsx(Dialog, { open: mappingTestableDataState.showNewModal, onClose: close, classes: { container: 'search-modal__container' }, PaperProps: { classes: { root: 'search-modal__inner-container' } }, children: _jsxs(Modal, { darkMode: true, className: "search-modal", children: [_jsx(ModalTitle, { title: "Create Store Test Data" }), _jsxs(ModalBody, { children: [_jsxs("div", { className: "panel__content__form__section", children: [_jsx("div", { className: "panel__content__form__section__header__label", children: "Store to add test data" }), _jsx(CustomSelectorInput, { ref: mappedStoreRef, options: selectedStoreOptions, onChange: changeStoreOption, value: selectedStoreOption, darkMode: true, placeholder: "Choose a store...", isClearable: true })] }), _jsxs("div", { className: "panel__content__form__section", children: [_jsx("div", { className: "panel__content__form__section__header__label", children: "Data Type" }), _jsx("div", { className: "panel__content__form__section__header__prompt", children: "Test data type that will be used to mock store (defaulted based on store)" }), _jsx("div", { className: "explorer__new-element-modal__driver", children: _jsx(CustomSelectorInput, { className: "explorer__new-element-modal__driver__dropdown", options: embeddedOptions, onChange: onEmbeddedTypeChange, value: embeddedDataTypeOption, isClearable: false, darkMode: true }) })] }), embeddedDataType === EmbeddedDataType.DATA_ELEMENT && (_jsxs("div", { className: "panel__content__form__section", children: [_jsx("div", { className: "panel__content__form__section__header__label", children: "Data Element" }), _jsx("div", { className: "explorer__new-element-modal__driver", children: _jsx(CustomSelectorInput, { className: "panel__content__form__section__dropdown data-element-reference-editor__value__dropdown", disabled: isReadOnly, options: dataElementOptions, onChange: onDataElementChange, value: selectedDataElement, darkMode: true }) })] }))] }), _jsxs(ModalFooter, { children: [_jsx(ModalFooterButton, { disabled: !isValid, onClick: create, text: "Create" }), _jsx(ModalFooterButton, { onClick: close, text: "Close" })] })] }) }));
|
211
|
+
return (_jsx(Dialog, { open: mappingTestableDataState.showNewModal, onClose: close, classes: { container: 'search-modal__container' }, PaperProps: { classes: { root: 'search-modal__inner-container' } }, children: _jsxs(Modal, { darkMode: true, className: "search-modal", children: [_jsx(ModalTitle, { title: "Create Store Test Data" }), _jsxs(ModalBody, { children: [_jsxs("div", { className: "panel__content__form__section", children: [_jsx("div", { className: "panel__content__form__section__header__label", children: "Store to add test data" }), _jsx(CustomSelectorInput, { ref: mappedStoreRef, options: selectedStoreOptions, onChange: changeStoreOption, formatOptionLabel: getPackageableElementOptionFormatter({}), value: selectedStoreOption, darkMode: true, placeholder: "Choose a store...", isClearable: true })] }), _jsxs("div", { className: "panel__content__form__section", children: [_jsx("div", { className: "panel__content__form__section__header__label", children: "Data Type" }), _jsx("div", { className: "panel__content__form__section__header__prompt", children: "Test data type that will be used to mock store (defaulted based on store)" }), _jsx("div", { className: "explorer__new-element-modal__driver", children: _jsx(CustomSelectorInput, { className: "explorer__new-element-modal__driver__dropdown", options: embeddedOptions, onChange: onEmbeddedTypeChange, value: embeddedDataTypeOption, isClearable: false, darkMode: true }) })] }), embeddedDataType === EmbeddedDataType.DATA_ELEMENT && (_jsxs("div", { className: "panel__content__form__section", children: [_jsx("div", { className: "panel__content__form__section__header__label", children: "Data Element" }), _jsx("div", { className: "explorer__new-element-modal__driver", children: _jsx(CustomSelectorInput, { className: "panel__content__form__section__dropdown data-element-reference-editor__value__dropdown", disabled: isReadOnly, options: dataElementOptions, onChange: onDataElementChange, value: selectedDataElement, darkMode: true }) })] }))] }), _jsxs(ModalFooter, { children: [_jsx(ModalFooterButton, { disabled: !isValid, onClick: create, text: "Create" }), _jsx(ModalFooterButton, { onClick: close, text: "Close" })] })] }) }));
|
245
212
|
});
|
246
|
-
const
|
247
|
-
const {
|
213
|
+
const MappingTestSuiteQueryEditor = observer((props) => {
|
214
|
+
const { testSuiteState, mappingTestableState, isReadOnly } = props;
|
215
|
+
const testableQueryState = testSuiteState.queryState;
|
248
216
|
const mapping = mappingTestableState.mapping;
|
249
|
-
const queryState = testableQueryState;
|
250
217
|
const editorStore = mappingTestableState.mappingEditorState.editorStore;
|
251
218
|
const applicationStore = useApplicationStore();
|
252
219
|
// actions
|
@@ -268,7 +235,7 @@ const MappingTestableQueryEditor = observer((props) => {
|
|
268
235
|
const save = applicationStore.guardUnhandledError(async () => {
|
269
236
|
try {
|
270
237
|
const rawLambda = queryBuilderState.buildQuery();
|
271
|
-
await flowResult(
|
238
|
+
await flowResult(testableQueryState.updateLamba(rawLambda));
|
272
239
|
applicationStore.notificationService.notifySuccess(`Mapping testable query is updated`);
|
273
240
|
embeddedQueryBuilderState.setEmbeddedQueryBuilderConfiguration(undefined);
|
274
241
|
}
|
@@ -281,53 +248,49 @@ const MappingTestableQueryEditor = observer((props) => {
|
|
281
248
|
},
|
282
249
|
},
|
283
250
|
],
|
284
|
-
disableCompile: isStubbed_RawLambda(
|
251
|
+
disableCompile: isStubbed_RawLambda(testableQueryState.query),
|
285
252
|
}));
|
286
253
|
});
|
287
|
-
const clearQuery = applicationStore.guardUnhandledError(() => flowResult(
|
254
|
+
const clearQuery = applicationStore.guardUnhandledError(() => flowResult(testableQueryState.updateLamba(stub_RawLambda())));
|
288
255
|
return (_jsxs("div", { className: "panel mapping-test-editor__query-panel", children: [_jsxs("div", { className: "panel__header", children: [_jsx("div", { className: "panel__header__title", children: _jsx("div", { className: "panel__header__title__label", children: "query" }) }), _jsx("div", { className: "panel__header__actions", children: _jsxs("div", { className: "mapping-test-editor__action-btn", children: [_jsxs("button", { className: "mapping-test-editor__action-btn__label", onClick: editWithQueryBuilder(), title: "Edit Query", tabIndex: -1, children: [_jsx(PencilIcon, { className: "mapping-test-editor__action-btn__label__icon" }), _jsx("div", { className: "mapping-test-editor__action-btn__label__title", children: "Edit Query" })] }), _jsx(DropdownMenu, { className: "mapping-test-editor__action-btn__dropdown-btn", content: _jsxs(MenuContent, { children: [_jsx(MenuContentItem, { className: "mapping-test-editor__action-btn__option", onClick: editWithQueryBuilder(true), children: "Text Mode" }), _jsx(MenuContentItem, { className: "mapping-test-editor__action-btn__option", onClick: clearQuery, children: "Clear Query" })] }), menuProps: {
|
289
256
|
anchorOrigin: { vertical: 'bottom', horizontal: 'right' },
|
290
257
|
transformOrigin: { vertical: 'top', horizontal: 'right' },
|
291
|
-
}, children: _jsx(CaretDownIcon, {}) })] }) })] }), !isStubbed_RawLambda(
|
292
|
-
});
|
293
|
-
const MappingTestAssertionsEditor = observer((props) => {
|
294
|
-
const { mappingDataTestState } = props;
|
295
|
-
const editorStore = mappingDataTestState.editorStore;
|
296
|
-
const mappingEditorState = mappingDataTestState.mappingTestableState.mappingEditorState;
|
297
|
-
const isReadOnly = mappingEditorState.isReadOnly;
|
298
|
-
const addAssertion = () => mappingDataTestState.addAssertion();
|
299
|
-
const runTest = () => {
|
300
|
-
flowResult(mappingDataTestState.runTest()).catch(editorStore.applicationStore.alertUnhandledError);
|
301
|
-
};
|
302
|
-
const renameAssertion = (val) => testAssertion_setId(guaranteeNonNullable(mappingDataTestState.assertionToRename), val);
|
303
|
-
return (_jsxs("div", { className: "panel service-test-editor", children: [_jsx("div", { className: "service-test-suite-editor__header", children: _jsx("div", { className: "service-test-suite-editor__header__title", children: _jsx("div", { className: "service-test-suite-editor__header__title__label service-test-suite-editor__header__title__label--assertions", children: "assertions" }) }) }), _jsx("div", { className: "service-test-editor__content", children: _jsxs(ResizablePanelGroup, { orientation: "vertical", children: [_jsxs(ResizablePanel, { minSize: 100, size: 200, children: [_jsxs("div", { className: "binding-editor__header", children: [_jsxs("div", { className: "binding-editor__header__title", children: [_jsxs("div", { className: "testable-test-assertion-explorer__header__summary", children: [_jsx("div", { className: "testable-test-assertion-explorer__header__summary__icon testable-test-assertion-explorer__header__summary__icon--assertion", children: _jsx(TestTubeIcon, {}) }), _jsx("div", { children: mappingDataTestState.assertionCount })] }), _jsxs("div", { className: "testable-test-assertion-explorer__header__summary", children: [_jsx("div", { className: "testable-test-assertion-explorer__header__summary__icon testable-test-assertion-explorer__header__summary__icon--passed", children: _jsx(CheckCircleIcon, {}) }), _jsx("div", { children: mappingDataTestState.assertionPassed })] }), _jsxs("div", { className: "testable-test-assertion-explorer__header__summary", children: [_jsx("div", { className: "testable-test-assertion-explorer__header__summary__icon testable-test-assertion-explorer__header__summary__icon--failed", children: _jsx(TimesCircleIcon, {}) }), _jsx("div", { children: mappingDataTestState.assertionFailed })] })] }), _jsxs("div", { className: "panel__header__actions", children: [_jsx("button", { className: "panel__header__action testable-test-explorer__play__all__icon", tabIndex: -1, onClick: runTest, title: "Run All Assertions", children: _jsx(RunAllIcon, {}) }), _jsx("button", { className: "panel__header__action", tabIndex: -1, onClick: addAssertion, title: "Add Test Assertion", children: _jsx(PlusIcon, {}) })] })] }), _jsx("div", { children: mappingDataTestState.assertionEditorStates.map((assertionState) => (_jsx(TestAssertionItem, { testableTestState: mappingDataTestState, testAssertionEditorState: assertionState, isReadOnly: isReadOnly }, assertionState.assertion.id))) }), mappingDataTestState.assertionToRename && (_jsx(RenameModal, { val: mappingDataTestState.assertionToRename.id, isReadOnly: isReadOnly, showModal: true, closeModal: () => mappingDataTestState.setAssertionToRename(undefined), setValue: renameAssertion, errorMessageFunc: (_val) => validateTestableId(_val, undefined) }))] }), _jsx(ResizablePanelSplitter, { children: _jsx(ResizablePanelSplitterLine, { color: "var(--color-dark-grey-200)" }) }), _jsx(ResizablePanel, { children: mappingDataTestState.selectedAsertionState && (_jsx(TestAssertionEditor, { testAssertionState: mappingDataTestState.selectedAsertionState })) })] }) })] }));
|
258
|
+
}, children: _jsx(CaretDownIcon, {}) })] }) })] }), !isStubbed_RawLambda(testableQueryState.query) && (_jsx(PanelContent, { children: _jsx("div", { className: "mapping-test-editor__query-panel__query", children: _jsx(CodeEditor, { inputValue: testableQueryState.lambdaString, isReadOnly: true, language: CODE_EDITOR_LANGUAGE.PURE, hideMinimap: true }) }) }))] }));
|
304
259
|
});
|
305
260
|
const StoreTestDataEditor = observer((props) => {
|
306
|
-
const {
|
307
|
-
const isReadOnly =
|
308
|
-
|
309
|
-
|
310
|
-
|
311
|
-
const
|
312
|
-
const
|
313
|
-
const
|
314
|
-
|
261
|
+
const { mappingTestState, storeTestDataState } = props;
|
262
|
+
const isReadOnly = mappingTestState.mappingTestableState.mappingEditorState.isReadOnly;
|
263
|
+
const dataElements = storeTestDataState.editorStore.graphManagerState.graph.dataElements;
|
264
|
+
const data = storeTestDataState.storeTestData.data;
|
265
|
+
const isUsingReference = data instanceof DataElementReference;
|
266
|
+
const open = () => storeTestDataState.setDataElementModal(true);
|
267
|
+
const close = () => storeTestDataState.setDataElementModal(false);
|
268
|
+
const changeToUseMyOwn = () => {
|
269
|
+
if (isUsingReference) {
|
270
|
+
const newBare = returnUndefOnError(() => data.accept_EmbeddedDataVisitor(new EmbeddedDataCreatorFromEmbeddedData()));
|
271
|
+
if (newBare) {
|
272
|
+
storeTestDataState.changeEmbeddedData(newBare);
|
273
|
+
}
|
274
|
+
}
|
275
|
+
};
|
276
|
+
const handler = (val) => {
|
277
|
+
const value = new DataElementReference();
|
278
|
+
value.dataElement = PackageableElementExplicitReference.create(val);
|
279
|
+
storeTestDataState.changeEmbeddedData(value);
|
315
280
|
};
|
316
|
-
return (_jsxs("div", { className: "service-test-data-editor
|
317
|
-
?.generatingTestDataSate.isInProgress) }), mappingTestableDataState.selectedDataState && (_jsx(StoreTestDataEditor, { storeTestDataState: mappingTestableDataState.selectedDataState, mappingTestableDataState: mappingTestableDataState }))] })) : (_jsx(BlankPanelPlaceholder, { text: "Add Store Test Data", onClick: addStoreTestData, clickActionType: "add", tooltipText: "Click to add store test data" })), mappingTestableDataState.showNewModal && (_jsx(CreateStoreTestDataModal, { mappingTestableDataState: mappingTestableDataState }))] }));
|
281
|
+
return (_jsxs("div", { className: "service-test-data-editor", children: [_jsxs("div", { className: "service-test-suite-editor__header", children: [_jsx("div", { className: "service-test-suite-editor__header__title", children: _jsx("div", { className: "service-test-suite-editor__header__title__label", children: "input data" }) }), _jsx("div", { className: "panel__header__actions", children: isUsingReference ? (_jsx("button", { className: "panel__header__action service-execution-editor__test-data__generate-btn", onClick: changeToUseMyOwn, disabled: !isUsingReference, title: "Use own data", tabIndex: -1, children: _jsx("div", { className: "service-execution-editor__test-data__generate-btn__label", children: _jsx("div", { className: "service-execution-editor__test-data__generate-btn__label__title", children: "Own Data" }) }) })) : (_jsx("button", { className: "panel__header__action service-execution-editor__test-data__generate-btn", onClick: open, title: "Use Shared Data via Defined Data Element", disabled: !dataElements.length, tabIndex: -1, children: _jsx("div", { className: "service-execution-editor__test-data__generate-btn__label", children: _jsx("div", { className: "service-execution-editor__test-data__generate-btn__label__title", children: "Shared Data" }) }) })) })] }), storeTestDataState.dataElementModal && (_jsx(SharedDataElementModal, { isReadOnly: false, editorStore: storeTestDataState.editorStore, close: close, handler: handler })), _jsx(EmbeddedDataEditor, { isReadOnly: isReadOnly, embeddedDataEditorState: storeTestDataState.embeddedEditorState })] }));
|
318
282
|
});
|
319
283
|
const MappingTestEditor = observer((props) => {
|
320
284
|
const { mappingTestState } = props;
|
321
|
-
const
|
322
|
-
const
|
323
|
-
const
|
324
|
-
|
325
|
-
return (_jsx("div", { className: "panel mapping-testable-editorr", children: _jsx("div", { className: "mapping-testable-editor__content", children: _jsxs(ResizablePanelGroup, { orientation: "horizontal", children: [_jsx(ResizablePanel, { size: 150, children: _jsx("div", { className: "service-test-data-editor panel", children: _jsx("div", { className: "service-test-editor__setup__configuration", children: _jsx(PanelFormTextField, { name: "Test Documentation", value: test.doc, update: (value) => atomicTest_setDoc(test, value) }) }) }) }), _jsx(ResizablePanelSplitter, { children: _jsx(ResizablePanelSplitterLine, { color: "var(--color-dark-grey-200)" }) }), _jsxs(ResizablePanel, { children: [mappingTestState instanceof MappingQueryTestState && (_jsx(MappingTestableQueryEditor, { testableQueryState: mappingTestState.queryState, mappingTestableState: mappingTestState.mappingTestableState, isReadOnly: isReadOnly })), mappingTestState instanceof MappingDataTestState && (_jsx(MappingTestableStoreDataEditor, { mappingTestableDataState: mappingTestState.dataState }))] })] }) }) }));
|
285
|
+
const mappingTest = mappingTestState.test;
|
286
|
+
const mappingTestableDataState = mappingTestState.dataState;
|
287
|
+
const addStoreTestData = () => {
|
288
|
+
mappingTestableDataState.setShowModal(true);
|
326
289
|
};
|
327
|
-
return (
|
328
|
-
|
329
|
-
|
330
|
-
|
290
|
+
return (_jsx("div", { className: "service-test-editor panel", children: _jsx("div", { className: "panel mapping-testable-editor", children: _jsx("div", { className: "mapping-testable-editor__content", children: _jsxs(ResizablePanelGroup, { orientation: "horizontal", children: [_jsx(ResizablePanel, { size: 120, children: _jsx("div", { className: "service-test-data-editor panel", children: _jsx("div", { className: "service-test-editor__setup__configuration", children: _jsxs("div", { className: "panel__content__form__section", children: [_jsx("div", { className: "panel__content__form__section__header__label", children: "Test Documentation" }), _jsx("textarea", { className: "panel__content__form__section__textarea mapping-testable-editor__doc__textarea", spellCheck: false, value: mappingTest.doc, onChange: (event) => {
|
291
|
+
atomicTest_setDoc(mappingTest, event.target.value);
|
292
|
+
} })] }) }) }) }), _jsx(ResizablePanelSplitter, { children: _jsx(ResizablePanelSplitterLine, { color: "var(--color-dark-grey-200)" }) }), _jsx(ResizablePanel, { children: _jsxs(ResizablePanelGroup, { orientation: "vertical", children: [_jsx(ResizablePanel, { children: _jsxs("div", { className: "service-test-data-editor panel", children: [mappingTestableDataState.dataHolder.storeTestData
|
293
|
+
.length ? (_jsx(_Fragment, { children: mappingTestableDataState.selectedDataState && (_jsx(StoreTestDataEditor, { storeTestDataState: mappingTestableDataState.selectedDataState, mappingTestState: mappingTestState })) })) : (_jsx(BlankPanelPlaceholder, { text: "Add Store Test Data", onClick: addStoreTestData, clickActionType: "add", tooltipText: "Click to add store test data" })), mappingTestableDataState.showNewModal && (_jsx(CreateStoreTestDataModal, { mappingTestState: mappingTestState }))] }) }), _jsx(ResizablePanelSplitter, { children: _jsx(ResizablePanelSplitterLine, { color: "var(--color-dark-grey-200)" }) }), _jsx(ResizablePanel, { children: mappingTestState.selectedAsertionState && (_jsx(TestAssertionEditor, { testAssertionState: mappingTestState.selectedAsertionState })) })] }) })] }) }) }) }));
|
331
294
|
});
|
332
295
|
const MappingTestableContextMenu = observer(forwardRef(function TestContainerContextMenu(props, ref) {
|
333
296
|
const { addName, add, rename, _delete } = props;
|
@@ -362,9 +325,12 @@ const MappingTestItem = observer((props) => {
|
|
362
325
|
const rename = () => {
|
363
326
|
suiteState.mappingTestableState.setRenameComponent(mappingTest);
|
364
327
|
};
|
328
|
+
const runTest = () => {
|
329
|
+
flowResult(mappingTestState.runTest()).catch(mappingTestState.editorStore.applicationStore.alertUnhandledError);
|
330
|
+
};
|
365
331
|
return (_jsx(ContextMenu, { className: clsx('testable-test-explorer__item', {
|
366
332
|
'testable-test-explorer__item--selected-from-context-menu': !isActive && isSelectedFromContextMenu,
|
367
|
-
}, { 'testable-test-explorer__item--active': isActive }), disabled: isReadOnly, content: _jsx(MappingTestableContextMenu, { addName: "Test", add: add, _delete: _delete, rename: rename }), menuProps: { elevation: 7 }, onOpen: onContextMenuOpen, onClose: onContextMenuClose, children: _jsxs("button", { className: clsx('testable-test-explorer__item__label'), onClick: openTest, tabIndex: -1, children: [_jsx("div", { className: "testable-test-explorer__item__label__icon", children: resultIcon }), _jsx("div", { className: "testable-test-explorer__item__label__text", children: mappingTest.id })] }) }));
|
333
|
+
}, { 'testable-test-explorer__item--active': isActive }), disabled: isReadOnly, content: _jsx(MappingTestableContextMenu, { addName: "Test", add: add, _delete: _delete, rename: rename }), menuProps: { elevation: 7 }, onOpen: onContextMenuOpen, onClose: onContextMenuClose, children: _jsxs("button", { className: clsx('testable-test-explorer__item__label'), onClick: openTest, tabIndex: -1, children: [_jsx("div", { className: "testable-test-explorer__item__label__icon", children: resultIcon }), _jsx("div", { className: "testable-test-explorer__item__label__text", children: mappingTest.id }), _jsx("div", { className: "mapping-test-explorer__item__actions", children: _jsx("button", { className: "mapping-test-explorer__item__action mapping-test-explorer__run-test-btn", onClick: runTest, disabled: mappingTestState.runningTestAction.isInProgress, tabIndex: -1, title: `Run ${mappingTestState.test.id}`, children: _jsx(PlayIcon, {}) }) })] }) }));
|
368
334
|
});
|
369
335
|
const MappingTestSuiteEditor = observer((props) => {
|
370
336
|
const { mappingTestSuiteState } = props;
|
@@ -378,15 +344,6 @@ const MappingTestSuiteEditor = observer((props) => {
|
|
378
344
|
const runFailingTests = () => {
|
379
345
|
flowResult(mappingTestSuiteState.runFailingTests()).catch(editorStore.applicationStore.alertUnhandledError);
|
380
346
|
};
|
381
|
-
const renderMappingTestSuiteDriver = () => {
|
382
|
-
if (mappingTestSuiteState instanceof MappingDataTestSuiteState) {
|
383
|
-
return (_jsx(MappingTestableStoreDataEditor, { mappingTestableDataState: mappingTestSuiteState.dataState }));
|
384
|
-
}
|
385
|
-
else if (mappingTestSuiteState instanceof MappingQueryTestSuiteState) {
|
386
|
-
return (_jsx(MappingTestableQueryEditor, { testableQueryState: mappingTestSuiteState.queryState, mappingTestableState: mappingTestSuiteState.mappingTestableState, isReadOnly: isReadOnly }, mappingTestSuiteState.queryState.uuid));
|
387
|
-
}
|
388
|
-
return null;
|
389
|
-
};
|
390
347
|
const renderMappingTestEditor = () => {
|
391
348
|
if (selectedTestState) {
|
392
349
|
return _jsx(MappingTestEditor, { mappingTestState: selectedTestState });
|
@@ -396,25 +353,28 @@ const MappingTestSuiteEditor = observer((props) => {
|
|
396
353
|
}
|
397
354
|
return null;
|
398
355
|
};
|
399
|
-
return (_jsxs(ResizablePanelGroup, { orientation: "horizontal", children: [_jsx(ResizablePanel, { size: 300, minSize: 28, children:
|
356
|
+
return (_jsxs(ResizablePanelGroup, { orientation: "horizontal", children: [_jsx(ResizablePanel, { size: 300, minSize: 28, children: _jsx(MappingTestSuiteQueryEditor, { testSuiteState: mappingTestSuiteState, mappingTestableState: mappingTestSuiteState.mappingTestableState, isReadOnly: isReadOnly }, mappingTestSuiteState.queryState.uuid) }), _jsx(ResizablePanelSplitter, { children: _jsx(ResizablePanelSplitterLine, { color: "var(--color-dark-grey-200)" }) }), _jsx(ResizablePanel, { minSize: 56, children: _jsxs(ResizablePanelGroup, { orientation: "vertical", children: [_jsxs(ResizablePanel, { size: 200, minSize: 28, children: [_jsxs("div", { className: "binding-editor__header", children: [_jsx("div", { className: "binding-editor__header__title", children: _jsx("div", { className: "panel__header__title__content", children: "Tests" }) }), _jsxs("div", { className: "panel__header__actions", children: [_jsx("button", { className: "panel__header__action testable-test-explorer__play__all__icon", tabIndex: -1, onClick: runTests, title: "Run All Tests", children: _jsx(RunAllIcon, {}) }), _jsx("button", { className: "panel__header__action testable-test-explorer__play__all__icon", tabIndex: -1, onClick: runFailingTests, title: "Run All Failing Tests", children: _jsx(RunErrorsIcon, {}) }), _jsx("button", { className: "panel__header__action", tabIndex: -1, onClick: addTest, title: "Add Mapping Test", children: _jsx(PlusIcon, {}) })] })] }), _jsxs(PanelContent, { children: [mappingTestSuiteState.testStates.map((test) => (_jsx(MappingTestItem, { mappingTestState: test, suiteState: mappingTestSuiteState }, test.uuid))), mappingTestSuiteState.showCreateModal && (_jsx(CreateTestModal, { mappingSuiteState: mappingTestSuiteState }))] })] }), _jsx(ResizablePanelSplitter, { children: _jsx(ResizablePanelSplitterLine, { color: "var(--color-dark-grey-200)" }) }), _jsx(ResizablePanel, { minSize: 28, children: renderMappingTestEditor() })] }) })] }));
|
400
357
|
});
|
401
358
|
const MappingTestSuiteItem = observer((props) => {
|
402
359
|
const { suite, mappingTestableState } = props;
|
403
360
|
const [isSelectedFromContextMenu, setIsSelectedFromContextMenu] = useState(false);
|
404
361
|
const isReadOnly = mappingTestableState.mappingEditorState.isReadOnly;
|
405
362
|
const openSuite = () => mappingTestableState.changeSuite(suite);
|
363
|
+
const results = mappingTestableState.testableResults?.filter((t) => t.parentSuite?.id === suite.id);
|
364
|
+
const isRunning = mappingTestableState.isRunningTestableSuitesState.isInProgress ||
|
365
|
+
(mappingTestableState.isRunningFailingSuitesState.isInProgress &&
|
366
|
+
mappingTestableState.failingSuites.includes(suite)) ||
|
367
|
+
mappingTestableState.runningSuite === suite;
|
406
368
|
const isActive = mappingTestableState.selectedTestSuite?.suite === suite;
|
407
|
-
|
408
|
-
|
409
|
-
|
410
|
-
|
411
|
-
|
412
|
-
// : _testableResult;
|
413
|
-
// const resultIcon = getTestableResultIcon(testableResult);
|
369
|
+
const _testableResult = getTestableResultFromTestResults(results);
|
370
|
+
const testableResult = isRunning
|
371
|
+
? TESTABLE_RESULT.IN_PROGRESS
|
372
|
+
: _testableResult;
|
373
|
+
const resultIcon = getTestableResultIcon(testableResult);
|
414
374
|
const onContextMenuOpen = () => setIsSelectedFromContextMenu(true);
|
415
375
|
const onContextMenuClose = () => setIsSelectedFromContextMenu(false);
|
416
376
|
const add = () => {
|
417
|
-
mappingTestableState.
|
377
|
+
mappingTestableState.openCreateModal();
|
418
378
|
};
|
419
379
|
const _delete = () => {
|
420
380
|
mappingTestableState.deleteTestSuite(suite);
|
@@ -422,9 +382,12 @@ const MappingTestSuiteItem = observer((props) => {
|
|
422
382
|
const rename = () => {
|
423
383
|
mappingTestableState.setRenameComponent(suite);
|
424
384
|
};
|
385
|
+
const runSuite = () => {
|
386
|
+
flowResult(mappingTestableState.runSuite(suite)).catch(mappingTestableState.editorStore.applicationStore.alertUnhandledError);
|
387
|
+
};
|
425
388
|
return (_jsx(ContextMenu, { className: clsx('testable-test-explorer__item', {
|
426
389
|
'testable-test-explorer__item--selected-from-context-menu': !isActive && isSelectedFromContextMenu,
|
427
|
-
}, { 'testable-test-explorer__item--active': isActive }), disabled: isReadOnly, content: _jsx(MappingTestableContextMenu, { addName: "Suite", add: add, _delete: _delete, rename: rename }), menuProps: { elevation: 7 }, onOpen: onContextMenuOpen, onClose: onContextMenuClose, children: _jsxs("button", { className: clsx('testable-test-explorer__item__label'), onClick: openSuite, tabIndex: -1, children: [_jsx("div", { className: "testable-test-explorer__item__label__icon" }), _jsx("div", { className: "testable-test-explorer__item__label__text", children: suite.id })] }) }));
|
390
|
+
}, { 'testable-test-explorer__item--active': isActive }), disabled: isReadOnly, content: _jsx(MappingTestableContextMenu, { addName: "Suite", add: add, _delete: _delete, rename: rename }), menuProps: { elevation: 7 }, onOpen: onContextMenuOpen, onClose: onContextMenuClose, children: _jsxs("button", { className: clsx('testable-test-explorer__item__label'), onClick: openSuite, tabIndex: -1, children: [_jsx("div", { className: "testable-test-explorer__item__label__icon", children: resultIcon }), _jsx("div", { className: "testable-test-explorer__item__label__text", children: suite.id }), _jsx("div", { className: "mapping-test-explorer__item__actions", children: _jsx("button", { className: "mapping-test-explorer__item__action mapping-test-explorer__run-test-btn", onClick: runSuite, disabled: isRunning, tabIndex: -1, title: `Run ${suite.id}`, children: _jsx(PlayIcon, {}) }) })] }) }));
|
428
391
|
});
|
429
392
|
export const MappingTestableEditor = observer((props) => {
|
430
393
|
const { mappingTestableState } = props;
|
@@ -435,9 +398,9 @@ export const MappingTestableEditor = observer((props) => {
|
|
435
398
|
const isReadOnly = mappingEditorState.isReadOnly;
|
436
399
|
const suites = mappingTestableState.mapping.tests;
|
437
400
|
const selectedSuiteState = mappingTestableState.selectedTestSuite;
|
438
|
-
const addSuite = () => mappingTestableState.
|
401
|
+
const addSuite = () => mappingTestableState.openCreateModal();
|
439
402
|
const runSuites = () => {
|
440
|
-
mappingTestableState.
|
403
|
+
mappingTestableState.runTestable();
|
441
404
|
};
|
442
405
|
const runFailingTests = () => {
|
443
406
|
mappingTestableState.runAllFailingSuites();
|
@@ -454,6 +417,7 @@ export const MappingTestableEditor = observer((props) => {
|
|
454
417
|
const renameTestingComponent = (val) => {
|
455
418
|
mappingTestableState.renameTestableComponent(val);
|
456
419
|
};
|
457
|
-
|
420
|
+
useApplicationNavigationContext(LEGEND_STUDIO_APPLICATION_NAVIGATION_CONTEXT_KEY.MAPPING_TEST_EDITOR);
|
421
|
+
return (_jsx("div", { className: "service-test-suite-editor panel", children: _jsxs("div", { className: "service-test-suite-editor", children: [_jsxs(ResizablePanelGroup, { orientation: "vertical", children: [_jsxs(ResizablePanel, { size: 200, minSize: 28, children: [_jsxs("div", { className: "binding-editor__header", children: [_jsx("div", { className: "binding-editor__header__title", children: _jsx("div", { className: "panel__header__title__content", children: "Test Suites" }) }), _jsxs("div", { className: "panel__header__actions", children: [_jsx("button", { className: "panel__header__action testable-test-explorer__play__all__icon", tabIndex: -1, onClick: runSuites, title: "Run All Suites", children: _jsx(RunAllIcon, {}) }), _jsx("button", { className: "panel__header__action testable-test-explorer__play__all__icon", tabIndex: -1, onClick: runFailingTests, title: "Run All Failing Tests", children: _jsx(RunErrorsIcon, {}) }), _jsx("button", { className: "panel__header__action", tabIndex: -1, onClick: addSuite, title: "Add Mapping Suite", children: _jsx(PlusIcon, {}) })] })] }), _jsxs(PanelContent, { children: [suites.map((suite) => (_jsx(MappingTestSuiteItem, { mappingTestableState: mappingTestableState, suite: suite }, suite.id))), !suites.length && (_jsx(BlankPanelPlaceholder, { text: "Add Test Suite", onClick: addSuite, clickActionType: "add", tooltipText: "Click to add test suite" }))] }), !suites.length && (_jsx(BlankPanelPlaceholder, { disabled: mappingEditorState.isReadOnly, onClick: addSuite, text: "Add a Test Suite", clickActionType: "add", tooltipText: "Click to add a new mapping test suite" }))] }), _jsx(ResizablePanelSplitter, { children: _jsx(ResizablePanelSplitterLine, { color: "var(--color-dark-grey-200)" }) }), _jsx(ResizablePanel, { minSize: 56, children: _jsx("div", { className: "panel mapping-testable-editorr", children: _jsx("div", { className: "mapping-testable-editor__content", children: renderSuiteState() }) }) })] }), mappingTestableState.createSuiteState && (_jsx(CreateTestSuiteModal, { creatorState: mappingTestableState.createSuiteState })), mappingTestableState.testableComponentToRename && (_jsx(RenameModal, { val: mappingTestableState.testableComponentToRename.id, isReadOnly: isReadOnly, showModal: true, closeModal: () => mappingTestableState.setRenameComponent(undefined), setValue: (val) => renameTestingComponent(val), errorMessageFunc: (_val) => validateTestableId(_val, undefined) }))] }) }));
|
458
422
|
});
|
459
423
|
//# sourceMappingURL=MappingTestableEditor.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"MappingTestableEditor.js","sourceRoot":"","sources":["../../../../../src/components/editor/editor-group/mapping-editor/MappingTestableEditor.tsx"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"MappingTestableEditor.js","sourceRoot":"","sources":["../../../../../src/components/editor/editor-group/mapping-editor/MappingTestableEditor.tsx"],"names":[],"mappings":"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"}
|