fix: test case's steps not update (#203)

This commit is contained in:
kimatata
2025-04-12 20:41:49 +09:00
committed by GitHub
parent 52b09b407f
commit 68c66ea03b
2 changed files with 22 additions and 16 deletions

View File

@@ -190,6 +190,25 @@ export default function CaseEditor({
}
};
const onStepUpdate = (stepId: number, changeStep: StepType) => {
if (changeStep.editState === 'notChanged') {
changeStep.editState = 'changed';
}
if (testCase.Steps) {
setTestCase({
...testCase,
Steps: testCase.Steps.map((step) => {
if (step.id === stepId) {
return changeStep;
} else {
return step;
}
}),
});
}
};
useEffect(() => {
async function fetchDataEffect() {
if (!tokenContext.isSignedIn()) {
@@ -394,20 +413,7 @@ export default function CaseEditor({
<CaseStepsEditor
isDisabled={!tokenContext.isProjectDeveloper(Number(projectId))}
steps={testCase.Steps}
onStepUpdate={(stepId, changeStep) => {
if (testCase.Steps) {
setTestCase({
...testCase,
Steps: testCase.Steps.map((step) => {
if (step.id === stepId) {
return changeStep;
} else {
return step;
}
}),
});
}
}}
onStepUpdate={onStepUpdate}
onStepPlus={onPlusClick}
onStepDelete={onDeleteClick}
messages={messages}

View File

@@ -35,7 +35,7 @@ export default function StepsEditor({ isDisabled, steps, onStepUpdate, onStepPlu
label={messages.detailsOfTheStep}
value={step.step}
onValueChange={(changeValue) => {
onStepUpdate(step.id, { ...step, step: changeValue, editState: 'changed' });
onStepUpdate(step.id, { ...step, step: changeValue });
}}
/>
</div>
@@ -46,7 +46,7 @@ export default function StepsEditor({ isDisabled, steps, onStepUpdate, onStepPlu
label={messages.expectedResult}
value={step.result}
onValueChange={(changeValue) => {
onStepUpdate(step.id, { ...step, result: changeValue, editState: 'changed' });
onStepUpdate(step.id, { ...step, result: changeValue });
}}
/>
</div>