minitest-rails 0.0.7 → 0.1.0.alpha
Sign up to get free protection for your applications and to get access to all the features.
- data/Manifest.txt +27 -25
- data/README.rdoc +6 -6
- data/Rakefile +3 -3
- data/lib/generators/{minitest.rb → mini_test.rb} +2 -2
- data/lib/generators/{minitest → mini_test}/controller/controller_generator.rb +3 -3
- data/lib/generators/{minitest/controller/templates/controller_test.rb → mini_test/controller/templates/controller_spec.rb} +6 -7
- data/lib/generators/mini_test/controller/templates/controller_test.rb +19 -0
- data/lib/generators/{minitest → mini_test}/helper/helper_generator.rb +3 -3
- data/lib/generators/{minitest → mini_test}/helper/templates/helper_spec.rb +0 -0
- data/lib/generators/{minitest → mini_test}/helper/templates/helper_test.rb +1 -1
- data/lib/generators/{minitest → mini_test}/install/install_generator.rb +1 -1
- data/lib/generators/mini_test/install/templates/test/minitest_helper.rb +15 -0
- data/lib/generators/mini_test/integration/integration_generator.rb +19 -0
- data/lib/generators/mini_test/integration/templates/integration_spec.rb +8 -0
- data/lib/generators/mini_test/integration/templates/integration_test.rb +7 -0
- data/lib/generators/{minitest → mini_test}/mailer/mailer_generator.rb +3 -3
- data/lib/generators/{minitest → mini_test}/mailer/templates/mailer_spec.rb +2 -2
- data/lib/generators/{minitest → mini_test}/mailer/templates/mailer_test.rb +5 -5
- data/lib/generators/{minitest → mini_test}/model/model_generator.rb +3 -3
- data/lib/generators/{minitest → mini_test}/model/templates/fixtures.yml +0 -0
- data/lib/generators/mini_test/model/templates/model_spec.rb +13 -0
- data/lib/generators/mini_test/model/templates/model_test.rb +9 -0
- data/lib/generators/{minitest → mini_test}/scaffold/scaffold_generator.rb +3 -3
- data/lib/generators/{minitest → mini_test}/scaffold/templates/controller_spec.rb +1 -5
- data/lib/generators/{minitest → mini_test}/scaffold/templates/controller_test.rb +3 -2
- data/lib/minitest-rails.rb +5 -5
- data/lib/minitest/rails.rb +40 -5
- data/lib/minitest/rails/action_controller.rb +17 -0
- data/lib/minitest/rails/action_dispatch.rb +21 -0
- data/lib/minitest/rails/action_mailer.rb +17 -0
- data/lib/minitest/rails/active_support.rb +62 -0
- data/lib/minitest/rails/tasks/minitest.rake +1 -1
- data/minitest-rails.gemspec +42 -0
- data/test/test_controller_generator.rb +5 -10
- data/test/test_helper_generator.rb +5 -5
- data/test/test_install_generator.rb +5 -13
- data/test/test_mailer_generator.rb +5 -6
- data/test/test_minitest.rb +2 -2
- data/test/test_model_generator.rb +5 -7
- data/test/test_scaffold_generator.rb +5 -8
- metadata +43 -41
- data/lib/generators/minitest/controller/templates/controller_spec.rb +0 -17
- data/lib/generators/minitest/install/templates/test/minitest_helper.rb +0 -61
- data/lib/generators/minitest/model/templates/model_spec.rb +0 -28
- data/lib/generators/minitest/model/templates/model_test.rb +0 -11
- data/lib/minitest/rails/controller.rb +0 -104
- data/lib/minitest/rails/fixtures.rb +0 -14
- data/lib/minitest/rails/helper.rb +0 -30
- data/lib/minitest/rails/mailer.rb +0 -8
- data/lib/minitest/rails/model.rb +0 -8
- data/lib/minitest/rails/spec.rb +0 -14
data/lib/minitest/rails.rb
CHANGED
@@ -1,5 +1,40 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
require "minitest/rails/
|
1
|
+
# Make double-sure the RAILS_ENV is not set to production,
|
2
|
+
# so fixtures aren't loaded into that environment
|
3
|
+
abort("Abort testing: Your Rails environment is running in production mode!") if Rails.env.production?
|
4
|
+
|
5
|
+
require "minitest/rails/active_support"
|
6
|
+
require "minitest/rails/action_controller"
|
7
|
+
require "minitest/rails/action_mailer"
|
8
|
+
require "minitest/rails/action_dispatch"
|
9
|
+
|
10
|
+
# Enable turn if it is available
|
11
|
+
begin
|
12
|
+
require 'turn'
|
13
|
+
MiniTest::Unit.use_natural_language_case_names = true
|
14
|
+
rescue LoadError
|
15
|
+
end
|
16
|
+
|
17
|
+
if defined?(ActiveRecord::Base)
|
18
|
+
class MiniTest::Rails::ActiveSupport::TestCase
|
19
|
+
include ActiveRecord::TestFixtures
|
20
|
+
self.fixture_path = "#{Rails.root}/test/fixtures/"
|
21
|
+
end
|
22
|
+
|
23
|
+
MiniTest::Rails::ActionDispatch::IntegrationTest.fixture_path = MiniTest::Rails::ActiveSupport::TestCase.fixture_path
|
24
|
+
|
25
|
+
def create_fixtures(*table_names, &block)
|
26
|
+
Fixtures.create_fixtures(MiniTest::Rails::ActiveSupport::TestCase.fixture_path, table_names, {}, &block)
|
27
|
+
end
|
28
|
+
end
|
29
|
+
|
30
|
+
class MiniTest::Rails::ActionController::TestCase
|
31
|
+
setup do
|
32
|
+
@routes = Rails.application.routes
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
36
|
+
class MiniTest::Rails::ActionDispatch::IntegrationTest
|
37
|
+
setup do
|
38
|
+
@routes = Rails.application.routes
|
39
|
+
end
|
40
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
require "minitest/rails/active_support"
|
2
|
+
require "action_controller/test_case"
|
3
|
+
|
4
|
+
module MiniTest
|
5
|
+
module Rails
|
6
|
+
module ActionController
|
7
|
+
class TestCase < MiniTest::Rails::ActiveSupport::TestCase
|
8
|
+
# Use AC::TestCase for the base class when describing a controller
|
9
|
+
register_spec_type(self) do |desc|
|
10
|
+
desc < ::ActionController::Base
|
11
|
+
end
|
12
|
+
|
13
|
+
include ::ActionController::TestCase::Behavior
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
require 'minitest/rails/active_support'
|
2
|
+
require 'action_dispatch/testing/integration'
|
3
|
+
|
4
|
+
module MiniTest
|
5
|
+
module Rails
|
6
|
+
module ActionDispatch
|
7
|
+
class IntegrationTest < MiniTest::Rails::ActiveSupport::TestCase
|
8
|
+
include ::ActionDispatch::Integration::Runner
|
9
|
+
include ::ActionController::TemplateAssertions
|
10
|
+
|
11
|
+
def app
|
12
|
+
super || ::ActionDispatch::IntegrationTest.app
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
# Register by name
|
20
|
+
MiniTest::Spec.register_spec_type(/IntegrationTest$/, MiniTest::Rails::ActionDispatch::IntegrationTest)
|
21
|
+
MiniTest::Spec.register_spec_type(/Integration Test$/, MiniTest::Rails::ActionDispatch::IntegrationTest)
|
@@ -0,0 +1,17 @@
|
|
1
|
+
require "minitest/rails/active_support"
|
2
|
+
require "action_mailer/test_case"
|
3
|
+
|
4
|
+
module MiniTest
|
5
|
+
module Rails
|
6
|
+
module ActionMailer
|
7
|
+
class TestCase < MiniTest::Rails::ActiveSupport::TestCase
|
8
|
+
# Use AM::TestCase for the base class when describing a mailer
|
9
|
+
register_spec_type(self) do |desc|
|
10
|
+
desc < ::ActionMailer::Base
|
11
|
+
end
|
12
|
+
|
13
|
+
include ::ActionMailer::TestCase::Behavior
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,62 @@
|
|
1
|
+
require 'minitest/spec'
|
2
|
+
require 'active_support/testing/setup_and_teardown'
|
3
|
+
require 'active_support/testing/assertions'
|
4
|
+
require 'active_support/testing/deprecation'
|
5
|
+
require 'active_support/testing/declarative'
|
6
|
+
require 'active_support/testing/pending'
|
7
|
+
require 'active_support/testing/isolation'
|
8
|
+
require 'active_support/testing/mochaing'
|
9
|
+
require 'active_support/core_ext/kernel/reporting'
|
10
|
+
|
11
|
+
module MiniTest
|
12
|
+
module Rails
|
13
|
+
module ActiveSupport
|
14
|
+
class TestCase < ::MiniTest::Spec
|
15
|
+
|
16
|
+
# This is deprecated, but I don't want to change the Rails calls to it.
|
17
|
+
# Keep it here for now, until a better way presents itself...
|
18
|
+
def assert_block msg = nil
|
19
|
+
msg = message(msg) { "Expected block to return true value" }
|
20
|
+
assert yield, msg
|
21
|
+
end
|
22
|
+
|
23
|
+
# Use AS::TestCase for the base class when describing a model
|
24
|
+
register_spec_type(self) do |desc|
|
25
|
+
desc < ActiveRecord::Base
|
26
|
+
end
|
27
|
+
|
28
|
+
Assertion = ::MiniTest::Assertion
|
29
|
+
alias_method :method_name, :name if method_defined? :name
|
30
|
+
alias_method :method_name, :__name__ if method_defined? :__name__
|
31
|
+
|
32
|
+
$tags = {}
|
33
|
+
def self.for_tag(tag)
|
34
|
+
yield if $tags[tag]
|
35
|
+
end
|
36
|
+
|
37
|
+
# FIXME: we have tests that depend on run order, we should fix that and
|
38
|
+
# remove this method.
|
39
|
+
def self.test_order # :nodoc:
|
40
|
+
:sorted
|
41
|
+
end
|
42
|
+
|
43
|
+
include ::ActiveSupport::Testing::SetupAndTeardown
|
44
|
+
include ::ActiveSupport::Testing::Assertions
|
45
|
+
include ::ActiveSupport::Testing::Deprecation
|
46
|
+
include ::ActiveSupport::Testing::Pending
|
47
|
+
extend ::ActiveSupport::Testing::Declarative
|
48
|
+
|
49
|
+
# test/unit backwards compatibility methods
|
50
|
+
alias :assert_raise :assert_raises
|
51
|
+
alias :assert_not_nil :refute_nil
|
52
|
+
alias :assert_not_equal :refute_equal
|
53
|
+
alias :assert_no_match :refute_match
|
54
|
+
alias :assert_not_same :refute_same
|
55
|
+
|
56
|
+
def assert_nothing_raised(*args)
|
57
|
+
yield
|
58
|
+
end
|
59
|
+
end
|
60
|
+
end
|
61
|
+
end
|
62
|
+
end
|
@@ -0,0 +1,42 @@
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
2
|
+
|
3
|
+
Gem::Specification.new do |s|
|
4
|
+
s.name = "minitest-rails"
|
5
|
+
s.version = "0.1.0.alpha.20120525143907"
|
6
|
+
|
7
|
+
s.required_rubygems_version = Gem::Requirement.new("> 1.3.1") if s.respond_to? :required_rubygems_version=
|
8
|
+
s.authors = ["Mike Moore"]
|
9
|
+
s.date = "2012-05-25"
|
10
|
+
s.description = "Adds MiniTest as the default testing library in Rails 3."
|
11
|
+
s.email = ["mike@blowmage.com"]
|
12
|
+
s.extra_rdoc_files = ["CHANGELOG.rdoc", "Manifest.txt", "README.rdoc"]
|
13
|
+
s.files = [".autotest", "CHANGELOG.rdoc", "Manifest.txt", "README.rdoc", "Rakefile", "lib/generators/mini_test.rb", "lib/generators/mini_test/controller/controller_generator.rb", "lib/generators/mini_test/controller/templates/controller_spec.rb", "lib/generators/mini_test/controller/templates/controller_test.rb", "lib/generators/mini_test/helper/helper_generator.rb", "lib/generators/mini_test/helper/templates/helper_spec.rb", "lib/generators/mini_test/helper/templates/helper_test.rb", "lib/generators/mini_test/install/install_generator.rb", "lib/generators/mini_test/install/templates/test/minitest_helper.rb", "lib/generators/mini_test/integration/integration_generator.rb", "lib/generators/mini_test/integration/templates/integration_spec.rb", "lib/generators/mini_test/integration/templates/integration_test.rb", "lib/generators/mini_test/mailer/mailer_generator.rb", "lib/generators/mini_test/mailer/templates/mailer_spec.rb", "lib/generators/mini_test/mailer/templates/mailer_test.rb", "lib/generators/mini_test/model/model_generator.rb", "lib/generators/mini_test/model/templates/fixtures.yml", "lib/generators/mini_test/model/templates/model_spec.rb", "lib/generators/mini_test/model/templates/model_test.rb", "lib/generators/mini_test/scaffold/scaffold_generator.rb", "lib/generators/mini_test/scaffold/templates/controller_spec.rb", "lib/generators/mini_test/scaffold/templates/controller_test.rb", "lib/minitest-rails.rb", "lib/minitest/rails.rb", "lib/minitest/rails/action_controller.rb", "lib/minitest/rails/action_dispatch.rb", "lib/minitest/rails/action_mailer.rb", "lib/minitest/rails/active_support.rb", "lib/minitest/rails/tasks/minitest.rake", "minitest-rails.gemspec", "test/test_controller_generator.rb", "test/test_helper_generator.rb", "test/test_install_generator.rb", "test/test_mailer_generator.rb", "test/test_minitest.rb", "test/test_model_generator.rb", "test/test_scaffold_generator.rb", ".gemtest"]
|
14
|
+
s.homepage = "http://blowmage.com/minitest-rails"
|
15
|
+
s.rdoc_options = ["--main", "README.rdoc"]
|
16
|
+
s.require_paths = ["lib"]
|
17
|
+
s.rubyforge_project = "minitest-rails"
|
18
|
+
s.rubygems_version = "1.8.16"
|
19
|
+
s.summary = "MiniTest integration for Rails 3."
|
20
|
+
s.test_files = ["test/test_controller_generator.rb", "test/test_helper_generator.rb", "test/test_install_generator.rb", "test/test_mailer_generator.rb", "test/test_minitest.rb", "test/test_model_generator.rb", "test/test_scaffold_generator.rb"]
|
21
|
+
|
22
|
+
if s.respond_to? :specification_version then
|
23
|
+
s.specification_version = 3
|
24
|
+
|
25
|
+
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
26
|
+
s.add_runtime_dependency(%q<minitest>, ["~> 3.0"])
|
27
|
+
s.add_runtime_dependency(%q<rails>, ["~> 3.1"])
|
28
|
+
s.add_development_dependency(%q<rdoc>, ["~> 3.10"])
|
29
|
+
s.add_development_dependency(%q<hoe>, ["~> 3.0"])
|
30
|
+
else
|
31
|
+
s.add_dependency(%q<minitest>, ["~> 3.0"])
|
32
|
+
s.add_dependency(%q<rails>, ["~> 3.1"])
|
33
|
+
s.add_dependency(%q<rdoc>, ["~> 3.10"])
|
34
|
+
s.add_dependency(%q<hoe>, ["~> 3.0"])
|
35
|
+
end
|
36
|
+
else
|
37
|
+
s.add_dependency(%q<minitest>, ["~> 3.0"])
|
38
|
+
s.add_dependency(%q<rails>, ["~> 3.1"])
|
39
|
+
s.add_dependency(%q<rdoc>, ["~> 3.10"])
|
40
|
+
s.add_dependency(%q<hoe>, ["~> 3.0"])
|
41
|
+
end
|
42
|
+
end
|
@@ -4,22 +4,21 @@ require "minitest-rails"
|
|
4
4
|
require "rails"
|
5
5
|
require "rails/generators"
|
6
6
|
|
7
|
-
require "generators/
|
7
|
+
require "generators/mini_test/controller/controller_generator"
|
8
8
|
|
9
9
|
require "fileutils"
|
10
10
|
|
11
|
-
class TestControllerGenerator <
|
11
|
+
class TestControllerGenerator < MiniTest::Unit::TestCase
|
12
12
|
Rails::Generators.no_color!
|
13
13
|
|
14
14
|
def test_controller_generator
|
15
15
|
text = capture(:stdout) do
|
16
|
-
|
16
|
+
MiniTest::Generators::ControllerGenerator.start ["user"]
|
17
17
|
end
|
18
18
|
assert_match(/create test\/controllers\/user_controller_test.rb/m, text)
|
19
19
|
assert File.exists? "test/controllers/user_controller_test.rb"
|
20
20
|
contents = open("test/controllers/user_controller_test.rb").read
|
21
|
-
assert_match(/class UserControllerTest
|
22
|
-
assert_match(/def test_sanity/m, contents)
|
21
|
+
assert_match(/class UserControllerTest/m, contents)
|
23
22
|
ensure
|
24
23
|
# TODO: Don"t write the files
|
25
24
|
# I agree, it would be better to mock the file getting written
|
@@ -28,16 +27,12 @@ class TestControllerGenerator < Minitest::Unit::TestCase
|
|
28
27
|
|
29
28
|
def test_controller_generator_spec
|
30
29
|
text = capture(:stdout) do
|
31
|
-
|
30
|
+
MiniTest::Generators::ControllerGenerator.start ["user", "--spec"]
|
32
31
|
end
|
33
32
|
assert_match(/create test\/controllers\/user_controller_test.rb/m, text)
|
34
33
|
assert File.exists? "test/controllers/user_controller_test.rb"
|
35
34
|
contents = open("test/controllers/user_controller_test.rb").read
|
36
35
|
assert_match(/describe UserController do/m, contents)
|
37
|
-
assert_match(/subject \{ UserController \}/m, contents)
|
38
|
-
assert_match(/# fixtures :all/m, contents)
|
39
|
-
assert_match(/@controller = UserController.new/m, contents)
|
40
|
-
assert_match(/it "must be a real test"/m, contents)
|
41
36
|
ensure
|
42
37
|
FileUtils.rm_r "test/controllers"
|
43
38
|
end
|
@@ -4,21 +4,21 @@ require "minitest-rails"
|
|
4
4
|
require "rails"
|
5
5
|
require "rails/generators"
|
6
6
|
|
7
|
-
require "generators/
|
7
|
+
require "generators/mini_test/helper/helper_generator"
|
8
8
|
|
9
9
|
require "fileutils"
|
10
10
|
|
11
|
-
class TestHelperGenerator <
|
11
|
+
class TestHelperGenerator < MiniTest::Unit::TestCase
|
12
12
|
Rails::Generators.no_color!
|
13
13
|
|
14
14
|
def test_helper_generator
|
15
15
|
text = capture(:stdout) do
|
16
|
-
|
16
|
+
MiniTest::Generators::HelperGenerator.start ["user"]
|
17
17
|
end
|
18
18
|
assert_match(/create test\/helpers\/user_helper_test.rb/m, text)
|
19
19
|
assert File.exists? "test/helpers/user_helper_test.rb"
|
20
20
|
contents = open("test/helpers/user_helper_test.rb").read
|
21
|
-
assert_match(/class UserHelperTest <
|
21
|
+
assert_match(/class UserHelperTest < MiniTest::Rails::Helper/m, contents)
|
22
22
|
ensure
|
23
23
|
# TODO: Don"t write the files
|
24
24
|
# I agree, it would be better to mock the file getting written
|
@@ -27,7 +27,7 @@ class TestHelperGenerator < Minitest::Unit::TestCase
|
|
27
27
|
|
28
28
|
def test_helper_generator_spec
|
29
29
|
text = capture(:stdout) do
|
30
|
-
|
30
|
+
MiniTest::Generators::HelperGenerator.start ["user", "--spec"]
|
31
31
|
end
|
32
32
|
assert_match(/create test\/helpers\/user_helper_test.rb/m, text)
|
33
33
|
assert File.exists? "test/helpers/user_helper_test.rb"
|
@@ -4,30 +4,22 @@ require "minitest-rails"
|
|
4
4
|
require "rails"
|
5
5
|
require "rails/generators"
|
6
6
|
|
7
|
-
require "generators/
|
7
|
+
require "generators/mini_test/install/install_generator"
|
8
8
|
|
9
9
|
require "fileutils"
|
10
10
|
|
11
|
-
class TestInstallGenerator <
|
11
|
+
class TestInstallGenerator < MiniTest::Unit::TestCase
|
12
12
|
Rails::Generators.no_color!
|
13
13
|
|
14
14
|
def test_install_generator
|
15
15
|
text = capture(:stdout) do
|
16
|
-
|
16
|
+
MiniTest::Generators::InstallGenerator.start
|
17
17
|
end
|
18
18
|
assert_match(/create test\/minitest_helper.rb/m, text)
|
19
19
|
assert File.exists? "test/minitest_helper.rb"
|
20
20
|
contents = open("test/minitest_helper.rb").read
|
21
|
-
assert_match(/
|
22
|
-
assert_match(
|
23
|
-
assert_match(/class Minitest::Rails::Model/m, contents)
|
24
|
-
assert_match(/Minitest::Spec.register_spec_type\(Minitest::Rails::Model\) do/m, contents)
|
25
|
-
assert_match(/class Minitest::Rails::Controller/m, contents)
|
26
|
-
assert_match(/Minitest::Spec.register_spec_type\(\/Controller\$\/, Minitest::Rails::Controller\)/m, contents)
|
27
|
-
assert_match(/class Minitest::Rails::Helper/m, contents)
|
28
|
-
assert_match(/Minitest::Spec.register_spec_type\(\/Helper\$\/, Minitest::Rails::Helper\)/m, contents)
|
29
|
-
assert_match(/class Minitest::Rails::Mailer/m, contents)
|
30
|
-
assert_match(/Minitest::Spec.register_spec_type\(Minitest::Rails::Mailer\) do/m, contents)
|
21
|
+
assert_match(/require "minitest\/autorun"/m, contents)
|
22
|
+
assert_match(/require "minitest\/rails"/m, contents)
|
31
23
|
ensure
|
32
24
|
# TODO: Don"t write the files
|
33
25
|
# I agree, it would be better to mock the file getting written
|
@@ -4,21 +4,21 @@ require "minitest-rails"
|
|
4
4
|
require "rails"
|
5
5
|
require "rails/generators"
|
6
6
|
|
7
|
-
require "generators/
|
7
|
+
require "generators/mini_test/mailer/mailer_generator"
|
8
8
|
|
9
9
|
require "fileutils"
|
10
10
|
|
11
|
-
class TestMailerGenerator <
|
11
|
+
class TestMailerGenerator < MiniTest::Unit::TestCase
|
12
12
|
Rails::Generators.no_color!
|
13
13
|
|
14
14
|
def test_mailer_generator
|
15
15
|
text = capture(:stdout) do
|
16
|
-
|
16
|
+
MiniTest::Generators::MailerGenerator.start ["notification"]
|
17
17
|
end
|
18
18
|
assert_match(/create test\/mailers\/notification_test.rb/m, text)
|
19
19
|
assert File.exists? "test/mailers/notification_test.rb"
|
20
20
|
contents = open("test/mailers/notification_test.rb").read
|
21
|
-
assert_match(/class NotificationTest
|
21
|
+
assert_match(/class NotificationTest/m, contents)
|
22
22
|
ensure
|
23
23
|
# TODO: Don"t write the files
|
24
24
|
# I agree, it would be better to mock the file getting written
|
@@ -27,13 +27,12 @@ class TestMailerGenerator < Minitest::Unit::TestCase
|
|
27
27
|
|
28
28
|
def test_mailer_generator_spec
|
29
29
|
text = capture(:stdout) do
|
30
|
-
|
30
|
+
MiniTest::Generators::MailerGenerator.start ["notification", "welcome", "--spec"]
|
31
31
|
end
|
32
32
|
assert_match(/create test\/mailers\/notification_test.rb/m, text)
|
33
33
|
assert File.exists? "test/mailers/notification_test.rb"
|
34
34
|
contents = open("test/mailers/notification_test.rb").read
|
35
35
|
assert_match(/describe Notification do/m, contents)
|
36
|
-
assert_match(/it "welcome" do/m, contents)
|
37
36
|
ensure
|
38
37
|
FileUtils.rm_r "test/mailers"
|
39
38
|
end
|
data/test/test_minitest.rb
CHANGED
@@ -4,21 +4,21 @@ require "minitest-rails"
|
|
4
4
|
require "rails"
|
5
5
|
require "rails/generators"
|
6
6
|
|
7
|
-
require "generators/
|
7
|
+
require "generators/mini_test/model/model_generator"
|
8
8
|
|
9
9
|
require "fileutils"
|
10
10
|
|
11
|
-
class TestModelGenerator <
|
11
|
+
class TestModelGenerator < MiniTest::Unit::TestCase
|
12
12
|
Rails::Generators.no_color!
|
13
13
|
|
14
14
|
def test_model_generator
|
15
15
|
text = capture(:stdout) do
|
16
|
-
|
16
|
+
MiniTest::Generators::ModelGenerator.start ["user"]
|
17
17
|
end
|
18
18
|
assert_match(/create test\/models\/user_test.rb/m, text)
|
19
19
|
assert File.exists? "test/models/user_test.rb"
|
20
20
|
contents = open("test/models/user_test.rb").read
|
21
|
-
assert_match(/class UserTest
|
21
|
+
assert_match(/class UserTest/m, contents)
|
22
22
|
ensure
|
23
23
|
# TODO: Don"t write the files
|
24
24
|
# I agree, it would be better to mock the file getting written
|
@@ -27,14 +27,12 @@ class TestModelGenerator < Minitest::Unit::TestCase
|
|
27
27
|
|
28
28
|
def test_model_generator_spec
|
29
29
|
text = capture(:stdout) do
|
30
|
-
|
30
|
+
MiniTest::Generators::ModelGenerator.start ["user", "--spec"]
|
31
31
|
end
|
32
32
|
assert_match(/create test\/models\/user_test.rb/m, text)
|
33
33
|
assert File.exists? "test/models/user_test.rb"
|
34
34
|
contents = open("test/models/user_test.rb").read
|
35
35
|
assert_match(/describe User do/m, contents)
|
36
|
-
assert_match(/subject \{ User.new \}/, contents)
|
37
|
-
assert_match(/# fixtures :all/, contents)
|
38
36
|
ensure
|
39
37
|
FileUtils.rm_r "test/models"
|
40
38
|
end
|
@@ -4,22 +4,21 @@ require "minitest-rails"
|
|
4
4
|
require "rails"
|
5
5
|
require "rails/generators"
|
6
6
|
|
7
|
-
require "generators/
|
7
|
+
require "generators/mini_test/scaffold/scaffold_generator"
|
8
8
|
|
9
9
|
require "fileutils"
|
10
10
|
|
11
|
-
class TestScaffoldGenerator <
|
11
|
+
class TestScaffoldGenerator < MiniTest::Unit::TestCase
|
12
12
|
Rails::Generators.no_color!
|
13
13
|
|
14
14
|
def test_scaffold_generator
|
15
15
|
text = capture(:stdout) do
|
16
|
-
|
16
|
+
MiniTest::Generators::ScaffoldGenerator.start ["user"]
|
17
17
|
end
|
18
18
|
assert_match(/create test\/controllers\/user_controller_test.rb/m, text)
|
19
19
|
assert File.exists? "test/controllers/user_controller_test.rb"
|
20
20
|
contents = open("test/controllers/user_controller_test.rb").read
|
21
|
-
assert_match(/class UserControllerTest
|
22
|
-
assert_match(/def test_index/m, contents)
|
21
|
+
assert_match(/class UserControllerTest/m, contents)
|
23
22
|
ensure
|
24
23
|
# TODO: Don"t write the files
|
25
24
|
# I agree, it would be better to mock the file getting written
|
@@ -28,14 +27,12 @@ class TestScaffoldGenerator < Minitest::Unit::TestCase
|
|
28
27
|
|
29
28
|
def test_scaffold_generator_spec
|
30
29
|
text = capture(:stdout) do
|
31
|
-
|
30
|
+
MiniTest::Generators::ScaffoldGenerator.start ["user", "--spec"]
|
32
31
|
end
|
33
32
|
assert_match(/create test\/controllers\/user_controller_test.rb/m, text)
|
34
33
|
assert File.exists? "test/controllers/user_controller_test.rb"
|
35
34
|
contents = open("test/controllers/user_controller_test.rb").read
|
36
35
|
assert_match(/describe UserController do/m, contents)
|
37
|
-
assert_match(/subject \{ UserController \}/m, contents)
|
38
|
-
assert_match(/it "must get index"/m, contents)
|
39
36
|
ensure
|
40
37
|
FileUtils.rm_r "test/controllers"
|
41
38
|
end
|