minitest-rails 0.2 → 1.0.0.beta1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (96) hide show
  1. checksums.yaml +7 -0
  2. data/.travis.yml +17 -14
  3. data/CHANGELOG.rdoc +66 -0
  4. data/Gemfile +7 -0
  5. data/LICENSE +1 -1
  6. data/Manifest.txt +36 -20
  7. data/README.rdoc +25 -27
  8. data/Rakefile +10 -7
  9. data/gemfiles/3.0.gemfile +2 -6
  10. data/gemfiles/3.1.gemfile +2 -6
  11. data/gemfiles/3.2.gemfile +2 -6
  12. data/gemfiles/4.0.gemfile +4 -0
  13. data/lib/generators/.document +0 -0
  14. data/lib/generators/mini_test/controller/controller_generator.rb +0 -1
  15. data/lib/generators/mini_test/controller/templates/controller_spec.rb +4 -4
  16. data/lib/generators/mini_test/controller/templates/controller_test.rb +6 -6
  17. data/lib/generators/mini_test/helper/helper_generator.rb +0 -2
  18. data/lib/generators/mini_test/helper/templates/helper_spec.rb +1 -1
  19. data/lib/generators/mini_test/helper/templates/helper_test.rb +2 -2
  20. data/lib/generators/mini_test/install/install_generator.rb +6 -1
  21. data/lib/generators/mini_test/install/templates/test_helper.rb +27 -0
  22. data/lib/generators/mini_test/integration/integration_generator.rb +2 -4
  23. data/lib/generators/mini_test/integration/templates/integration_spec.rb +6 -6
  24. data/lib/generators/mini_test/integration/templates/integration_test.rb +5 -5
  25. data/lib/generators/mini_test/mailer/mailer_generator.rb +2 -3
  26. data/lib/generators/mini_test/mailer/templates/mailer_spec.rb +1 -1
  27. data/lib/generators/mini_test/mailer/templates/mailer_test.rb +6 -6
  28. data/lib/generators/mini_test/model/model_generator.rb +3 -4
  29. data/lib/generators/mini_test/model/templates/model_spec.rb +3 -5
  30. data/lib/generators/mini_test/model/templates/model_test.rb +11 -5
  31. data/lib/generators/mini_test/route/route_generator.rb +28 -0
  32. data/lib/generators/mini_test/route/templates/route_spec.rb +10 -0
  33. data/lib/generators/mini_test/route/templates/route_test.rb +10 -0
  34. data/lib/generators/mini_test/scaffold/scaffold_generator.rb +15 -1
  35. data/lib/generators/mini_test/scaffold/templates/controller_spec.rb +14 -16
  36. data/lib/generators/mini_test/scaffold/templates/controller_test.rb +9 -9
  37. data/lib/generators/mini_test.rb +30 -14
  38. data/lib/minitest/rails/assertions.rb +1811 -0
  39. data/lib/minitest/rails/constant_lookup.rb +54 -0
  40. data/lib/minitest/rails/deprecated/action_controller.rb +2 -0
  41. data/lib/minitest/rails/deprecated/action_dispatch.rb +2 -0
  42. data/lib/minitest/rails/deprecated/action_mailer.rb +4 -0
  43. data/lib/minitest/rails/deprecated/action_view.rb +2 -0
  44. data/lib/minitest/rails/deprecated/active_support.rb +2 -0
  45. data/lib/minitest/rails/expectations.rb +659 -0
  46. data/lib/minitest/rails/generators.rb +18 -0
  47. data/lib/minitest/rails/railtie.rb +16 -0
  48. data/lib/minitest/rails/tasks/.document +0 -0
  49. data/lib/minitest/rails/tasks/minitest.rake +69 -54
  50. data/lib/minitest/rails/testing.rb +29 -0
  51. data/lib/minitest/rails/version.rb +5 -0
  52. data/lib/minitest/rails.rb +125 -35
  53. data/lib/minitest-rails.rb +2 -23
  54. data/minitest-rails.gemspec +26 -21
  55. data/tasks/test.rake +38 -0
  56. data/test/generators/test_controller_generator.rb +10 -39
  57. data/test/generators/test_helper_generator.rb +8 -35
  58. data/test/generators/test_install_generator.rb +24 -30
  59. data/test/generators/test_mailer_generator.rb +24 -29
  60. data/test/generators/test_model_generator.rb +31 -32
  61. data/test/generators/test_route_generator.rb +24 -0
  62. data/test/generators/test_scaffold_generator.rb +5 -29
  63. data/test/helper.rb +63 -0
  64. data/test/rails/action_controller/test_assertions.rb +46 -0
  65. data/test/rails/action_controller/test_controllers.rb +5 -26
  66. data/test/rails/action_controller/test_expectations.rb +45 -0
  67. data/test/rails/action_controller/test_spec_type.rb +3 -7
  68. data/test/rails/{test_action_dispatch_spec_type.rb → action_dispatch/test_spec_type.rb} +16 -11
  69. data/test/rails/action_mailer/test_mailers.rb +109 -0
  70. data/test/rails/{test_action_mailer_spec_type.rb → action_mailer/test_spec_type.rb} +3 -8
  71. data/test/rails/action_view/test_helpers.rb +73 -0
  72. data/test/rails/{test_action_view_spec_type.rb → action_view/test_spec_type.rb} +10 -10
  73. data/test/rails/active_support/test_assertions.rb +59 -0
  74. data/test/rails/active_support/test_expectations.rb +49 -0
  75. data/test/rails/{test_active_support_spec_type.rb → active_support/test_spec_type.rb} +2 -7
  76. data/test/rails/generators/test_spec_type.rb +36 -0
  77. data/test/rails/minitest_5_api_test.rb +8 -0
  78. data/test/rails/test_constant_lookup.rb +58 -0
  79. data/test/test_sanity.rb +1 -2
  80. metadata +84 -56
  81. data/gemfiles/3.0.gemfile.lock +0 -92
  82. data/gemfiles/3.1.gemfile.lock +0 -103
  83. data/gemfiles/3.2.gemfile.lock +0 -101
  84. data/lib/autotest/discover.rb +0 -5
  85. data/lib/autotest/fixtures.rb +0 -7
  86. data/lib/autotest/migrate.rb +0 -5
  87. data/lib/autotest/minitest_rails.rb +0 -62
  88. data/lib/generators/mini_test/install/templates/test/minitest_helper.rb +0 -25
  89. data/lib/minitest/rails/action_controller.rb +0 -61
  90. data/lib/minitest/rails/action_dispatch.rb +0 -36
  91. data/lib/minitest/rails/action_mailer.rb +0 -19
  92. data/lib/minitest/rails/action_view.rb +0 -20
  93. data/lib/minitest/rails/active_support.rb +0 -68
  94. data/lib/minitest/rails/declarative.rb +0 -27
  95. data/lib/minitest/rails/mochaing.rb +0 -11
  96. data/test/rails/action_controller/test_controller_lookup.rb +0 -49
