Merge branch '41247-timestamp' into 'master'
Use last_edited_at instead of updated_at for displaying issuable last change Closes #41247 See merge request gitlab-org/gitlab-ce!16406
This commit is contained in:
commit
def2f12995
|
@ -45,7 +45,7 @@ module IssuableActions
|
|||
}
|
||||
|
||||
if issuable.edited?
|
||||
response[:updated_at] = issuable.updated_at
|
||||
response[:updated_at] = issuable.last_edited_at.to_time.iso8601
|
||||
response[:updated_by_name] = issuable.last_edited_by.name
|
||||
response[:updated_by_path] = user_path(issuable.last_edited_by)
|
||||
end
|
||||
|
|
|
@ -241,7 +241,7 @@ module IssuablesHelper
|
|||
return {} unless issuable.edited?
|
||||
|
||||
{
|
||||
updatedAt: issuable.updated_at.to_time.iso8601,
|
||||
updatedAt: issuable.last_edited_at.to_time.iso8601,
|
||||
updatedBy: {
|
||||
name: issuable.last_edited_by.name,
|
||||
path: user_path(issuable.last_edited_by)
|
||||
|
|
|
@ -0,0 +1,6 @@
|
|||
---
|
||||
title: For issues display time of last edit of title or description instead of time
|
||||
of any attribute change
|
||||
merge_request:
|
||||
author:
|
||||
type: fixed
|
|
@ -301,6 +301,53 @@ describe Projects::IssuesController do
|
|||
end
|
||||
end
|
||||
|
||||
describe 'GET #realtime_changes' do
|
||||
def go(id:)
|
||||
get :realtime_changes,
|
||||
namespace_id: project.namespace.to_param,
|
||||
project_id: project,
|
||||
id: id
|
||||
end
|
||||
|
||||
context 'when an issue was edited' do
|
||||
before do
|
||||
project.add_developer(user)
|
||||
|
||||
issue.update!(last_edited_by: user, last_edited_at: issue.created_at + 1.minute)
|
||||
|
||||
sign_in(user)
|
||||
end
|
||||
|
||||
it 'returns last edited time' do
|
||||
go(id: issue.iid)
|
||||
|
||||
data = JSON.parse(response.body)
|
||||
|
||||
expect(data).to include('updated_at')
|
||||
expect(data['updated_at']).to eq(issue.last_edited_at.to_time.iso8601)
|
||||
end
|
||||
end
|
||||
|
||||
context 'when an issue was edited by a deleted user' do
|
||||
let(:deleted_user) { create(:user) }
|
||||
|
||||
before do
|
||||
project.add_developer(user)
|
||||
|
||||
issue.update!(last_edited_by: deleted_user, last_edited_at: Time.now)
|
||||
|
||||
deleted_user.destroy
|
||||
sign_in(user)
|
||||
end
|
||||
|
||||
it 'returns 200' do
|
||||
go(id: issue.iid)
|
||||
|
||||
expect(response).to have_gitlab_http_status(200)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
describe 'Confidential Issues' do
|
||||
let(:project) { create(:project_empty_repo, :public) }
|
||||
let(:assignee) { create(:assignee) }
|
||||
|
@ -589,25 +636,6 @@ describe Projects::IssuesController do
|
|||
project_id: project,
|
||||
id: id
|
||||
end
|
||||
|
||||
context 'when an issue was edited by a deleted user' do
|
||||
let(:deleted_user) { create(:user) }
|
||||
|
||||
before do
|
||||
project.add_developer(user)
|
||||
|
||||
issue.update!(last_edited_by: deleted_user, last_edited_at: Time.now)
|
||||
|
||||
deleted_user.destroy
|
||||
sign_in(user)
|
||||
end
|
||||
|
||||
it 'returns 200' do
|
||||
go(id: issue.iid)
|
||||
|
||||
expect(response).to have_gitlab_http_status(200)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
describe 'GET #edit' do
|
||||
|
|
|
@ -125,10 +125,10 @@ describe IssuablesHelper do
|
|||
describe '#updated_at_by' do
|
||||
let(:user) { create(:user) }
|
||||
let(:unedited_issuable) { create(:issue) }
|
||||
let(:edited_issuable) { create(:issue, last_edited_by: user, created_at: 3.days.ago, updated_at: 2.days.ago, last_edited_at: 2.days.ago) }
|
||||
let(:edited_issuable) { create(:issue, last_edited_by: user, created_at: 3.days.ago, updated_at: 1.day.ago, last_edited_at: 2.days.ago) }
|
||||
let(:edited_updated_at_by) do
|
||||
{
|
||||
updatedAt: edited_issuable.updated_at.to_time.iso8601,
|
||||
updatedAt: edited_issuable.last_edited_at.to_time.iso8601,
|
||||
updatedBy: {
|
||||
name: user.name,
|
||||
path: user_path(user)
|
||||
|
@ -142,7 +142,7 @@ describe IssuablesHelper do
|
|||
context 'when updated by a deleted user' do
|
||||
let(:edited_updated_at_by) do
|
||||
{
|
||||
updatedAt: edited_issuable.updated_at.to_time.iso8601,
|
||||
updatedAt: edited_issuable.last_edited_at.to_time.iso8601,
|
||||
updatedBy: {
|
||||
name: User.ghost.name,
|
||||
path: user_path(User.ghost)
|
||||
|
|
Loading…
Reference in New Issue