@@ -202,4 +202,37 class RepositoryTest < ActiveSupport::TestCase | |||||
202 | assert klass.scm_adapter_class |
|
202 | assert klass.scm_adapter_class | |
203 | assert_equal true, klass.scm_available |
|
203 | assert_equal true, klass.scm_available | |
204 | end |
|
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 | end |
|
238 | end |
General Comments 0
You need to be logged in to leave comments.
Login now