@@ -0,0 +1,54 @@
1
+ require "active_support/concern"
2
+ require "active_support/inflector"
3
+
4
+ module MiniTest
5
+ module Rails
6
+ module Testing
7
+ # Resolves a constant from a minitest spec name.
8
+ #
9
+ # Given the following spec-style test:
10
+ #
11
+ # describe WidgetsController, :index do
12
+ # describe "authenticated user" do
13
+ # describe "returns widgets" do
14
+ # it "has a controller that exists" do
15
+ # assert_kind_of WidgetsController, @controller
16
+ # end
17
+ # end
18
+ # end
19
+ # end
20
+ #
21
+ # The test will have the following name:
22
+ #
23
+ # "WidgetsController::index::authenticated user::returns widgets"
24
+ #
25
+ # The constant WidgetsController can be resolved from the name.
26
+ # The following code will resolve the constant:
27
+ #
28
+ # controller = determine_constant_from_test_name(name) do |constant|
29
+ # Class === constant && constant < ::ActionController::Metal
30
+ # end
31
+ module ConstantLookup
32
+ extend ::ActiveSupport::Concern
33
+
34
+ module ClassMethods # :nodoc:
35
+ def determine_constant_from_test_name(test_name)
36
+ names = test_name.split "::"
37
+ while names.size > 0 do
38
+ names.last.sub!(/Test$/, "")
39
+ begin
40
+ constant = names.join("::").constantize
41
+ break(constant) if yield(constant)
42
+ rescue NameError
43
+ # Constant wasn't found, move on
44
+ ensure
45
+ names.pop
46
+ end
47
+ end
48
+ end
49
+ end
50
+
51
+ end
52
+ end
53
+ end
54
+ end
@@ -0,0 +1,2 @@
1
+ ActiveSupport::Deprecation.warn "MiniTest::Rails::ActionController::TestCase is deprecated. Please remove 'MiniTest::Rails::' from your tests. Support for this namespace will removed when minitest-rails reaches 1.0 release.\n\nhttps://github.com/blowmage/minitest-rails/wiki/Upgrading-to-0.9"
2
+ MiniTest::Rails::ActionController::TestCase = ::ActionController::TestCase
@@ -0,0 +1,2 @@
1
+ ActiveSupport::Deprecation.warn "MiniTest::Rails::ActionDispatch::TestCase is deprecated. Please remove 'MiniTest::Rails::' from your tests. Support for this namespace will removed when minitest-rails reaches 1.0 release.\n\nhttps://github.com/blowmage/minitest-rails/wiki/Upgrading-to-0.9"
2
+ MiniTest::Rails::ActionDispatch::TestCase = ::ActionDispatch::TestCase
@@ -0,0 +1,4 @@
1
+ ActiveSupport::Deprecation.warn "MiniTest::Rails::ActionMailer::TestCase is deprecated. Please remove 'MiniTest::Rails::' from your tests. Support for this namespace will removed when minitest-rails reaches 1.0 release.\n\nhttps://github.com/blowmage/minitest-rails/wiki/Upgrading-to-0.9"
2
+ if defined? ActionMailer
3
+ MiniTest::Rails::ActionMailer::TestCase = ::ActionMailer::TestCase
4
+ end
@@ -0,0 +1,2 @@
1
+ ActiveSupport::Deprecation.warn "MiniTest::Rails::ActionView::TestCase is deprecated. Please remove 'MiniTest::Rails::' from your tests. Support for this namespace will removed when minitest-rails reaches 1.0 release.\n\nhttps://github.com/blowmage/minitest-rails/wiki/Upgrading-to-0.9"
2
+ MiniTest::Rails::ActionView::TestCase = ::ActionView::TestCase
@@ -0,0 +1,2 @@
1
+ ActiveSupport::Deprecation.warn "MiniTest::Rails::ActiveSupport::TestCase is deprecated. Please remove 'MiniTest::Rails::' from your tests. Support for this namespace will removed when minitest-rails reaches 1.0 release.\n\nhttps://github.com/blowmage/minitest-rails/wiki/Upgrading-to-0.9"
2
+ MiniTest::Rails::ActiveSupport::TestCase = ::ActiveSupport::TestCase