Feature #32628 » 0003-Add-IssuePriority-high-and-low-helpers.patch
| app/models/issue_priority.rb | ||
|---|---|---|
| 54 | 54 |
end |
| 55 | 55 |
end |
| 56 | 56 | |
| 57 |
def high? |
|
| 58 |
position > self.class.default_or_middle.position |
|
| 59 |
end |
|
| 60 | ||
| 61 |
def low? |
|
| 62 |
position < self.class.default_or_middle.position |
|
| 63 |
end |
|
| 64 | ||
| 57 | 65 |
# Updates position_name for active priorities |
| 58 | 66 |
# Called from migration 20121026003537_populate_enumerations_position_name |
| 59 | 67 |
def self.compute_position_names |
| test/unit/issue_priority_test.rb | ||
|---|---|---|
| 90 | 90 |
assert_equal %w(lowest low2 default high2 highest), IssuePriority.active.to_a.sort.map(&:position_name) |
| 91 | 91 |
end |
| 92 | 92 | |
| 93 |
def test_low_high_helpers |
|
| 94 |
IssuePriority.delete_all |
|
| 95 | ||
| 96 |
priorities = [1, 2, 3, 4, 5, 6].map {|i| IssuePriority.create!(:name => "P#{i}")}
|
|
| 97 | ||
| 98 |
middle = IssuePriority.find_by_position(3) |
|
| 99 | ||
| 100 |
[1, 2].each do |p| |
|
| 101 |
assert IssuePriority.find_by_position(p).low? |
|
| 102 |
assert !IssuePriority.find_by_position(p).high? |
|
| 103 |
end |
|
| 104 | ||
| 105 |
assert !middle.high? |
|
| 106 |
assert !middle.low? |
|
| 107 | ||
| 108 |
[4, 5, 6].each do |p| |
|
| 109 |
assert IssuePriority.find_by_position(p).high? |
|
| 110 |
assert !IssuePriority.find_by_position(p).low? |
|
| 111 |
end |
|
| 112 | ||
| 113 |
default = IssuePriority.find_by_position(5) |
|
| 114 |
default.update_attributes is_default: true |
|
| 115 | ||
| 116 |
[1, 2, 3, 4].each do |p| |
|
| 117 |
assert IssuePriority.find_by_position(p).low? |
|
| 118 |
assert !IssuePriority.find_by_position(p).high? |
|
| 119 |
end |
|
| 120 | ||
| 121 |
assert !default.high? |
|
| 122 |
assert !default.low? |
|
| 123 | ||
| 124 |
[6].each do |p| |
|
| 125 |
assert IssuePriority.find_by_position(p).high? |
|
| 126 |
assert !IssuePriority.find_by_position(p).low? |
|
| 127 |
end |
|
| 128 |
end |
|
| 129 | ||
| 93 | 130 |
def test_adding_a_priority_should_update_position_names |
| 94 | 131 |
priority = IssuePriority.create!(:name => 'New') |
| 95 | 132 |
assert_equal %w(lowest default high4 high3 high2 highest), IssuePriority.active.to_a.sort.map(&:position_name) |