##// 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 end
291 end
292
292
293 context "#copy" do
293 context "#copy" do
294
294 setup do
295 should "copy issues" do
296 # Setup
297 ProjectCustomField.destroy_all # Custom values are a mess to isolate in tests
295 ProjectCustomField.destroy_all # Custom values are a mess to isolate in tests
298 source_project = Project.find(2)
299 Project.destroy_all :identifier => "copy-test"
296 Project.destroy_all :identifier => "copy-test"
300 project = Project.new(:name => 'Copy Test', :identifier => 'copy-test')
297 @source_project = Project.find(2)
301 project.trackers = source_project.trackers
298 @project = Project.new(:name => 'Copy Test', :identifier => 'copy-test')
302 assert project.valid?
299 @project.trackers = @source_project.trackers
303
300 @project.enabled_modules = @source_project.enabled_modules
304 assert project.issues.empty?
301 end
305 assert project.copy(source_project)
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
308 assert_equal source_project.issues.size, project.issues.size
309 @project.issues.each do |issue|
309 project.issues.each do |issue|
310 assert issue.valid?
310 assert issue.valid?
311 assert ! issue.assigned_to.blank?
311 assert ! issue.assigned_to.blank?
312 assert_equal project, issue.project
312 assert_equal @project, issue.project
313 end
313 end
314 end
314 end
315
315
316 should "copy members" do
316 should "copy members" do
317 # Setup
317 assert @project.valid?
318 ProjectCustomField.destroy_all # Custom values are a mess to isolate in tests
318 assert @project.members.empty?
319 source_project = Project.find(2)
319 assert @project.copy(@source_project)
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)
327
320
328 # Tests
321 assert_equal @source_project.members.size, @project.members.size
329 assert_equal source_project.members.size, project.members.size
322 @project.members.each do |member|
330 project.members.each do |member|
331 assert member
323 assert member
332 assert_equal project, member.project
324 assert_equal @project, member.project
333 end
325 end
334 end
326 end
335
327
336 should "copy project specific queries" do
328 should "copy project specific queries" do
337 # Setup
329 assert @project.valid?
338 ProjectCustomField.destroy_all # Custom values are a mess to isolate in tests
330 assert @project.queries.empty?
339 source_project = Project.find(2)
331 assert @project.copy(@source_project)
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)
347
332
348 # Tests
333 assert_equal @source_project.queries.size, @project.queries.size
349 assert_equal source_project.queries.size, project.queries.size
334 @project.queries.each do |query|
350 project.queries.each do |query|
351 assert query
335 assert query
352 assert_equal project, query.project
336 assert_equal @project, query.project
353 end
337 end
354 end
338 end
355
339
General Comments 0
You need to be logged in to leave comments. Login now