]> source.dussan.org Git - redmine.git/commitdiff
Adds a test for #21100.
authorJean-Philippe Lang <jp_lang@yahoo.fr>
Sun, 8 Nov 2015 21:41:02 +0000 (21:41 +0000)
committerJean-Philippe Lang <jp_lang@yahoo.fr>
Sun, 8 Nov 2015 21:41:02 +0000 (21:41 +0000)
git-svn-id: http://svn.redmine.org/redmine/trunk@14855 e93f8b46-1217-0410-a6f0-8f06a7374b81

test/unit/changeset_test.rb

index 6ba02aa56597696cf10bd7ac861e5aa12d6c6a53..7d44996c2da1021bd23c2a8f88e1a9e57fe77a0d 100644 (file)
@@ -215,7 +215,7 @@ class ChangesetTest < ActiveSupport::TestCase
     end
   end
 
-  def test_update_keywords_with_multiple_rules_should_match_tracker
+  def test_update_keywords_with_multiple_rules_for_the_same_keyword_should_match_tracker
     with_settings :commit_update_keywords => [
       {'keywords' => 'fixes', 'status_id' => '5', 'if_tracker_id' => '2'},
       {'keywords' => 'fixes', 'status_id' => '3', 'if_tracker_id' => ''}
@@ -229,6 +229,24 @@ class ChangesetTest < ActiveSupport::TestCase
     end
   end
 
+  def test_update_keywords_with_multiple_rules_for_the_same_tracker_should_match_keyword
+    with_settings :commit_update_keywords => [
+      {'keywords' => 'Fixes, Closes', 'status_id' => '5', 'done_ratio' => '100', 'if_tracker_id' => '2'},
+      {'keywords' => 'Testing',       'status_id' => '3', 'done_ratio' => '90',  'if_tracker_id' => '2'}
+    ] do
+
+      issue1 = Issue.generate!(:tracker_id => 2)
+      issue2 = Issue.generate!(:tracker_id => 2)
+      Changeset.generate!(:comments => "Testing ##{issue1.id}, Fixes ##{issue2.id}")
+      issue1.reload
+      assert_equal 3, issue1.status_id
+      assert_equal 90, issue1.done_ratio
+      issue2.reload
+      assert_equal 5, issue2.status_id
+      assert_equal 100, issue2.done_ratio
+    end
+  end
+
   def test_update_keywords_with_multiple_rules_and_no_match
     with_settings :commit_update_keywords => [
       {'keywords' => 'fixes', 'status_id' => '5', 'if_tracker_id' => '2'},