Mercurial > hg > soundsoftware-site
comparison .svn/pristine/00/00bd76ee7194e922fe9340f2d39d910c9f79b20e.svn-base @ 1298:4f746d8966dd redmine_2.3_integration
Merge from redmine-2.3 branch to create new branch redmine-2.3-integration
author | Chris Cannam |
---|---|
date | Fri, 14 Jun 2013 09:28:30 +0100 |
parents | 622f24f53b42 |
children |
comparison
equal
deleted
inserted
replaced
1297:0a574315af3e | 1298:4f746d8966dd |
---|---|
1 module ObjectHelpers | |
2 def User.generate!(attributes={}) | |
3 @generated_user_login ||= 'user0' | |
4 @generated_user_login.succ! | |
5 user = User.new(attributes) | |
6 user.login = @generated_user_login.dup if user.login.blank? | |
7 user.mail = "#{@generated_user_login}@example.com" if user.mail.blank? | |
8 user.firstname = "Bob" if user.firstname.blank? | |
9 user.lastname = "Doe" if user.lastname.blank? | |
10 yield user if block_given? | |
11 user.save! | |
12 user | |
13 end | |
14 | |
15 def User.add_to_project(user, project, roles=nil) | |
16 roles = Role.find(1) if roles.nil? | |
17 roles = [roles] unless roles.is_a?(Array) | |
18 Member.create!(:principal => user, :project => project, :roles => roles) | |
19 end | |
20 | |
21 def Group.generate!(attributes={}) | |
22 @generated_group_name ||= 'Group 0' | |
23 @generated_group_name.succ! | |
24 group = Group.new(attributes) | |
25 group.name = @generated_group_name.dup if group.name.blank? | |
26 yield group if block_given? | |
27 group.save! | |
28 group | |
29 end | |
30 | |
31 def Project.generate!(attributes={}) | |
32 @generated_project_identifier ||= 'project-0000' | |
33 @generated_project_identifier.succ! | |
34 project = Project.new(attributes) | |
35 project.name = @generated_project_identifier.dup if project.name.blank? | |
36 project.identifier = @generated_project_identifier.dup if project.identifier.blank? | |
37 yield project if block_given? | |
38 project.save! | |
39 project | |
40 end | |
41 | |
42 def Project.generate_with_parent!(parent, attributes={}) | |
43 project = Project.generate!(attributes) | |
44 project.set_parent!(parent) | |
45 project | |
46 end | |
47 | |
48 def Tracker.generate!(attributes={}) | |
49 @generated_tracker_name ||= 'Tracker 0' | |
50 @generated_tracker_name.succ! | |
51 tracker = Tracker.new(attributes) | |
52 tracker.name = @generated_tracker_name.dup if tracker.name.blank? | |
53 yield tracker if block_given? | |
54 tracker.save! | |
55 tracker | |
56 end | |
57 | |
58 def Role.generate!(attributes={}) | |
59 @generated_role_name ||= 'Role 0' | |
60 @generated_role_name.succ! | |
61 role = Role.new(attributes) | |
62 role.name = @generated_role_name.dup if role.name.blank? | |
63 yield role if block_given? | |
64 role.save! | |
65 role | |
66 end | |
67 | |
68 def Issue.generate!(attributes={}) | |
69 issue = Issue.new(attributes) | |
70 issue.project ||= Project.find(1) | |
71 issue.tracker ||= issue.project.trackers.first | |
72 issue.subject = 'Generated' if issue.subject.blank? | |
73 issue.author ||= User.find(2) | |
74 yield issue if block_given? | |
75 issue.save! | |
76 issue | |
77 end | |
78 | |
79 # Generates an issue with 2 children and a grandchild | |
80 def Issue.generate_with_descendants!(attributes={}) | |
81 issue = Issue.generate!(attributes) | |
82 child = Issue.generate!(:project => issue.project, :subject => 'Child1', :parent_issue_id => issue.id) | |
83 Issue.generate!(:project => issue.project, :subject => 'Child2', :parent_issue_id => issue.id) | |
84 Issue.generate!(:project => issue.project, :subject => 'Child11', :parent_issue_id => child.id) | |
85 issue.reload | |
86 end | |
87 | |
88 def Journal.generate!(attributes={}) | |
89 journal = Journal.new(attributes) | |
90 journal.user ||= User.first | |
91 journal.journalized ||= Issue.first | |
92 yield journal if block_given? | |
93 journal.save! | |
94 journal | |
95 end | |
96 | |
97 def Version.generate!(attributes={}) | |
98 @generated_version_name ||= 'Version 0' | |
99 @generated_version_name.succ! | |
100 version = Version.new(attributes) | |
101 version.name = @generated_version_name.dup if version.name.blank? | |
102 yield version if block_given? | |
103 version.save! | |
104 version | |
105 end | |
106 | |
107 def TimeEntry.generate!(attributes={}) | |
108 entry = TimeEntry.new(attributes) | |
109 entry.user ||= User.find(2) | |
110 entry.issue ||= Issue.find(1) unless entry.project | |
111 entry.project ||= entry.issue.project | |
112 entry.activity ||= TimeEntryActivity.first | |
113 entry.spent_on ||= Date.today | |
114 entry.hours ||= 1.0 | |
115 entry.save! | |
116 entry | |
117 end | |
118 | |
119 def AuthSource.generate!(attributes={}) | |
120 @generated_auth_source_name ||= 'Auth 0' | |
121 @generated_auth_source_name.succ! | |
122 source = AuthSource.new(attributes) | |
123 source.name = @generated_auth_source_name.dup if source.name.blank? | |
124 yield source if block_given? | |
125 source.save! | |
126 source | |
127 end | |
128 | |
129 def Board.generate!(attributes={}) | |
130 @generated_board_name ||= 'Forum 0' | |
131 @generated_board_name.succ! | |
132 board = Board.new(attributes) | |
133 board.name = @generated_board_name.dup if board.name.blank? | |
134 board.description = @generated_board_name.dup if board.description.blank? | |
135 yield board if block_given? | |
136 board.save! | |
137 board | |
138 end | |
139 | |
140 def Attachment.generate!(attributes={}) | |
141 @generated_filename ||= 'testfile0' | |
142 @generated_filename.succ! | |
143 attributes = attributes.dup | |
144 attachment = Attachment.new(attributes) | |
145 attachment.container ||= Issue.find(1) | |
146 attachment.author ||= User.find(2) | |
147 attachment.filename = @generated_filename.dup if attachment.filename.blank? | |
148 attachment.save! | |
149 attachment | |
150 end | |
151 | |
152 def CustomField.generate!(attributes={}) | |
153 @generated_custom_field_name ||= 'Custom field 0' | |
154 @generated_custom_field_name.succ! | |
155 field = new(attributes) | |
156 field.name = @generated_custom_field_name.dup if field.name.blank? | |
157 field.field_format = 'string' if field.field_format.blank? | |
158 yield field if block_given? | |
159 field.save! | |
160 field | |
161 end | |
162 end |