From e668bc6ebeb3002e0f71f224f111d2cca8da5ce4 Mon Sep 17 00:00:00 2001 From: Adam Byrtek Date: Fri, 14 Aug 2009 15:56:17 +0200 Subject: [PATCH 2/8] Method to detect Subversion repository location based on info. --- lib/source_control/subversion.rb | 5 +++++ test/unit/source_control/subversion_test.rb | 10 ++++++++++ 2 files changed, 15 insertions(+), 0 deletions(-) diff --git a/lib/source_control/subversion.rb b/lib/source_control/subversion.rb index e9f4dc8..ac5c29f 100644 --- a/lib/source_control/subversion.rb +++ b/lib/source_control/subversion.rb @@ -97,6 +97,11 @@ module SourceControl end def creates_ordered_build_labels?() true end + + def detect_repository + # Use svn info to detect repository location + @repository = info.url + end private diff --git a/test/unit/source_control/subversion_test.rb b/test/unit/source_control/subversion_test.rb index bbb0af0..c03bc75 100644 --- a/test/unit/source_control/subversion_test.rb +++ b/test/unit/source_control/subversion_test.rb @@ -261,6 +261,16 @@ class SourceControl::SubversionTest < Test::Unit::TestCase end end + def test_repository_detected_by_svn_info_if_not_provided + info = Struct.new(:url).new + info.url = 'svn://example.org/repo' + + svn = new_subversion + svn.expects(:info).returns(info) + svn.detect_repository + assert_equal svn.repository, info.url + end + def numbers(revisions) revisions.map { |r| r.number -- 1.6.3.3