diff options
author | José Valim <jose.valim@plataformatec.com.br> | 2012-02-01 09:49:41 -0800 |
---|---|---|
committer | José Valim <jose.valim@plataformatec.com.br> | 2012-02-01 09:49:41 -0800 |
commit | 6b22889bd8950e6d0cfad29db0e425a731067a46 (patch) | |
tree | f167a31929b8c849077617c9b801c1b85dd405e1 | |
parent | d2c64009482d38d4894dd09d2d1e2fb4a165ecac (diff) | |
parent | 8afa8b0c218fe9c197140ebeeedd758fdf77c0e1 (diff) | |
download | rails-6b22889bd8950e6d0cfad29db0e425a731067a46.tar.gz rails-6b22889bd8950e6d0cfad29db0e425a731067a46.tar.bz2 rails-6b22889bd8950e6d0cfad29db0e425a731067a46.zip |
Merge pull request #4826 from kennyj/fix_4737-2
Fix GH #4737. Missing helper file (LoadError) in mountable plugin.
-rw-r--r-- | railties/lib/rails/generators/rails/plugin_new/plugin_new_generator.rb | 4 | ||||
-rw-r--r-- | railties/test/generators/plugin_new_generator_test.rb | 15 |
2 files changed, 11 insertions, 8 deletions
diff --git a/railties/lib/rails/generators/rails/plugin_new/plugin_new_generator.rb b/railties/lib/rails/generators/rails/plugin_new/plugin_new_generator.rb index 0e900a34bb..f4263d1b98 100644 --- a/railties/lib/rails/generators/rails/plugin_new/plugin_new_generator.rb +++ b/railties/lib/rails/generators/rails/plugin_new/plugin_new_generator.rb @@ -285,7 +285,9 @@ task :default => :test end def valid_const? - if camelized =~ /^\d/ + if original_name =~ /[^0-9a-zA-Z_]+/ + raise Error, "Invalid plugin name #{original_name}. Please give a name which use only alphabetic or numeric or \"_\" characters." + elsif camelized =~ /^\d/ raise Error, "Invalid plugin name #{original_name}. Please give a name which does not start with numbers." elsif RESERVED_NAMES.include?(name) raise Error, "Invalid plugin name #{original_name}. Please give a name which does not match one of the reserved rails words." diff --git a/railties/test/generators/plugin_new_generator_test.rb b/railties/test/generators/plugin_new_generator_test.rb index f0164ed667..4bb5f04a79 100644 --- a/railties/test/generators/plugin_new_generator_test.rb +++ b/railties/test/generators/plugin_new_generator_test.rb @@ -27,13 +27,14 @@ class PluginNewGeneratorTest < Rails::Generators::TestCase include SharedGeneratorTests def test_invalid_plugin_name_raises_an_error - content = capture(:stderr){ run_generator [File.join(destination_root, "43-things")] } - assert_equal "Invalid plugin name 43-things. Please give a name which does not start with numbers.\n", content - end - - def test_invalid_plugin_name_is_fixed - run_generator [File.join(destination_root, "things-43")] - assert_file "things-43/lib/things-43.rb", /module Things43/ + content = capture(:stderr){ run_generator [File.join(destination_root, "things-43")] } + assert_equal "Invalid plugin name things-43. Please give a name which use only alphabetic or numeric or \"_\" characters.\n", content + + content = capture(:stderr){ run_generator [File.join(destination_root, "things4.3")] } + assert_equal "Invalid plugin name things4.3. Please give a name which use only alphabetic or numeric or \"_\" characters.\n", content + + content = capture(:stderr){ run_generator [File.join(destination_root, "43things")] } + assert_equal "Invalid plugin name 43things. Please give a name which does not start with numbers.\n", content end def test_camelcase_plugin_name_underscores_filenames |