mirror of
https://github.com/capistrano/capistrano
synced 2023-03-27 23:21:18 -04:00

git-svn-id: http://svn.rubyonrails.org/rails/tools/capistrano@6702 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
55 lines
1.9 KiB
Ruby
55 lines
1.9 KiB
Ruby
require "#{File.dirname(__FILE__)}/../../utils"
|
|
require 'capistrano/recipes/deploy/scm/base'
|
|
|
|
class DeploySCMBaseTest < Test::Unit::TestCase
|
|
class TestSCM < Capistrano::Deploy::SCM::Base
|
|
default_command "floopy"
|
|
end
|
|
|
|
def setup
|
|
@config = { }
|
|
def @config.exists?(name); key?(name); end
|
|
|
|
@source = TestSCM.new(@config)
|
|
end
|
|
|
|
def test_command_should_default_to_default_command
|
|
assert_equal "floopy", @source.command
|
|
@source.local { assert_equal "floopy", @source.command }
|
|
end
|
|
|
|
def test_command_should_use_scm_command_if_available
|
|
@config[:scm_command] = "/opt/local/bin/floopy"
|
|
assert_equal "/opt/local/bin/floopy", @source.command
|
|
end
|
|
|
|
def test_command_should_use_scm_command_in_local_mode_if_local_scm_command_not_set
|
|
@config[:scm_command] = "/opt/local/bin/floopy"
|
|
@source.local { assert_equal "/opt/local/bin/floopy", @source.command }
|
|
end
|
|
|
|
def test_command_should_use_local_scm_command_in_local_mode_if_local_scm_command_is_set
|
|
@config[:scm_command] = "/opt/local/bin/floopy"
|
|
@config[:local_scm_command] = "/usr/local/bin/floopy"
|
|
assert_equal "/opt/local/bin/floopy", @source.command
|
|
@source.local { assert_equal "/usr/local/bin/floopy", @source.command }
|
|
end
|
|
|
|
def test_command_should_use_default_if_scm_command_is_default
|
|
@config[:scm_command] = :default
|
|
assert_equal "floopy", @source.command
|
|
end
|
|
|
|
def test_command_should_use_default_in_local_mode_if_local_scm_command_is_default
|
|
@config[:scm_command] = "/foo/bar/floopy"
|
|
@config[:local_scm_command] = :default
|
|
@source.local { assert_equal "floopy", @source.command }
|
|
end
|
|
|
|
def test_local_mode_proxy_should_treat_messages_as_being_in_local_mode
|
|
@config[:scm_command] = "/foo/bar/floopy"
|
|
@config[:local_scm_command] = :default
|
|
assert_equal "floopy", @source.local.command
|
|
assert_equal "/foo/bar/floopy", @source.command
|
|
end
|
|
end
|