@@ -202,4 +202,37 class RepositoryTest < ActiveSupport::TestCase | |||
|
202 | 202 | assert klass.scm_adapter_class |
|
203 | 203 | assert_equal true, klass.scm_available |
|
204 | 204 | end |
|
205 | ||
|
206 | def test_merge_extra_info | |
|
207 | repo = Repository::Subversion.new(:project => Project.find(3)) | |
|
208 | assert !repo.save | |
|
209 | repo.url = "svn://localhost" | |
|
210 | assert repo.save | |
|
211 | repo.reload | |
|
212 | project = Project.find(3) | |
|
213 | assert_equal repo, project.repository | |
|
214 | assert_nil repo.extra_info | |
|
215 | h1 = {"test_1" => {"test_11" => "test_value_11"}} | |
|
216 | repo.merge_extra_info(h1) | |
|
217 | assert_equal h1, repo.extra_info | |
|
218 | h2 = {"test_2" => { | |
|
219 | "test_21" => "test_value_21", | |
|
220 | "test_22" => "test_value_22", | |
|
221 | }} | |
|
222 | repo.merge_extra_info(h2) | |
|
223 | assert_equal (h = {"test_11" => "test_value_11"}), | |
|
224 | repo.extra_info["test_1"] | |
|
225 | assert_equal "test_value_21", | |
|
226 | repo.extra_info["test_2"]["test_21"] | |
|
227 | h3 = {"test_2" => { | |
|
228 | "test_23" => "test_value_23", | |
|
229 | "test_24" => "test_value_24", | |
|
230 | }} | |
|
231 | repo.merge_extra_info(h3) | |
|
232 | assert_equal (h = {"test_11" => "test_value_11"}), | |
|
233 | repo.extra_info["test_1"] | |
|
234 | assert_nil repo.extra_info["test_2"]["test_21"] | |
|
235 | assert_equal "test_value_23", | |
|
236 | repo.extra_info["test_2"]["test_23"] | |
|
237 | end | |
|
205 | 238 | end |
General Comments 0
You need to be logged in to leave comments.
Login now