Skip to content

Commit b9fed17

Browse files
authored
Merge pull request #372 from contentstack/feature/test-migration
[CMG-419] - Test migration | while migration is in progress and go back and come back to test migration module, it shows create test stack and start test migration button enabled
2 parents 0d245c0 + b3e96d4 commit b9fed17

File tree

1 file changed

+20
-15
lines changed

1 file changed

+20
-15
lines changed

ui/src/components/TestMigration/index.tsx

Lines changed: 20 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -48,10 +48,12 @@ const TestMigration = () => {
4848
const [data, setData] = useState<MigrationType>({});
4949
const [isLoading, setIsLoading] = useState(newMigrationData?.isprojectMapped);
5050
const [isStackLoading, setIsStackLoading] = useState<boolean>(false);
51-
const [disableTestMigration, setdisableTestMigration] = useState<boolean>(newMigrationData?.test_migration?.isMigrationStarted);
51+
const [disableTestMigration, setDisableTestMigration] = useState<boolean>(newMigrationData?.test_migration?.isMigrationStarted);
5252

53-
const [disableCreateStack, setDisableCreateStack] = useState<boolean>(newMigrationData?.test_migration?.stack_api_key && ! newMigrationData?.testStacks?.find((stack)=>stack?.stackUid === newMigrationData?.test_migration?.stack_api_key)?.isMigrated || newMigrationData?.test_migration?.isMigrationStarted );
53+
const [disableCreateStack, setDisableCreateStack] = useState<boolean>(false);
5454
const [stackLimitReached, setStackLimitReached] = useState<boolean>(false);
55+
56+
5557

5658
// Extract project ID from URL parameters
5759
const { projectId = '' } = useParams();
@@ -78,28 +80,31 @@ const TestMigration = () => {
7880
* to disable Create Test Stack and Start Test Migration buttons as per isMigrated state
7981
*/
8082
useEffect(() => {
81-
if (!newMigrationData?.testStacks?.find((stack) => stack?.stackUid === newMigrationData?.test_migration?.stack_api_key)?.isMigrated && !disableTestMigration) {
82-
//setDisableCreateStack(false);
83-
}
83+
// Check if the stack_api_key exists and evaluate the logic
84+
const shouldDisable = newMigrationData?.test_migration?.stack_api_key
85+
? !newMigrationData?.testStacks?.some(
86+
(stack) =>
87+
stack?.stackUid === newMigrationData?.test_migration?.stack_api_key &&
88+
stack.isMigrated
89+
) || newMigrationData?.test_migration?.isMigrationStarted
90+
: false;
91+
92+
setDisableCreateStack(shouldDisable);
8493

8594
if (newMigrationData?.testStacks?.find((stack) => stack?.stackUid === newMigrationData?.test_migration?.stack_api_key)?.isMigrated === true) {
86-
setdisableTestMigration(true);
95+
setDisableTestMigration(true);
8796
}
88-
}, [newMigrationData?.testStacks]);
97+
}, [newMigrationData]);
8998

9099
useEffect(() => {
91-
92100
// Retrieve and apply saved state from sessionStorage
93101
const savedState = getStateFromLocalStorage(projectId);
94102
if (savedState) {
95-
setdisableTestMigration(savedState?.isTestMigrationStarted);
103+
setDisableTestMigration(savedState?.isTestMigrationStarted);
96104
setDisableCreateStack(savedState?.isTestMigrationStarted);
97105
}
98-
99106
},[]);
100107

101-
102-
103108
/**
104109
* Handles create test stack function
105110
*/
@@ -152,7 +157,7 @@ const TestMigration = () => {
152157
if (res?.status === 200) {
153158
setIsStackLoading(false);
154159
setDisableCreateStack(true);
155-
setdisableTestMigration(false)
160+
setDisableTestMigration(false)
156161
Notification({
157162
notificationContent: { text: 'Test Stack created successfully' },
158163
notificationProps: {
@@ -185,7 +190,7 @@ const TestMigration = () => {
185190
);
186191

187192
if (testRes?.status === 200) {
188-
setdisableTestMigration(true);
193+
setDisableTestMigration(true);
189194

190195
//dispatch test migration started flag in redux
191196
const newMigrationDataObj : INewMigration = {
@@ -225,7 +230,7 @@ const TestMigration = () => {
225230
const handleMigrationState = (newState: boolean) => {
226231
setDisableCreateStack(newState);
227232
if (newMigrationData?.testStacks?.find((stack) => stack?.stackUid === newMigrationData?.test_migration?.stack_api_key)?.isMigrated === true) {
228-
setdisableTestMigration(!newState);
233+
setDisableTestMigration(!newState);
229234
}
230235
} ;
231236

0 commit comments

Comments
 (0)