Mercurial > hg > soundsoftware-site
comparison test/unit/repository_mercurial_test.rb @ 1517:dffacf8a6908 redmine-2.5
Update to Redmine SVN revision 13367 on 2.5-stable branch
author | Chris Cannam |
---|---|
date | Tue, 09 Sep 2014 09:29:00 +0100 |
parents | e248c7af89ec |
children | fb9a13467253 |
comparison
equal
deleted
inserted
replaced
1516:b450a9d58aed | 1517:dffacf8a6908 |
---|---|
44 @branch_char_0.force_encoding('UTF-8') | 44 @branch_char_0.force_encoding('UTF-8') |
45 @branch_char_1.force_encoding('UTF-8') | 45 @branch_char_1.force_encoding('UTF-8') |
46 end | 46 end |
47 end | 47 end |
48 | 48 |
49 | |
50 def test_blank_path_to_repository_error_message | 49 def test_blank_path_to_repository_error_message |
51 set_language_if_valid 'en' | 50 set_language_if_valid 'en' |
52 repo = Repository::Mercurial.new( | 51 repo = Repository::Mercurial.new( |
53 :project => @project, | 52 :project => @project, |
54 :identifier => 'test' | 53 :identifier => 'test' |
79 assert klass.scm_adapter_class | 78 assert klass.scm_adapter_class |
80 assert_not_equal "", klass.scm_command | 79 assert_not_equal "", klass.scm_command |
81 assert_equal true, klass.scm_available | 80 assert_equal true, klass.scm_available |
82 end | 81 end |
83 | 82 |
84 def test_entries | 83 def test_entries_on_tip |
85 entries = @repository.entries | 84 entries = @repository.entries |
86 assert_kind_of Redmine::Scm::Adapters::Entries, entries | 85 assert_kind_of Redmine::Scm::Adapters::Entries, entries |
87 end | 86 end |
88 | 87 |
88 def assert_entries(is_short_scmid=true) | |
89 hex = "9d5b5b00419901478496242e0768deba1ce8c51e" | |
90 scmid = scmid_for_assert(hex, is_short_scmid) | |
91 [2, '400bb8672109', '400', 400].each do |r| | |
92 entries1 = @repository.entries(nil, r) | |
93 assert entries1 | |
94 assert_kind_of Redmine::Scm::Adapters::Entries, entries1 | |
95 assert_equal 3, entries1.size | |
96 readme = entries1[2] | |
97 assert_equal '1', readme.lastrev.revision | |
98 assert_equal scmid, readme.lastrev.identifier | |
99 assert_equal '1', readme.changeset.revision | |
100 assert_equal scmid, readme.changeset.scmid | |
101 end | |
102 end | |
103 private :assert_entries | |
104 | |
105 def test_entries_short_id | |
106 assert_equal 0, @repository.changesets.count | |
107 create_rev0_short_id | |
108 assert_equal 1, @repository.changesets.count | |
109 @repository.fetch_changesets | |
110 @project.reload | |
111 assert_equal NUM_REV, @repository.changesets.count | |
112 assert_entries(true) | |
113 end | |
114 | |
115 def test_entries_long_id | |
116 assert_equal 0, @repository.changesets.count | |
117 @repository.fetch_changesets | |
118 @project.reload | |
119 assert_equal NUM_REV, @repository.changesets.count | |
120 assert_entries(false) | |
121 end | |
122 | |
123 def test_entry_on_tip | |
124 entry = @repository.entry | |
125 assert_kind_of Redmine::Scm::Adapters::Entry, entry | |
126 assert_equal "", entry.path | |
127 assert_equal 'dir', entry.kind | |
128 end | |
129 | |
130 def assert_entry(is_short_scmid=true) | |
131 hex = "0885933ad4f68d77c2649cd11f8311276e7ef7ce" | |
132 scmid = scmid_for_assert(hex, is_short_scmid) | |
133 ["README", "/README"].each do |path| | |
134 ["0", "0885933ad4f6", "0885933ad4f68d77c2649cd11f8311276e7ef7ce"].each do |rev| | |
135 entry = @repository.entry(path, rev) | |
136 assert_kind_of Redmine::Scm::Adapters::Entry, entry | |
137 assert_equal "README", entry.path | |
138 assert_equal "file", entry.kind | |
139 assert_equal '0', entry.lastrev.revision | |
140 assert_equal scmid, entry.lastrev.identifier | |
141 end | |
142 end | |
143 ["sources", "/sources", "/sources/"].each do |path| | |
144 ["0", "0885933ad4f6", "0885933ad4f68d77c2649cd11f8311276e7ef7ce"].each do |rev| | |
145 entry = @repository.entry(path, rev) | |
146 assert_kind_of Redmine::Scm::Adapters::Entry, entry | |
147 assert_equal "sources", entry.path | |
148 assert_equal "dir", entry.kind | |
149 end | |
150 end | |
151 ["sources/watchers_controller.rb", "/sources/watchers_controller.rb"].each do |path| | |
152 ["0", "0885933ad4f6", "0885933ad4f68d77c2649cd11f8311276e7ef7ce"].each do |rev| | |
153 entry = @repository.entry(path, rev) | |
154 assert_kind_of Redmine::Scm::Adapters::Entry, entry | |
155 assert_equal "sources/watchers_controller.rb", entry.path | |
156 assert_equal "file", entry.kind | |
157 assert_equal '0', entry.lastrev.revision | |
158 assert_equal scmid, entry.lastrev.identifier | |
159 end | |
160 end | |
161 end | |
162 private :assert_entry | |
163 | |
164 def test_entry_short_id | |
165 assert_equal 0, @repository.changesets.count | |
166 create_rev0_short_id | |
167 assert_equal 1, @repository.changesets.count | |
168 assert_entry(true) | |
169 end | |
170 | |
171 def test_entry_long_id | |
172 assert_entry(false) | |
173 end | |
174 | |
89 def test_fetch_changesets_from_scratch | 175 def test_fetch_changesets_from_scratch |
90 assert_equal 0, @repository.changesets.count | 176 assert_equal 0, @repository.changesets.count |
91 @repository.fetch_changesets | 177 @repository.fetch_changesets |
92 @project.reload | 178 @project.reload |
93 assert_equal NUM_REV, @repository.changesets.count | 179 assert_equal NUM_REV, @repository.changesets.count |
94 assert_equal 46, @repository.filechanges.count | 180 assert_equal 46, @repository.filechanges.count |
181 rev0 = @repository.changesets.find_by_revision('0') | |
95 assert_equal "Initial import.\nThe repository contains 3 files.", | 182 assert_equal "Initial import.\nThe repository contains 3 files.", |
96 @repository.changesets.find_by_revision('0').comments | 183 rev0.comments |
184 assert_equal "0885933ad4f68d77c2649cd11f8311276e7ef7ce", rev0.scmid | |
185 first_rev = @repository.changesets.first | |
186 last_rev = @repository.changesets.last | |
187 assert_equal "#{NUM_REV - 1}", first_rev.revision | |
188 assert_equal "0", last_rev.revision | |
189 end | |
190 | |
191 def test_fetch_changesets_keep_short_id | |
192 assert_equal 0, @repository.changesets.count | |
193 create_rev0_short_id | |
194 assert_equal 1, @repository.changesets.count | |
195 @repository.fetch_changesets | |
196 @project.reload | |
197 assert_equal NUM_REV, @repository.changesets.count | |
198 rev1 = @repository.changesets.find_by_revision('1') | |
199 assert_equal "9d5b5b004199", rev1.scmid | |
200 end | |
201 | |
202 def test_fetch_changesets_keep_long_id | |
203 assert_equal 0, @repository.changesets.count | |
204 Changeset.create!(:repository => @repository, | |
205 :committed_on => Time.now, | |
206 :revision => '0', | |
207 :scmid => '0885933ad4f68d77c2649cd11f8311276e7ef7ce', | |
208 :comments => 'test') | |
209 assert_equal 1, @repository.changesets.count | |
210 @repository.fetch_changesets | |
211 @project.reload | |
212 assert_equal NUM_REV, @repository.changesets.count | |
213 rev1 = @repository.changesets.find_by_revision('1') | |
214 assert_equal "9d5b5b00419901478496242e0768deba1ce8c51e", rev1.scmid | |
97 end | 215 end |
98 | 216 |
99 def test_fetch_changesets_incremental | 217 def test_fetch_changesets_incremental |
100 assert_equal 0, @repository.changesets.count | 218 assert_equal 0, @repository.changesets.count |
101 @repository.fetch_changesets | 219 @repository.fetch_changesets |
102 @project.reload | 220 @project.reload |
103 assert_equal NUM_REV, @repository.changesets.count | 221 assert_equal NUM_REV, @repository.changesets.count |
104 # Remove changesets with revision > 2 | 222 # Remove changesets with revision > 2 |
105 @repository.changesets.all.each {|c| c.destroy if c.revision.to_i > 2} | 223 @repository.changesets.each {|c| c.destroy if c.revision.to_i > 2} |
106 @project.reload | 224 @project.reload |
225 @repository.reload | |
107 assert_equal 3, @repository.changesets.count | 226 assert_equal 3, @repository.changesets.count |
108 | 227 |
109 @repository.fetch_changesets | 228 @repository.fetch_changesets |
110 @project.reload | 229 @project.reload |
111 assert_equal NUM_REV, @repository.changesets.count | 230 assert_equal NUM_REV, @repository.changesets.count |
185 changesets = @repository.latest_changesets(path, '12') | 304 changesets = @repository.latest_changesets(path, '12') |
186 assert_equal %w|12 9|, changesets.collect(&:revision) | 305 assert_equal %w|12 9|, changesets.collect(&:revision) |
187 | 306 |
188 changesets = @repository.latest_changesets(path, '12', 1) | 307 changesets = @repository.latest_changesets(path, '12', 1) |
189 assert_equal %w|12|, changesets.collect(&:revision) | 308 assert_equal %w|12|, changesets.collect(&:revision) |
190 | 309 end |
191 # tag | 310 |
311 def assert_latest_changesets_tag | |
192 changesets = @repository.latest_changesets('', 'tag_test.00') | 312 changesets = @repository.latest_changesets('', 'tag_test.00') |
193 assert_equal %w|5 4 3 2 1 0|, changesets.collect(&:revision) | 313 assert_equal %w|5 4 3 2 1 0|, changesets.collect(&:revision) |
314 end | |
315 private :assert_latest_changesets_tag | |
316 | |
317 def test_latest_changesets_tag | |
318 assert_equal 0, @repository.changesets.count | |
319 @repository.fetch_changesets | |
320 @project.reload | |
321 assert_equal NUM_REV, @repository.changesets.count | |
322 assert_latest_changesets_tag | |
323 end | |
324 | |
325 def test_latest_changesets_tag_short_id | |
326 assert_equal 0, @repository.changesets.count | |
327 create_rev0_short_id | |
328 assert_equal 1, @repository.changesets.count | |
329 @repository.fetch_changesets | |
330 @project.reload | |
331 assert_equal NUM_REV, @repository.changesets.count | |
332 assert_latest_changesets_tag | |
333 end | |
334 | |
335 def test_latest_changesets_tag_with_path | |
336 assert_equal 0, @repository.changesets.count | |
337 @repository.fetch_changesets | |
338 @project.reload | |
339 assert_equal NUM_REV, @repository.changesets.count | |
340 | |
341 changesets = @repository.latest_changesets('sources', 'tag_test.00') | |
342 assert_equal %w|4 3 2 1 0|, changesets.collect(&:revision) | |
343 end | |
344 | |
345 def test_latest_changesets_tag_with_limit | |
346 assert_equal 0, @repository.changesets.count | |
347 @repository.fetch_changesets | |
348 @project.reload | |
349 assert_equal NUM_REV, @repository.changesets.count | |
194 | 350 |
195 changesets = @repository.latest_changesets('', 'tag_test.00', 2) | 351 changesets = @repository.latest_changesets('', 'tag_test.00', 2) |
196 assert_equal %w|5 4|, changesets.collect(&:revision) | 352 assert_equal %w|5 4|, changesets.collect(&:revision) |
197 | 353 |
198 changesets = @repository.latest_changesets('sources', 'tag_test.00') | |
199 assert_equal %w|4 3 2 1 0|, changesets.collect(&:revision) | |
200 | |
201 changesets = @repository.latest_changesets('sources', 'tag_test.00', 2) | 354 changesets = @repository.latest_changesets('sources', 'tag_test.00', 2) |
202 assert_equal %w|4 3|, changesets.collect(&:revision) | 355 assert_equal %w|4 3|, changesets.collect(&:revision) |
203 | 356 end |
204 # named branch | 357 |
358 def test_latest_changesets_branch | |
359 assert_equal 0, @repository.changesets.count | |
360 @repository.fetch_changesets | |
361 @project.reload | |
362 assert_equal NUM_REV, @repository.changesets.count | |
363 | |
205 if @repository.scm.class.client_version_above?([1, 6]) | 364 if @repository.scm.class.client_version_above?([1, 6]) |
206 changesets = @repository.latest_changesets('', @branch_char_1) | 365 changesets = @repository.latest_changesets('', @branch_char_1) |
207 assert_equal %w|27 26|, changesets.collect(&:revision) | 366 assert_equal %w|27 26|, changesets.collect(&:revision) |
208 end | 367 end |
209 | 368 |
210 changesets = @repository.latest_changesets("latin-1-dir/test-#{@char_1}-subdir", @branch_char_1) | 369 changesets = @repository.latest_changesets("latin-1-dir/test-#{@char_1}-subdir", @branch_char_1) |
211 assert_equal %w|27|, changesets.collect(&:revision) | 370 assert_equal %w|27|, changesets.collect(&:revision) |
212 end | 371 end |
213 | 372 |
214 def test_copied_files | 373 def assert_latest_changesets_default_branch |
215 assert_equal 0, @repository.changesets.count | 374 changesets = @repository.latest_changesets('', 'default') |
216 @repository.fetch_changesets | 375 assert_equal %w|31 28 24 6 4 3 2 1 0|, changesets.collect(&:revision) |
217 @project.reload | 376 end |
218 assert_equal NUM_REV, @repository.changesets.count | 377 private :assert_latest_changesets_default_branch |
219 | 378 |
379 def test_latest_changesets_default_branch | |
380 assert_equal 0, @repository.changesets.count | |
381 @repository.fetch_changesets | |
382 @project.reload | |
383 assert_equal NUM_REV, @repository.changesets.count | |
384 assert_latest_changesets_default_branch | |
385 end | |
386 | |
387 def test_latest_changesets_default_branch_short_id | |
388 assert_equal 0, @repository.changesets.count | |
389 create_rev0_short_id | |
390 assert_equal 1, @repository.changesets.count | |
391 @repository.fetch_changesets | |
392 @project.reload | |
393 assert_equal NUM_REV, @repository.changesets.count | |
394 assert_latest_changesets_default_branch | |
395 end | |
396 | |
397 def assert_copied_files(is_short_scmid=true) | |
220 cs1 = @repository.changesets.find_by_revision('13') | 398 cs1 = @repository.changesets.find_by_revision('13') |
221 assert_not_nil cs1 | 399 assert_not_nil cs1 |
222 c1 = cs1.filechanges.sort_by(&:path) | 400 c1 = cs1.filechanges.sort_by(&:path) |
223 assert_equal 2, c1.size | 401 assert_equal 2, c1.size |
224 | 402 |
403 hex1 = "3a330eb329586ea2adb3f83237c23310e744ebe9" | |
404 scmid1 = scmid_for_assert(hex1, is_short_scmid) | |
225 assert_equal 'A', c1[0].action | 405 assert_equal 'A', c1[0].action |
226 assert_equal '/sql_escape/percent%dir/percentfile1.txt', c1[0].path | 406 assert_equal '/sql_escape/percent%dir/percentfile1.txt', c1[0].path |
227 assert_equal '/sql_escape/percent%dir/percent%file1.txt', c1[0].from_path | 407 assert_equal '/sql_escape/percent%dir/percent%file1.txt', c1[0].from_path |
228 assert_equal '3a330eb32958', c1[0].from_revision | 408 assert_equal scmid1, c1[0].from_revision |
229 | 409 |
230 assert_equal 'A', c1[1].action | 410 assert_equal 'A', c1[1].action |
231 assert_equal '/sql_escape/underscore_dir/understrike-file.txt', c1[1].path | 411 assert_equal '/sql_escape/underscore_dir/understrike-file.txt', c1[1].path |
232 assert_equal '/sql_escape/underscore_dir/understrike_file.txt', c1[1].from_path | 412 assert_equal '/sql_escape/underscore_dir/understrike_file.txt', c1[1].from_path |
233 | 413 |
234 cs2 = @repository.changesets.find_by_revision('15') | 414 cs2 = @repository.changesets.find_by_revision('15') |
235 c2 = cs2.filechanges | 415 c2 = cs2.filechanges |
236 assert_equal 1, c2.size | 416 assert_equal 1, c2.size |
237 | 417 |
418 hex2 = "933ca60293d78f7c7979dd123cc0c02431683575" | |
419 scmid2 = scmid_for_assert(hex2, is_short_scmid) | |
238 assert_equal 'A', c2[0].action | 420 assert_equal 'A', c2[0].action |
239 assert_equal '/README (1)[2]&,%.-3_4', c2[0].path | 421 assert_equal '/README (1)[2]&,%.-3_4', c2[0].path |
240 assert_equal '/README', c2[0].from_path | 422 assert_equal '/README', c2[0].from_path |
241 assert_equal '933ca60293d7', c2[0].from_revision | 423 assert_equal scmid2, c2[0].from_revision |
242 | 424 |
243 cs3 = @repository.changesets.find_by_revision('19') | 425 cs3 = @repository.changesets.find_by_revision('19') |
244 c3 = cs3.filechanges | 426 c3 = cs3.filechanges |
427 | |
428 hex3 = "5d9891a1b4258ea256552aa856e388f2da28256a" | |
429 scmid3 = scmid_for_assert(hex3, is_short_scmid) | |
245 assert_equal 1, c3.size | 430 assert_equal 1, c3.size |
246 assert_equal 'A', c3[0].action | 431 assert_equal 'A', c3[0].action |
247 assert_equal "/latin-1-dir/test-#{@char_1}-1.txt", c3[0].path | 432 assert_equal "/latin-1-dir/test-#{@char_1}-1.txt", c3[0].path |
248 assert_equal "/latin-1-dir/test-#{@char_1}.txt", c3[0].from_path | 433 assert_equal "/latin-1-dir/test-#{@char_1}.txt", c3[0].from_path |
249 assert_equal '5d9891a1b425', c3[0].from_revision | 434 assert_equal scmid3, c3[0].from_revision |
435 end | |
436 private :assert_copied_files | |
437 | |
438 def test_copied_files_short_id | |
439 assert_equal 0, @repository.changesets.count | |
440 create_rev0_short_id | |
441 assert_equal 1, @repository.changesets.count | |
442 @repository.fetch_changesets | |
443 @project.reload | |
444 assert_equal NUM_REV, @repository.changesets.count | |
445 assert_copied_files(true) | |
446 end | |
447 | |
448 def test_copied_files_long_id | |
449 assert_equal 0, @repository.changesets.count | |
450 @repository.fetch_changesets | |
451 @project.reload | |
452 assert_equal NUM_REV, @repository.changesets.count | |
453 assert_copied_files(false) | |
250 end | 454 end |
251 | 455 |
252 def test_find_changeset_by_name | 456 def test_find_changeset_by_name |
253 assert_equal 0, @repository.changesets.count | 457 assert_equal 0, @repository.changesets.count |
254 @repository.fetch_changesets | 458 @repository.fetch_changesets |
283 assert_equal NUM_REV, @repository.changesets.count | 487 assert_equal NUM_REV, @repository.changesets.count |
284 c = @repository.changesets.find_by_revision('2') | 488 c = @repository.changesets.find_by_revision('2') |
285 assert_equal '2:400bb8672109', c.format_identifier | 489 assert_equal '2:400bb8672109', c.format_identifier |
286 end | 490 end |
287 | 491 |
492 def test_format_identifier_long_id | |
493 assert_equal 0, @repository.changesets.count | |
494 Changeset.create!(:repository => @repository, | |
495 :committed_on => Time.now, | |
496 :revision => '0', | |
497 :scmid => '0885933ad4f68d77c2649cd11f8311276e7ef7ce', | |
498 :comments => 'test') | |
499 c = @repository.changesets.find_by_revision('0') | |
500 assert_equal '0:0885933ad4f6', c.format_identifier | |
501 end | |
502 | |
288 def test_find_changeset_by_empty_name | 503 def test_find_changeset_by_empty_name |
289 assert_equal 0, @repository.changesets.count | 504 assert_equal 0, @repository.changesets.count |
290 @repository.fetch_changesets | 505 @repository.fetch_changesets |
291 @project.reload | 506 @project.reload |
292 assert_equal NUM_REV, @repository.changesets.count | 507 assert_equal NUM_REV, @repository.changesets.count |
293 ['', ' ', nil].each do |r| | 508 ['', ' ', nil].each do |r| |
294 assert_nil @repository.find_changeset_by_name(r) | 509 assert_nil @repository.find_changeset_by_name(r) |
295 end | 510 end |
296 end | 511 end |
297 | 512 |
298 def test_parents | 513 def assert_parents(is_short_scmid=true) |
299 assert_equal 0, @repository.changesets.count | |
300 @repository.fetch_changesets | |
301 @project.reload | |
302 assert_equal NUM_REV, @repository.changesets.count | |
303 r1 = @repository.changesets.find_by_revision('0') | 514 r1 = @repository.changesets.find_by_revision('0') |
304 assert_equal [], r1.parents | 515 assert_equal [], r1.parents |
305 r2 = @repository.changesets.find_by_revision('1') | 516 r2 = @repository.changesets.find_by_revision('1') |
517 hex2 = "0885933ad4f68d77c2649cd11f8311276e7ef7ce" | |
518 scmid2 = scmid_for_assert(hex2, is_short_scmid) | |
306 assert_equal 1, r2.parents.length | 519 assert_equal 1, r2.parents.length |
307 assert_equal "0885933ad4f6", | 520 assert_equal scmid2, r2.parents[0].identifier |
308 r2.parents[0].identifier | |
309 r3 = @repository.changesets.find_by_revision('30') | 521 r3 = @repository.changesets.find_by_revision('30') |
310 assert_equal 2, r3.parents.length | 522 assert_equal 2, r3.parents.length |
311 r4 = [r3.parents[0].identifier, r3.parents[1].identifier].sort | 523 r4 = [r3.parents[0].identifier, r3.parents[1].identifier].sort |
312 assert_equal "3a330eb32958", r4[0] | 524 hex41 = "3a330eb329586ea2adb3f83237c23310e744ebe9" |
313 assert_equal "a94b0528f24f", r4[1] | 525 scmid41 = scmid_for_assert(hex41, is_short_scmid) |
526 hex42 = "a94b0528f24fe05ebaef496ae0500bb050772e36" | |
527 scmid42 = scmid_for_assert(hex42, is_short_scmid) | |
528 assert_equal scmid41, r4[0] | |
529 assert_equal scmid42, r4[1] | |
530 end | |
531 private :assert_parents | |
532 | |
533 def test_parents_short_id | |
534 assert_equal 0, @repository.changesets.count | |
535 create_rev0_short_id | |
536 assert_equal 1, @repository.changesets.count | |
537 @repository.fetch_changesets | |
538 @project.reload | |
539 assert_equal NUM_REV, @repository.changesets.count | |
540 assert_parents(true) | |
541 end | |
542 | |
543 def test_parents_long_id | |
544 assert_equal 0, @repository.changesets.count | |
545 @repository.fetch_changesets | |
546 @project.reload | |
547 assert_equal NUM_REV, @repository.changesets.count | |
548 assert_parents(false) | |
314 end | 549 end |
315 | 550 |
316 def test_activities | 551 def test_activities |
317 c = Changeset.new(:repository => @repository, | 552 c = Changeset.new(:repository => @repository, |
318 :committed_on => Time.now, | 553 :committed_on => Time.now, |
368 ["#{NUM_REV - 1}", "2e6d54642923", "2e6d5"].each do |r1| | 603 ["#{NUM_REV - 1}", "2e6d54642923", "2e6d5"].each do |r1| |
369 changeset = @repository.find_changeset_by_name(r1) | 604 changeset = @repository.find_changeset_by_name(r1) |
370 assert_nil changeset.next | 605 assert_nil changeset.next |
371 end | 606 end |
372 end | 607 end |
608 | |
609 def test_scmid_for_inserting_db_short_id | |
610 assert_equal 0, @repository.changesets.count | |
611 create_rev0_short_id | |
612 assert_equal 1, @repository.changesets.count | |
613 rev = "0123456789012345678901234567890123456789" | |
614 assert_equal 12, @repository.scmid_for_inserting_db(rev).length | |
615 end | |
616 | |
617 def test_scmid_for_inserting_db_long_id | |
618 rev = "0123456789012345678901234567890123456789" | |
619 assert_equal 0, @repository.changesets.count | |
620 assert_equal 40, @repository.scmid_for_inserting_db(rev).length | |
621 Changeset.create!(:repository => @repository, | |
622 :committed_on => Time.now, | |
623 :revision => '0', | |
624 :scmid => rev, | |
625 :comments => 'test') | |
626 assert_equal 1, @repository.changesets.count | |
627 assert_equal 40, @repository.scmid_for_inserting_db(rev).length | |
628 end | |
629 | |
630 def test_scmid_for_assert | |
631 rev = "0123456789012345678901234567890123456789" | |
632 assert_equal rev, scmid_for_assert(rev, false) | |
633 assert_equal "012345678901", scmid_for_assert(rev, true) | |
634 end | |
635 | |
636 private | |
637 | |
638 def scmid_for_assert(hex, is_short=true) | |
639 is_short ? hex[0, 12] : hex | |
640 end | |
641 | |
642 def create_rev0_short_id | |
643 Changeset.create!(:repository => @repository, | |
644 :committed_on => Time.now, | |
645 :revision => '0', | |
646 :scmid => '0885933ad4f6', | |
647 :comments => 'test') | |
648 end | |
373 else | 649 else |
374 puts "Mercurial test repository NOT FOUND. Skipping unit tests !!!" | 650 puts "Mercurial test repository NOT FOUND. Skipping unit tests !!!" |
375 def test_fake; assert true end | 651 def test_fake; assert true end |
376 end | 652 end |
377 end | 653 end |