提交 da1baeab 编写于 作者: J José Valim

Added integration and performance test generators.

上级 0f1c325f
Description:
Stubs out a new integration test. Pass the name of the test, either
CamelCased or under_scored, as an argument. The new test class is
generated in test/integration/testname_test.rb
Example:
`./script/generate integration_test GeneralStories` creates a GeneralStories
integration test in test/integration/general_stories_test.rb
module Rails
module Generators
class IntegrationTestGenerator < NamedBase
def check_class_collisions
class_collisions class_name, "#{class_name}Test"
end
def create_test_files
template 'integration_test.rb', File.join('test/integration', class_path, "#{file_name}_test.rb")
end
end
end
end
require 'test_helper'
class <%= class_name %>Test < ActionController::IntegrationTest
fixtures :all
# Replace this with your real tests.
test "the truth" do
assert true
end
end
Description:
Stubs out a new performance test. Pass the name of the test, either
CamelCased or under_scored, as an argument. The new test class is
generated in test/performance/testname_test.rb
Example:
`./script/generate performance_test GeneralStories` creates a GeneralStories
performance test in test/performance/general_stories_test.rb
module Rails
module Generators
class PerformanceTestGenerator < NamedBase
def check_class_collisions
class_collisions class_name, "#{class_name}Test"
end
def create_test_files
template 'performance_test.rb', File.join('test/performance', class_path, "#{file_name}_test.rb")
end
end end
end
require 'test_helper'
require 'performance_test_help'
class <%= class_name %>Test < ActionController::PerformanceTest
# Replace this with your real tests.
def test_homepage
get '/'
end
end
......@@ -3,6 +3,10 @@ module Generators
class MailerGenerator < Base
argument :actions, :type => :array, :default => [], :banner => "method method"
def check_class_collisions
class_collisions class_name, "#{class_name}Test"
end
def create_test_files
template "unit_test.rb", File.join('test', 'unit', class_path, "#{file_name}_test.rb")
end
......
module TestUnit
module Generators
class ObserverGenerator < Base
def check_class_collisions
class_collisions class_name, "#{class_name}Test"
end
def create_test_files
template 'unit_test.rb', File.join('test', 'unit', class_path, "#{file_name}_observer_test.rb")
end
......
require 'abstract_unit'
require 'generators/generators_test_helper'
require 'generators/rails/integration_test/integration_test_generator'
class IntegrationTestGeneratorTest < GeneratorsTestCase
def test_integration_test_skeleton_is_created
run_generator
assert_file "test/integration/integration_test.rb"
end
protected
def run_generator(args=["integration"])
silence(:stdout) { Rails::Generators::IntegrationTestGenerator.start args, :root => destination_root }
end
end
require 'abstract_unit'
require 'generators/generators_test_helper'
require 'generators/rails/performance_test/performance_test_generator'
class PerformanceTestGeneratorTest < GeneratorsTestCase
def test_performance_test_skeleton_is_created
run_generator
assert_file "test/performance/performance_test.rb"
end
protected
def run_generator(args=["performance"])
silence(:stdout) { Rails::Generators::PerformanceTestGenerator.start args, :root => destination_root }
end
end
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册