diff options
author | Eileen M. Uchitelle <eileencodes@users.noreply.github.com> | 2017-02-20 16:35:49 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-02-20 16:35:49 -0500 |
commit | 2ee146af6ba9193862b76306685eccee79fefef9 (patch) | |
tree | d5e20c06d020731e56ccac566e73b72130a85119 /railties/test | |
parent | ff326e745614593530ee64b67ac21bf14e3d41b3 (diff) | |
parent | 42a6dbdf8480b96c4a0ac6e1dab215ae9dd77d1d (diff) | |
download | rails-2ee146af6ba9193862b76306685eccee79fefef9.tar.gz rails-2ee146af6ba9193862b76306685eccee79fefef9.tar.bz2 rails-2ee146af6ba9193862b76306685eccee79fefef9.zip |
Merge pull request #26703 from eileencodes/rails_system_tests
WIP: Capybara Integration with Rails (AKA System Tests)
Diffstat (limited to 'railties/test')
-rw-r--r-- | railties/test/generators/app_generator_test.rb | 21 | ||||
-rw-r--r-- | railties/test/generators/scaffold_generator_test.rb | 5 | ||||
-rw-r--r-- | railties/test/generators/system_test_generator_test.rb | 12 |
3 files changed, 37 insertions, 1 deletions
diff --git a/railties/test/generators/app_generator_test.rb b/railties/test/generators/app_generator_test.rb index ce29d93d6e..687aed2c47 100644 --- a/railties/test/generators/app_generator_test.rb +++ b/railties/test/generators/app_generator_test.rb @@ -42,6 +42,7 @@ DEFAULT_APP_FILES = %w( test/helpers test/mailers test/integration + test/system vendor tmp tmp/cache @@ -805,8 +806,26 @@ class AppGeneratorTest < Rails::Generators::TestCase assert_equal 4, @sequence_step end - private + def test_system_tests_directory_generated + run_generator + + assert_file("test/system/.keep") + assert_directory("test/system") + end + + def test_system_tests_are_not_generated_on_system_test_skip + run_generator [destination_root, "--skip-system-test"] + + assert_no_directory("test/system") + end + + def test_system_tests_are_not_generated_on_test_skip + run_generator [destination_root, "--skip-test"] + assert_no_directory("test/system") + end + + private def stub_rails_application(root) Rails.application.config.root = root Rails.application.class.stub(:name, "Myapp") do diff --git a/railties/test/generators/scaffold_generator_test.rb b/railties/test/generators/scaffold_generator_test.rb index e2b2acab0f..436fbd5d73 100644 --- a/railties/test/generators/scaffold_generator_test.rb +++ b/railties/test/generators/scaffold_generator_test.rb @@ -62,6 +62,11 @@ class ScaffoldGeneratorTest < Rails::Generators::TestCase assert_match(/patch product_line_url\(@product_line\), params: \{ product_line: \{ product_id: @product_line\.product_id, title: @product_line\.title, user_id: @product_line\.user_id \} \}/, test) end + # System tests + assert_file "test/system/product_lines_test.rb" do |test| + assert_match(/class ProductLinesTest < ApplicationSystemTestCase/, test) + end + # Views assert_no_file "app/views/layouts/product_lines.html.erb" diff --git a/railties/test/generators/system_test_generator_test.rb b/railties/test/generators/system_test_generator_test.rb new file mode 100644 index 0000000000..e8e561ec49 --- /dev/null +++ b/railties/test/generators/system_test_generator_test.rb @@ -0,0 +1,12 @@ +require "generators/generators_test_helper" +require "rails/generators/rails/system_test/system_test_generator" + +class SystemTestGeneratorTest < Rails::Generators::TestCase + include GeneratorsTestHelper + arguments %w(user) + + def test_system_test_skeleton_is_created + run_generator + assert_file "test/system/users_test.rb", /class UsersTest < ApplicationSystemTestCase/ + end +end |