diff options
Diffstat (limited to 'railties/test')
-rw-r--r-- | railties/test/application/console_test.rb | 18 | ||||
-rw-r--r-- | railties/test/commands/console_test.rb | 21 |
2 files changed, 18 insertions, 21 deletions
diff --git a/railties/test/application/console_test.rb b/railties/test/application/console_test.rb index 588682d3d4..592bd73924 100644 --- a/railties/test/application/console_test.rb +++ b/railties/test/application/console_test.rb @@ -119,9 +119,11 @@ class FullStackConsoleTest < ActiveSupport::TestCase assert output.include?(expected), "#{expected.inspect} expected, but got:\n\n#{output}" end - def write_prompt(command) + def write_prompt(command, expected_output = nil) @master.puts command assert_output command + assert_output expected_output if expected_output + assert_output "> " end def kill(pid) @@ -143,21 +145,17 @@ class FullStackConsoleTest < ActiveSupport::TestCase def test_sandbox pid = spawn_console - write_prompt "Post.count" - assert_output "=> 0" - + write_prompt "Post.count", "=> 0" write_prompt "Post.create" - assert_output "=> " - - write_prompt "Post.count" - assert_output "=> 1" + write_prompt "Post.count", "=> 1" kill pid pid = spawn_console - write_prompt "Post.count" - assert_output "=> 0" + write_prompt "Post.count", "=> 0" + write_prompt "Post.transaction { Post.create; raise }" + write_prompt "Post.count", "=> 0" ensure kill pid end diff --git a/railties/test/commands/console_test.rb b/railties/test/commands/console_test.rb index 6be4a5fe89..3c784b43be 100644 --- a/railties/test/commands/console_test.rb +++ b/railties/test/commands/console_test.rb @@ -58,10 +58,7 @@ class Rails::ConsoleTest < ActiveSupport::TestCase end def test_console_defaults_to_IRB - config = mock("config", console: nil) - app = mock("app", config: config) - app.expects(:load_console).returns(nil) - + app = build_app(console: nil) assert_equal IRB, Rails::Console.new(app).console end @@ -127,13 +124,15 @@ class Rails::ConsoleTest < ActiveSupport::TestCase end def app - @app ||= begin - config = mock("config", console: FakeConsole) - app = mock("app", config: config) - app.stubs(:sandbox=).returns(nil) - app.expects(:load_console) - app - end + @app ||= build_app(console: FakeConsole) + end + + def build_app(config) + config = mock("config", config) + app = mock("app", config: config) + app.stubs(:sandbox=).returns(nil) + app.expects(:load_console) + app end def parse_arguments(args) |