##// END OF EJS Templates
Refactored duplicated test code to a setup....
Eric Davis -
r2818:945ea9b01c43
parent child
Show More
@@ -291,65 +291,49 class ProjectTest < ActiveSupport::TestCase
291 291 end
292 292
293 293 context "#copy" do
294
295 should "copy issues" do
296 # Setup
294 setup do
297 295 ProjectCustomField.destroy_all # Custom values are a mess to isolate in tests
298 source_project = Project.find(2)
299 296 Project.destroy_all :identifier => "copy-test"
300 project = Project.new(:name => 'Copy Test', :identifier => 'copy-test')
301 project.trackers = source_project.trackers
302 assert project.valid?
303
304 assert project.issues.empty?
305 assert project.copy(source_project)
297 @source_project = Project.find(2)
298 @project = Project.new(:name => 'Copy Test', :identifier => 'copy-test')
299 @project.trackers = @source_project.trackers
300 @project.enabled_modules = @source_project.enabled_modules
301 end
302
303 should "copy issues" do
304 assert @project.valid?
305 assert @project.issues.empty?
306 assert @project.copy(@source_project)
306 307
307 # Tests
308 assert_equal source_project.issues.size, project.issues.size
309 project.issues.each do |issue|
308 assert_equal @source_project.issues.size, @project.issues.size
309 @project.issues.each do |issue|
310 310 assert issue.valid?
311 311 assert ! issue.assigned_to.blank?
312 assert_equal project, issue.project
312 assert_equal @project, issue.project
313 313 end
314 314 end
315 315
316 316 should "copy members" do
317 # Setup
318 ProjectCustomField.destroy_all # Custom values are a mess to isolate in tests
319 source_project = Project.find(2)
320 project = Project.new(:name => 'Copy Test', :identifier => 'copy-test')
321 project.trackers = source_project.trackers
322 project.enabled_modules = source_project.enabled_modules
323 assert project.valid?
324
325 assert project.members.empty?
326 assert project.copy(source_project)
317 assert @project.valid?
318 assert @project.members.empty?
319 assert @project.copy(@source_project)
327 320
328 # Tests
329 assert_equal source_project.members.size, project.members.size
330 project.members.each do |member|
321 assert_equal @source_project.members.size, @project.members.size
322 @project.members.each do |member|
331 323 assert member
332 assert_equal project, member.project
324 assert_equal @project, member.project
333 325 end
334 326 end
335 327
336 328 should "copy project specific queries" do
337 # Setup
338 ProjectCustomField.destroy_all # Custom values are a mess to isolate in tests
339 source_project = Project.find(2)
340 project = Project.new(:name => 'Copy Test', :identifier => 'copy-test')
341 project.trackers = source_project.trackers
342 project.enabled_modules = source_project.enabled_modules
343 assert project.valid?
344
345 assert project.queries.empty?
346 assert project.copy(source_project)
329 assert @project.valid?
330 assert @project.queries.empty?
331 assert @project.copy(@source_project)
347 332
348 # Tests
349 assert_equal source_project.queries.size, project.queries.size
350 project.queries.each do |query|
333 assert_equal @source_project.queries.size, @project.queries.size
334 @project.queries.each do |query|
351 335 assert query
352 assert_equal project, query.project
336 assert_equal @project, query.project
353 337 end
354 338 end
355 339
General Comments 0
You need to be logged in to leave comments. Login now