class Quails::ConsoleTest
Attributes
output[R]
Public Class Methods
new(console)
click to toggle source
# File railties/test/commands/console_test.rb, line 156 def initialize(console) @console = console end
Public Instance Methods
test_console_defaults_to_IRB()
click to toggle source
# File railties/test/commands/console_test.rb, line 56 def test_console_defaults_to_IRB app = build_app(nil) assert_equal IRB, Quails::Console.new(app).console end
test_console_with_environment()
click to toggle source
# File railties/test/commands/console_test.rb, line 51 def test_console_with_environment start ["-e", "production"] assert_match(/\sproduction\s/, output) end
test_default_environment_with_no_quails_env()
click to toggle source
# File railties/test/commands/console_test.rb, line 61 def test_default_environment_with_no_quails_env with_quails_env nil do start assert_match(/\sdevelopment\s/, output) end end
test_default_environment_with_quails_env()
click to toggle source
# File railties/test/commands/console_test.rb, line 68 def test_default_environment_with_quails_env with_quails_env "special-production" do start assert_match(/\sspecial-production\s/, output) end end
test_default_environment_with_rack_env()
click to toggle source
# File railties/test/commands/console_test.rb, line 75 def test_default_environment_with_rack_env with_rack_env "production" do start assert_match(/\sproduction\s/, output) end end
test_e_option()
click to toggle source
# File railties/test/commands/console_test.rb, line 82 def test_e_option start ["-e", "special-production"] assert_match(/\sspecial-production\s/, output) end
test_e_option_is_properly_expanded()
click to toggle source
# File railties/test/commands/console_test.rb, line 87 def test_e_option_is_properly_expanded start ["-e", "prod"] assert_match(/\sproduction\s/, output) end
test_environment_option()
click to toggle source
# File railties/test/commands/console_test.rb, line 92 def test_environment_option start ["--environment=special-production"] assert_match(/\sspecial-production\s/, output) end
test_no_options()
click to toggle source
# File railties/test/commands/console_test.rb, line 31 def test_no_options console = Quails::Console.new(app, parse_arguments([])) assert !console.sandbox? end
test_quails_env_is_dev_when_argument_is_dev_and_dev_env_is_present()
click to toggle source
# File railties/test/commands/console_test.rb, line 118 def test_quails_env_is_dev_when_argument_is_dev_and_dev_env_is_present Quails::Command::ConsoleCommand.class_eval do alias_method :old_environments, :available_environments define_method :available_environments do ["dev"] end end assert_deprecated do assert_match("dev", parse_arguments(["dev"])[:environment]) end ensure Quails::Command::ConsoleCommand.class_eval do undef_method :available_environments alias_method :available_environments, :old_environments undef_method :old_environments end end
test_quails_env_is_development_when_argument_is_d()
click to toggle source
# File railties/test/commands/console_test.rb, line 111 def test_quails_env_is_development_when_argument_is_d assert_deprecated do start ["d"] assert_match(/\sdevelopment\s/, output) end end
test_quails_env_is_production_when_first_argument_is_p()
click to toggle source
# File railties/test/commands/console_test.rb, line 97 def test_quails_env_is_production_when_first_argument_is_p assert_deprecated do start ["p"] assert_match(/\sproduction\s/, output) end end
test_quails_env_is_test_when_first_argument_is_t()
click to toggle source
# File railties/test/commands/console_test.rb, line 104 def test_quails_env_is_test_when_first_argument_is_t assert_deprecated do start ["t"] assert_match(/\stest\s/, output) end end
test_sandbox_option()
click to toggle source
# File railties/test/commands/console_test.rb, line 21 def test_sandbox_option console = Quails::Console.new(app, parse_arguments(["--sandbox"])) assert console.sandbox? end
test_short_version_of_sandbox_option()
click to toggle source
# File railties/test/commands/console_test.rb, line 26 def test_short_version_of_sandbox_option console = Quails::Console.new(app, parse_arguments(["-s"])) assert console.sandbox? end
test_start()
click to toggle source
# File railties/test/commands/console_test.rb, line 36 def test_start start assert app.console.started? assert_match(/Loading \w+ environment \(Quails/, output) end
test_start_with_sandbox()
click to toggle source
# File railties/test/commands/console_test.rb, line 43 def test_start_with_sandbox start ["--sandbox"] assert app.console.started? assert app.sandbox assert_match(/Loading \w+ environment in sandbox \(Quails/, output) end
Private Instance Methods
app()
click to toggle source
# File railties/test/commands/console_test.rb, line 148 def app @app ||= build_app(FakeConsole) end
build_app(console)
click to toggle source
# File railties/test/commands/console_test.rb, line 152 def build_app(console) mocked_console = Class.new do attr_reader :sandbox, :console def initialize(console) @console = console end def config self end def sandbox=(arg) @sandbox = arg end def load_console end end mocked_console.new(console) end
config()
click to toggle source
# File railties/test/commands/console_test.rb, line 160 def config self end
load_console()
click to toggle source
# File railties/test/commands/console_test.rb, line 168 def load_console end
parse_arguments(args)
click to toggle source
# File railties/test/commands/console_test.rb, line 174 def parse_arguments(args) Quails::Command::ConsoleCommand.class_eval do alias_method :old_perform, :perform define_method(:perform) do extract_environment_option_from_argument options end end Quails::Command.invoke(:console, args) ensure Quails::Command::ConsoleCommand.class_eval do undef_method :perform alias_method :perform, :old_perform undef_method :old_perform end end
sandbox=(arg)
click to toggle source
# File railties/test/commands/console_test.rb, line 164 def sandbox=(arg) @sandbox = arg end
start(argv = [])
click to toggle source
# File railties/test/commands/console_test.rb, line 143 def start(argv = []) quails_console = Quails::Console.new(app, parse_arguments(argv)) @output = capture(:stdout) { quails_console.start } end