Mercurial > hg > soundsoftware-site
comparison test/unit/watcher_test.rb @ 1526:404aa68d4227
Merge from live branch
author | Chris Cannam |
---|---|
date | Thu, 11 Sep 2014 12:46:20 +0100 |
parents | dffacf8a6908 |
children |
comparison
equal
deleted
inserted
replaced
1493:a5f2bdf3b486 | 1526:404aa68d4227 |
---|---|
1 # Redmine - project management software | 1 # Redmine - project management software |
2 # Copyright (C) 2006-2012 Jean-Philippe Lang | 2 # Copyright (C) 2006-2014 Jean-Philippe Lang |
3 # | 3 # |
4 # This program is free software; you can redistribute it and/or | 4 # This program is free software; you can redistribute it and/or |
5 # modify it under the terms of the GNU General Public License | 5 # modify it under the terms of the GNU General Public License |
6 # as published by the Free Software Foundation; either version 2 | 6 # as published by the Free Software Foundation; either version 2 |
7 # of the License, or (at your option) any later version. | 7 # of the License, or (at your option) any later version. |
54 assert Issue.watched_by(@user).include?(@issue) | 54 assert Issue.watched_by(@user).include?(@issue) |
55 end | 55 end |
56 | 56 |
57 def test_watcher_users | 57 def test_watcher_users |
58 watcher_users = Issue.find(2).watcher_users | 58 watcher_users = Issue.find(2).watcher_users |
59 assert_kind_of Array, watcher_users | 59 assert_kind_of Array, watcher_users.collect{|w| w} |
60 assert_kind_of User, watcher_users.first | 60 assert_kind_of User, watcher_users.first |
61 end | 61 end |
62 | 62 |
63 def test_watcher_users_should_not_validate_user | 63 def test_watcher_users_should_not_validate_user |
64 User.update_all("firstname = ''", "id=1") | 64 User.where(:id => 1).update_all("firstname = ''") |
65 @user.reload | 65 @user.reload |
66 assert !@user.valid? | 66 assert !@user.valid? |
67 | 67 |
68 issue = Issue.new(:project => Project.find(1), :tracker_id => 1, :subject => "test", :author => User.find(2)) | 68 issue = Issue.new(:project => Project.find(1), :tracker_id => 1, :subject => "test", :author => User.find(2)) |
69 issue.watcher_users << @user | 69 issue.watcher_users << @user |
95 end | 95 end |
96 | 96 |
97 def test_addable_watcher_users_should_not_include_user_that_cannot_view_the_object | 97 def test_addable_watcher_users_should_not_include_user_that_cannot_view_the_object |
98 issue = Issue.new(:project => Project.find(1), :is_private => true) | 98 issue = Issue.new(:project => Project.find(1), :is_private => true) |
99 assert_nil issue.addable_watcher_users.detect {|user| !issue.visible?(user)} | 99 assert_nil issue.addable_watcher_users.detect {|user| !issue.visible?(user)} |
100 end | |
101 | |
102 def test_any_watched_should_return_false_if_no_object_is_watched | |
103 objects = (0..2).map {Issue.generate!} | |
104 | |
105 assert_equal false, Watcher.any_watched?(objects, @user) | |
106 end | |
107 | |
108 def test_any_watched_should_return_true_if_one_object_is_watched | |
109 objects = (0..2).map {Issue.generate!} | |
110 objects.last.add_watcher(@user) | |
111 | |
112 assert_equal true, Watcher.any_watched?(objects, @user) | |
113 end | |
114 | |
115 def test_any_watched_should_return_false_with_no_object | |
116 assert_equal false, Watcher.any_watched?([], @user) | |
100 end | 117 end |
101 | 118 |
102 def test_recipients | 119 def test_recipients |
103 @issue.watchers.delete_all | 120 @issue.watchers.delete_all |
104 @issue.reload | 121 @issue.reload |