annotate .svn/pristine/94/94e11c870fc879bb4baf66f3ed996a69a2f5f60d.svn-base @ 1295:622f24f53b42 redmine-2.3

Update to Redmine SVN revision 11972 on 2.3-stable branch
author Chris Cannam
date Fri, 14 Jun 2013 09:02:21 +0100
parents
children
rev   line source
Chris@1295 1 module ObjectHelpers
Chris@1295 2 def User.generate!(attributes={})
Chris@1295 3 @generated_user_login ||= 'user0'
Chris@1295 4 @generated_user_login.succ!
Chris@1295 5 user = User.new(attributes)
Chris@1295 6 user.login = @generated_user_login if user.login.blank?
Chris@1295 7 user.mail = "#{@generated_user_login}@example.com" if user.mail.blank?
Chris@1295 8 user.firstname = "Bob" if user.firstname.blank?
Chris@1295 9 user.lastname = "Doe" if user.lastname.blank?
Chris@1295 10 yield user if block_given?
Chris@1295 11 user.save!
Chris@1295 12 user
Chris@1295 13 end
Chris@1295 14
Chris@1295 15 def User.add_to_project(user, project, roles=nil)
Chris@1295 16 roles = Role.find(1) if roles.nil?
Chris@1295 17 roles = [roles] unless roles.is_a?(Array)
Chris@1295 18 Member.create!(:principal => user, :project => project, :roles => roles)
Chris@1295 19 end
Chris@1295 20
Chris@1295 21 def Group.generate!(attributes={})
Chris@1295 22 @generated_group_name ||= 'Group 0'
Chris@1295 23 @generated_group_name.succ!
Chris@1295 24 group = Group.new(attributes)
Chris@1295 25 group.name = @generated_group_name if group.name.blank?
Chris@1295 26 yield group if block_given?
Chris@1295 27 group.save!
Chris@1295 28 group
Chris@1295 29 end
Chris@1295 30
Chris@1295 31 def Project.generate!(attributes={})
Chris@1295 32 @generated_project_identifier ||= 'project-0000'
Chris@1295 33 @generated_project_identifier.succ!
Chris@1295 34 project = Project.new(attributes)
Chris@1295 35 project.name = @generated_project_identifier if project.name.blank?
Chris@1295 36 project.identifier = @generated_project_identifier if project.identifier.blank?
Chris@1295 37 yield project if block_given?
Chris@1295 38 project.save!
Chris@1295 39 project
Chris@1295 40 end
Chris@1295 41
Chris@1295 42 def Tracker.generate!(attributes={})
Chris@1295 43 @generated_tracker_name ||= 'Tracker 0'
Chris@1295 44 @generated_tracker_name.succ!
Chris@1295 45 tracker = Tracker.new(attributes)
Chris@1295 46 tracker.name = @generated_tracker_name if tracker.name.blank?
Chris@1295 47 yield tracker if block_given?
Chris@1295 48 tracker.save!
Chris@1295 49 tracker
Chris@1295 50 end
Chris@1295 51
Chris@1295 52 def Role.generate!(attributes={})
Chris@1295 53 @generated_role_name ||= 'Role 0'
Chris@1295 54 @generated_role_name.succ!
Chris@1295 55 role = Role.new(attributes)
Chris@1295 56 role.name = @generated_role_name if role.name.blank?
Chris@1295 57 yield role if block_given?
Chris@1295 58 role.save!
Chris@1295 59 role
Chris@1295 60 end
Chris@1295 61
Chris@1295 62 def Issue.generate!(attributes={})
Chris@1295 63 issue = Issue.new(attributes)
Chris@1295 64 issue.project ||= Project.find(1)
Chris@1295 65 issue.tracker ||= issue.project.trackers.first
Chris@1295 66 issue.subject = 'Generated' if issue.subject.blank?
Chris@1295 67 issue.author ||= User.find(2)
Chris@1295 68 yield issue if block_given?
Chris@1295 69 issue.save!
Chris@1295 70 issue
Chris@1295 71 end
Chris@1295 72
Chris@1295 73 # Generates an issue with 2 children and a grandchild
Chris@1295 74 def Issue.generate_with_descendants!(attributes={})
Chris@1295 75 issue = Issue.generate!(attributes)
Chris@1295 76 child = Issue.generate!(:project => issue.project, :subject => 'Child1', :parent_issue_id => issue.id)
Chris@1295 77 Issue.generate!(:project => issue.project, :subject => 'Child2', :parent_issue_id => issue.id)
Chris@1295 78 Issue.generate!(:project => issue.project, :subject => 'Child11', :parent_issue_id => child.id)
Chris@1295 79 issue.reload
Chris@1295 80 end
Chris@1295 81
Chris@1295 82 def Journal.generate!(attributes={})
Chris@1295 83 journal = Journal.new(attributes)
Chris@1295 84 journal.user ||= User.first
Chris@1295 85 journal.journalized ||= Issue.first
Chris@1295 86 yield journal if block_given?
Chris@1295 87 journal.save!
Chris@1295 88 journal
Chris@1295 89 end
Chris@1295 90
Chris@1295 91 def Version.generate!(attributes={})
Chris@1295 92 @generated_version_name ||= 'Version 0'
Chris@1295 93 @generated_version_name.succ!
Chris@1295 94 version = Version.new(attributes)
Chris@1295 95 version.name = @generated_version_name if version.name.blank?
Chris@1295 96 yield version if block_given?
Chris@1295 97 version.save!
Chris@1295 98 version
Chris@1295 99 end
Chris@1295 100
Chris@1295 101 def AuthSource.generate!(attributes={})
Chris@1295 102 @generated_auth_source_name ||= 'Auth 0'
Chris@1295 103 @generated_auth_source_name.succ!
Chris@1295 104 source = AuthSource.new(attributes)
Chris@1295 105 source.name = @generated_auth_source_name if source.name.blank?
Chris@1295 106 yield source if block_given?
Chris@1295 107 source.save!
Chris@1295 108 source
Chris@1295 109 end
Chris@1295 110
Chris@1295 111 def Board.generate!(attributes={})
Chris@1295 112 @generated_board_name ||= 'Forum 0'
Chris@1295 113 @generated_board_name.succ!
Chris@1295 114 board = Board.new(attributes)
Chris@1295 115 board.name = @generated_board_name if board.name.blank?
Chris@1295 116 board.description = @generated_board_name if board.description.blank?
Chris@1295 117 yield board if block_given?
Chris@1295 118 board.save!
Chris@1295 119 board
Chris@1295 120 end
Chris@1295 121 end