@@ -134,18 +134,18 @@ def test_event_group_for_wiki_content_version
134
134
135
135
def test_activity_contains_issue_status_update_events
136
136
issue = Issue . generate! ( :status_id => 1 )
137
-
137
+
138
138
events = find_events ( User . anonymous , :project => @project )
139
139
target_issue_events = events . find_all { |event | event == issue || ( event . is_a? ( Journal ) && event . issue == issue ) }
140
140
target_issue_events . sort! { |x , y | x . event_datetime <=> y . event_datetime }
141
141
event_titles = target_issue_events . map { |e | e . event_title }
142
142
assert_equal ( "Bug ##{ issue . id } (New): Generated" , event_titles [ 0 ] , "event title should includes (New)" )
143
-
143
+
144
144
issue = Issue . find ( issue . id )
145
- issue . init_journal ( User . first , "Assign" )
145
+ issue . init_journal ( User . first )
146
146
issue . status_id = 2
147
147
assert issue . save
148
-
148
+
149
149
events = find_events ( User . anonymous , :project => @project )
150
150
target_issue_events = events . find_all { |event | event == issue || ( event . is_a? ( Journal ) && event . issue == issue ) }
151
151
target_issue_events . sort! { |x , y | x . event_datetime <=> y . event_datetime }
@@ -154,7 +154,7 @@ def test_activity_contains_issue_status_update_events
154
154
assert_equal ( "Bug ##{ issue . id } (Assigned): Generated" , event_titles [ 1 ] , "event title should includes (Assinged)" )
155
155
156
156
issue = Issue . find ( issue . id )
157
- issue . init_journal ( User . first , "Resolve" )
157
+ issue . init_journal ( User . first )
158
158
issue . status_id = 3
159
159
assert issue . save
160
160
@@ -165,9 +165,68 @@ def test_activity_contains_issue_status_update_events
165
165
assert_equal ( "Bug ##{ issue . id } (New): Generated" , event_titles [ 0 ] , "event title should includes (New)" )
166
166
assert_equal ( "Bug ##{ issue . id } (Assigned): Generated" , event_titles [ 1 ] , "event title should includes (Assinged)" )
167
167
assert_equal ( "Bug ##{ issue . id } (Resolved): Generated" , event_titles [ 2 ] , "event title should includes (Resolved)" )
168
-
169
168
end
170
169
170
+ def test_activity_contains_issue_status_update_events2
171
+ # ステータス以外(サブジェクト)を変更後、ステータスを変更する
172
+ # ステータス以外(サブジェクト)とステータスを一度に変更する
173
+
174
+ issue = Issue . generate! ( :status_id => 1 , :subject => "Generated" )
175
+
176
+ issue = Issue . find ( issue . id )
177
+ issue . init_journal ( User . first )
178
+ issue . subject = "Activity test"
179
+ assert issue . save
180
+
181
+ issue = Issue . find ( issue . id )
182
+ issue . init_journal ( User . first )
183
+ issue . status_id = 3
184
+ assert issue . save
185
+
186
+ events = find_events ( User . anonymous , :project => @project )
187
+ target_issue_events = events . find_all { |event | event == issue || ( event . is_a? ( Journal ) && event . issue == issue ) }
188
+ target_issue_events . sort! { |x , y | x . event_datetime <=> y . event_datetime }
189
+ event_titles = target_issue_events . map { |e | e . event_title }
190
+ assert_equal ( "Bug ##{ issue . id } (New): Activity test" , event_titles [ 0 ] , "event title should includes (New)" )
191
+ assert_equal ( "Bug ##{ issue . id } (Resolved): Activity test" , event_titles [ 1 ] , "event title should includes (Resolved)" )
192
+
193
+ issue = Issue . find ( issue . id )
194
+ issue . init_journal ( User . first , "Close" )
195
+ issue . subject = "Closing test"
196
+ issue . status_id = 5
197
+ assert issue . save
198
+
199
+ events = find_events ( User . anonymous , :project => @project )
200
+ target_issue_events = events . find_all { |event | event == issue || ( event . is_a? ( Journal ) && event . issue == issue ) }
201
+ target_issue_events . sort! { |x , y | x . event_datetime <=> y . event_datetime }
202
+ event_titles = target_issue_events . map { |e | e . event_title }
203
+ assert_equal ( "Bug ##{ issue . id } (New): Closing test" , event_titles [ 0 ] , "event title should includes (New)" )
204
+ assert_equal ( "Bug ##{ issue . id } (Resolved): Closing test" , event_titles [ 1 ] , "event title should includes (Resolved)" )
205
+ assert_equal ( "Bug ##{ issue . id } (Closed): Closing test" , event_titles [ 2 ] , "event title should includes (Closed)" )
206
+ end
207
+
208
+ def test_activity_contains_issue_status_update_events3
209
+ # コメントを追記後、ステータスを変更する
210
+ issue = Issue . generate! ( :status_id => 1 , :subject => "Generated" )
211
+
212
+ issue = Issue . find ( issue . id )
213
+ issue . init_journal ( User . first , "note" )
214
+ assert issue . save
215
+
216
+ issue = Issue . find ( issue . id )
217
+ issue . init_journal ( User . first )
218
+ issue . status_id = 3
219
+ assert issue . save
220
+
221
+ events = find_events ( User . anonymous , :project => @project )
222
+ target_issue_events = events . find_all { |event | event == issue || ( event . is_a? ( Journal ) && event . issue == issue ) }
223
+ target_issue_events . sort! { |x , y | x . event_datetime <=> y . event_datetime }
224
+ event_titles = target_issue_events . map { |e | e . event_title }
225
+ assert_equal ( "Bug ##{ issue . id } (New): Generated" , event_titles [ 0 ] , "event title should includes (New)" )
226
+ assert_equal ( "Bug ##{ issue . id } : Generated" , event_titles [ 1 ] , "event title should not include status" )
227
+ assert_equal ( "Bug ##{ issue . id } (Resolved): Generated" , event_titles [ 2 ] , "event title should includes (Resolved)" )
228
+ end
229
+
171
230
class TestActivityProviderWithPermission
172
231
def self . activity_provider_options
173
232
{ 'test' => { :permission => :custom_permission } }
0 commit comments