Patch #34654 ยป fix_overdue.patch
| app/models/issue.rb (date 1611739322377) | ||
|---|---|---|
| 914 | 914 |
|
| 915 | 915 |
# Returns true if the issue is overdue |
| 916 | 916 |
def overdue? |
| 917 |
due_date.present? && (due_date < User.current.today) && !closed?
|
|
| 917 |
due_date && (due_date < (closed_on ? closed_on : Date.current))
|
|
| 918 | 918 |
end |
| 919 | 919 |
|
| 920 | 920 |
# Is the amount of work done less than it should for the due date |
| test/unit/issue_test.rb (date 1611905435592) | ||
|---|---|---|
| 2397 | 2397 |
def test_overdue |
| 2398 | 2398 |
User.current = nil |
| 2399 | 2399 |
today = User.current.today |
| 2400 |
assert Issue.new(:due_date => (today - 1.day).to_date).overdue? |
|
| 2400 |
closed_status = IssueStatus.where(:is_closed => true).first |
|
| 2401 |
|
|
| 2402 |
assert Issue.new(:due_date => (today - 1.day)).overdue? |
|
| 2401 | 2403 |
assert !Issue.new(:due_date => today).overdue? |
| 2402 |
assert !Issue.new(:due_date => (today + 1.day).to_date).overdue?
|
|
| 2404 |
assert !Issue.new(:due_date => (today + 1.day)).overdue? |
|
| 2403 | 2405 |
assert !Issue.new(:due_date => nil).overdue? |
| 2404 |
assert !Issue.new(:due_date => (today - 1.day).to_date, |
|
| 2405 |
:status => IssueStatus.where(:is_closed => true).first |
|
| 2406 |
).overdue? |
|
| 2406 |
|
|
| 2407 |
assert Issue.new(:due_date => (today - 1.day), :closed_on => today, :status => closed_status).overdue? |
|
| 2408 |
assert !Issue.new(:due_date => today, :closed_on => today, :status => closed_status).overdue? |
|
| 2409 |
assert !Issue.new(:due_date => (today + 1.day), :closed_on => today, :status => closed_status).overdue? |
|
| 2410 |
assert !Issue.new(:due_date => nil, :closed_on => today, :status => closed_status).overdue? |
|
| 2407 | 2411 |
end |
| 2408 | 2412 |
|
| 2409 | 2413 |
test "#behind_schedule? should be false if the issue has no start_date" do |
| ... | ... | |
| 3184 | 3188 |
user_in_asia = users(:users_002) |
| 3185 | 3189 |
user_in_asia.pref.update! :time_zone => 'Hongkong' |
| 3186 | 3190 |
|
| 3187 |
issue = Issue.generate! :due_date => Date.parse('2016-03-20')
|
|
| 3191 |
issue = Issue.generate! :due_date => Date.parse('2016-03-21')
|
|
| 3188 | 3192 |
|
| 3189 | 3193 |
# server time is UTC |
| 3190 | 3194 |
time = Time.parse '2016-03-20 20:00 UTC' |