From e9f774e59d420f824535219131cff237304352e7 Mon Sep 17 00:00:00 2001 From: RobL Date: Tue, 16 Jul 2024 12:20:14 +0100 Subject: [PATCH] fix for `rails g data_migration` with Rails engines and multiple data migrations paths --- .../data_migration/data_migration_generator.rb | 2 +- .../data_migration_generator_spec.rb | 14 ++++++++++++++ 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/lib/generators/data_migration/data_migration_generator.rb b/lib/generators/data_migration/data_migration_generator.rb index b488ec83..584dc608 100644 --- a/lib/generators/data_migration/data_migration_generator.rb +++ b/lib/generators/data_migration/data_migration_generator.rb @@ -39,7 +39,7 @@ def data_migrations_file_path end def data_migrations_path - DataMigrate.config.data_migrations_path + Array(DataMigrate.config.data_migrations_path).first end end end diff --git a/spec/generators/data_migration/data_migration_generator_spec.rb b/spec/generators/data_migration/data_migration_generator_spec.rb index 47547154..2f8620c5 100644 --- a/spec/generators/data_migration/data_migration_generator_spec.rb +++ b/spec/generators/data_migration/data_migration_generator_spec.rb @@ -61,6 +61,20 @@ subject.create_data_migration end end + + context 'when custom data migrations path contains an array of paths' do + before do + DataMigrate.config.data_migrations_path = ['abc', 'def'] + end + + it 'returns the first file path' do + is_expected.to receive(:migration_template).with( + 'data_migration.rb', data_migrations_file_path + ) + + subject.create_data_migration + end + end end describe ".source_root" do