Mercurial > hg > soundsoftware-site
comparison test/unit/lib/redmine/scm/adapters/bazaar_adapter_test.rb @ 909:cbb26bc654de redmine-1.3
Update to Redmine 1.3-stable branch (Redmine SVN rev 8964)
author | Chris Cannam |
---|---|
date | Fri, 24 Feb 2012 19:09:32 +0000 |
parents | cbce1fd3b1b7 |
children | 433d4f72a19b |
comparison
equal
deleted
inserted
replaced
908:c6c2cbd0afee | 909:cbb26bc654de |
---|---|
1 require File.expand_path('../../../../../../test_helper', __FILE__) | 1 require File.expand_path('../../../../../../test_helper', __FILE__) |
2 begin | 2 begin |
3 require 'mocha' | 3 require 'mocha' |
4 | 4 |
5 class BazaarAdapterTest < ActiveSupport::TestCase | 5 class BazaarAdapterTest < ActiveSupport::TestCase |
6 | 6 REPOSITORY_PATH = Rails.root.join('tmp/test/bazaar_repository').to_s |
7 REPOSITORY_PATH = RAILS_ROOT.gsub(%r{config\/\.\.}, '') + '/tmp/test/bazaar_repository' | |
8 REPOSITORY_PATH.gsub!(/\/+/, '/') | 7 REPOSITORY_PATH.gsub!(/\/+/, '/') |
9 | 8 |
10 if File.directory?(REPOSITORY_PATH) | 9 if File.directory?(REPOSITORY_PATH) |
11 def setup | 10 def setup |
12 @adapter = Redmine::Scm::Adapters::BazaarAdapter.new(REPOSITORY_PATH) | 11 @adapter = Redmine::Scm::Adapters::BazaarAdapter.new( |
12 File.join(REPOSITORY_PATH, "trunk") | |
13 ) | |
13 end | 14 end |
14 | 15 |
15 def test_scm_version | 16 def test_scm_version |
16 to_test = { "Bazaar (bzr) 2.1.2\n" => [2,1,2], | 17 to_test = { "Bazaar (bzr) 2.1.2\n" => [2,1,2], |
17 "2.1.1\n1.7\n1.8" => [2,1,1], | 18 "2.1.1\n1.7\n1.8" => [2,1,1], |
24 def test_cat | 25 def test_cat |
25 cat = @adapter.cat('directory/document.txt') | 26 cat = @adapter.cat('directory/document.txt') |
26 assert cat =~ /Write the contents of a file as of a given revision to standard output/ | 27 assert cat =~ /Write the contents of a file as of a given revision to standard output/ |
27 end | 28 end |
28 | 29 |
30 def test_cat_path_invalid | |
31 assert_nil @adapter.cat('invalid') | |
32 end | |
33 | |
34 def test_cat_revision_invalid | |
35 assert_nil @adapter.cat('doc-mkdir.txt', '12345678') | |
36 end | |
37 | |
38 def test_diff_path_invalid | |
39 assert_equal [], @adapter.diff('invalid', 1) | |
40 end | |
41 | |
42 def test_diff_revision_invalid | |
43 assert_equal [], @adapter.diff(nil, 12345678) | |
44 assert_equal [], @adapter.diff(nil, 12345678, 87654321) | |
45 end | |
46 | |
29 def test_annotate | 47 def test_annotate |
30 annotate = @adapter.annotate('doc-mkdir.txt') | 48 annotate = @adapter.annotate('doc-mkdir.txt') |
31 assert_equal 17, annotate.lines.size | 49 assert_equal 17, annotate.lines.size |
32 assert_equal '1', annotate.revisions[0].identifier | 50 assert_equal '1', annotate.revisions[0].identifier |
33 assert_equal 'jsmith@', annotate.revisions[0].author | 51 assert_equal 'jsmith@', annotate.revisions[0].author |
34 assert_equal 'mkdir', annotate.lines[0] | 52 assert_equal 'mkdir', annotate.lines[0] |
53 end | |
54 | |
55 def test_annotate_path_invalid | |
56 assert_nil @adapter.annotate('invalid') | |
57 end | |
58 | |
59 def test_annotate_revision_invalid | |
60 assert_nil @adapter.annotate('doc-mkdir.txt', '12345678') | |
61 end | |
62 | |
63 def test_branch_conf_path | |
64 p = "c:\\test\\test\\" | |
65 bcp = Redmine::Scm::Adapters::BazaarAdapter.branch_conf_path(p) | |
66 assert_equal File.join("c:\\test\\test", ".bzr", "branch", "branch.conf"), bcp | |
67 p = "c:\\test\\test\\.bzr" | |
68 bcp = Redmine::Scm::Adapters::BazaarAdapter.branch_conf_path(p) | |
69 assert_equal File.join("c:\\test\\test", ".bzr", "branch", "branch.conf"), bcp | |
70 p = "c:\\test\\test\\.bzr\\" | |
71 bcp = Redmine::Scm::Adapters::BazaarAdapter.branch_conf_path(p) | |
72 assert_equal File.join("c:\\test\\test", ".bzr", "branch", "branch.conf"), bcp | |
73 p = "c:\\test\\test" | |
74 bcp = Redmine::Scm::Adapters::BazaarAdapter.branch_conf_path(p) | |
75 assert_equal File.join("c:\\test\\test", ".bzr", "branch", "branch.conf"), bcp | |
76 p = "\\\\server\\test\\test\\" | |
77 bcp = Redmine::Scm::Adapters::BazaarAdapter.branch_conf_path(p) | |
78 assert_equal File.join("\\\\server\\test\\test", ".bzr", "branch", "branch.conf"), bcp | |
79 end | |
80 | |
81 def test_append_revisions_only_true | |
82 assert_equal true, @adapter.append_revisions_only | |
83 end | |
84 | |
85 def test_append_revisions_only_false | |
86 adpt = Redmine::Scm::Adapters::BazaarAdapter.new( | |
87 File.join(REPOSITORY_PATH, "empty-branch") | |
88 ) | |
89 assert_equal false, adpt.append_revisions_only | |
90 end | |
91 | |
92 def test_append_revisions_only_shared_repo | |
93 adpt = Redmine::Scm::Adapters::BazaarAdapter.new( | |
94 REPOSITORY_PATH | |
95 ) | |
96 assert_equal false, adpt.append_revisions_only | |
97 end | |
98 | |
99 def test_info_not_nil | |
100 assert_not_nil @adapter.info | |
101 end | |
102 | |
103 def test_info_nil | |
104 adpt = Redmine::Scm::Adapters::BazaarAdapter.new( | |
105 "/invalid/invalid/" | |
106 ) | |
107 assert_nil adpt.info | |
108 end | |
109 | |
110 def test_info | |
111 info = @adapter.info | |
112 assert_equal 4, info.lastrev.identifier.to_i | |
113 end | |
114 | |
115 def test_info_emtpy | |
116 adpt = Redmine::Scm::Adapters::BazaarAdapter.new( | |
117 File.join(REPOSITORY_PATH, "empty-branch") | |
118 ) | |
119 assert_equal 0, adpt.info.lastrev.identifier.to_i | |
120 end | |
121 | |
122 def test_entries_path_invalid | |
123 assert_equal [], @adapter.entries('invalid') | |
124 end | |
125 | |
126 def test_entries_revision_invalid | |
127 assert_nil @adapter.entries(nil, 12345678) | |
128 end | |
129 | |
130 def test_revisions_path_invalid | |
131 assert_nil @adapter.revisions('invalid') | |
132 end | |
133 | |
134 def test_revisions_revision_invalid | |
135 assert_nil @adapter.revisions(nil, 12345678) | |
136 assert_nil @adapter.revisions(nil, 12345678, 87654321) | |
35 end | 137 end |
36 | 138 |
37 private | 139 private |
38 | 140 |
39 def test_scm_version_for(scm_command_version, version) | 141 def test_scm_version_for(scm_command_version, version) |