Skip to content

Commit 613d1ac

Browse files
justin808claude
andcommitted
Add prerelease flags to reconstruct_command and test coverage
- Store shakapacker_prerelease and react_on_rails_prerelease as instance variables - Include --shakapacker-prerelease and --react-on-rails-prerelease in reconstructed command - Add test coverage for prerelease flags in reconstruct_command This ensures demos created with prerelease flags can be accurately recreated from the metadata file's command field. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
1 parent 3cf5491 commit 613d1ac

File tree

2 files changed

+18
-0
lines changed

2 files changed

+18
-0
lines changed

lib/demo_scripts/demo_creator.rb

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,8 @@ def initialize(
2828
@scratch = scratch
2929
@skip_playwright = skip_playwright
3030
@typescript = typescript
31+
@shakapacker_prerelease = shakapacker_prerelease
32+
@react_on_rails_prerelease = react_on_rails_prerelease
3133
demos_base_dir = scratch ? 'demos-scratch' : 'demos'
3234
@demo_dir = File.join(demos_base_dir, demo_name)
3335
@config = Config.new(
@@ -505,6 +507,8 @@ def reconstruct_command
505507
cmd_parts << '--scratch' if @scratch
506508
cmd_parts << '--typescript' if @typescript
507509
cmd_parts << '--skip-playwright' if @skip_playwright
510+
cmd_parts << '--shakapacker-prerelease' if @shakapacker_prerelease
511+
cmd_parts << '--react-on-rails-prerelease' if @react_on_rails_prerelease
508512
if @config.shakapacker_version != Config::DEFAULT_SHAKAPACKER_VERSION
509513
cmd_parts << "--shakapacker-version=\"#{@config.shakapacker_version}\""
510514
end

spec/demo_scripts/demo_creator_spec.rb

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -743,5 +743,19 @@
743743
expect(command).to include('--rails-args="--skip-test,--api"')
744744
expect(command).to include('--react-on-rails-args="--redux,--typescript"')
745745
end
746+
747+
it 'includes prerelease flags when enabled' do
748+
creator = described_class.new(
749+
demo_name: demo_name,
750+
shakapacker_prerelease: true,
751+
react_on_rails_prerelease: true,
752+
dry_run: true,
753+
skip_pre_flight: true
754+
)
755+
756+
command = creator.send(:reconstruct_command)
757+
expect(command).to include('--shakapacker-prerelease')
758+
expect(command).to include('--react-on-rails-prerelease')
759+
end
746760
end
747761
end

0 commit comments

Comments
 (0)