ohloh_scm / branches / master / test / unit / abstract_adapter_test.rb
history
require File.dirname(__FILE__) + '/../test_helper'
module Scm::Adapters
class AbstractAdapterTest < Scm::Test
def test_simple_validation
scm = AbstractAdapter.new()
assert !scm.valid?
assert_equal [[:url, "The URL can't be blank."]], scm.errors
scm.url = "http://www.test.org/test"
assert scm.valid?
assert scm.errors.empty?
end
def test_valid_urls
['http://www.ohloh.net'].each do |url|
assert !AbstractAdapter.new(:url => url).validate_url
end
end
def test_invalid_urls
[nil, '', '*' * 121].each do |url|
assert AbstractAdapter.new(:url => url).validate_url.any?
end
end
def test_invalid_usernames
['no spaces allowed', '/', ':', 'a'*33].each do |username|
assert AbstractAdapter.new(:username => username).validate_username.any?
end
end
def test_valid_usernames
[nil,'','joe_36','a'*32].each do |username|
assert !AbstractAdapter.new(:username => username).validate_username
end
end
def test_invalid_passwords
['no spaces allowed', 'a'*33].each do |password|
assert AbstractAdapter.new(:password => password).validate_password.any?
end
end
def test_valid_passwords
[nil,'','abc','a'*32].each do |password|
assert !AbstractAdapter.new(:password => password).validate_password
end
end
def test_invalid_branch_names
['%','a'*81].each do |branch_name|
assert AbstractAdapter.new(:branch_name => branch_name).validate_branch_name.any?
end
end
def test_valid_branch_names
[nil,'','/trunk','_','a'*80].each do |branch_name|
assert !AbstractAdapter.new(:branch_name => branch_name).validate_branch_name
end
end
def test_normalize
scm = AbstractAdapter.new(:url => " http://www.test.org/test ", :username => " joe ", :password => " abc ", :branch_name => " trunk ")
scm.normalize
assert_equal "http://www.test.org/test", scm.url
assert_equal "trunk", scm.branch_name
assert_equal "joe", scm.username
assert_equal "abc", scm.password
end
end
end
