Merge branch 'sh-fix-atom-feeds' into 'master'
Fix 500 errors in Atom feeds due to push events Closes #36705 See merge request !13695
This commit is contained in:
commit
646aae3e4f
|
@ -83,6 +83,10 @@ class Event < ActiveRecord::Base
|
|||
self.inheritance_column = 'action'
|
||||
|
||||
class << self
|
||||
def model_name
|
||||
ActiveModel::Name.new(self, nil, 'event')
|
||||
end
|
||||
|
||||
def find_sti_class(action)
|
||||
if action.to_i == PUSHED
|
||||
PushEvent
|
||||
|
@ -438,6 +442,12 @@ class Event < ActiveRecord::Base
|
|||
EventForMigration.create!(new_attributes)
|
||||
end
|
||||
|
||||
def to_partial_path
|
||||
# We are intentionally using `Event` rather than `self.class` so that
|
||||
# subclasses also use the `Event` implementation.
|
||||
Event._to_partial_path
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def recent_update?
|
||||
|
|
|
@ -41,6 +41,8 @@ describe "User Feed" do
|
|||
target_project: project,
|
||||
description: "Here is the fix: ![an image](image.png)")
|
||||
end
|
||||
let(:push_event) { create(:push_event, project: project, author: user) }
|
||||
let!(:push_event_payload) { create(:push_event_payload, event: push_event) }
|
||||
|
||||
before do
|
||||
project.team << [user, :master]
|
||||
|
@ -70,6 +72,10 @@ describe "User Feed" do
|
|||
it 'has XHTML summaries in merge request descriptions' do
|
||||
expect(body).to match /Here is the fix: <a[^>]*><img[^>]*\/><\/a>/
|
||||
end
|
||||
|
||||
it 'has push event commit ID' do
|
||||
expect(body).to have_content(Commit.truncate_sha(push_event.commit_id))
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
|
|
Loading…
Reference in New Issue