Background
The Set New Architecture command currently has iOS tests for mutation paths (adding/removing the disable line), but it does not cover no-op paths where the Podfile is already in the expected state.
Problem
Without these tests, regressions may introduce unnecessary file writes or unwanted pod install executions even when no change is required.
What should be tested
When iOS is selected, New Architecture is set to true, and the Podfile does not contain ENV['RCT_NEW_ARCH_ENABLED'] = '0', the command should do nothing.
When iOS is selected, New Architecture is set to false, and the Podfile already contains ENV['RCT_NEW_ARCH_ENABLED'] = '0', the command should do nothing.
Expected Behavior
No file write is performed in either no-op case.
No pod install command is executed in either no-op case.
Acceptance Criteria
Add two unit tests covering the no-op scenarios above.
Both tests assert no writeFile calls and no spawn("pod", ["install"]) calls.
Existing SetNewArch tests continue to pass.
Background
The Set New Architecture command currently has iOS tests for mutation paths (adding/removing the disable line), but it does not cover no-op paths where the Podfile is already in the expected state.
Problem
Without these tests, regressions may introduce unnecessary file writes or unwanted pod install executions even when no change is required.
What should be tested
When iOS is selected, New Architecture is set to true, and the Podfile does not contain ENV['RCT_NEW_ARCH_ENABLED'] = '0', the command should do nothing.
When iOS is selected, New Architecture is set to false, and the Podfile already contains ENV['RCT_NEW_ARCH_ENABLED'] = '0', the command should do nothing.
Expected Behavior
No file write is performed in either no-op case.
No pod install command is executed in either no-op case.
Acceptance Criteria
Add two unit tests covering the no-op scenarios above.
Both tests assert no writeFile calls and no spawn("pod", ["install"]) calls.
Existing SetNewArch tests continue to pass.