Commit 2d68f1fb authored by James Edwards-Jones's avatar James Edwards-Jones

Prevented Issues CSV export failing when author is nil

parent d111b146
......@@ -49,6 +49,7 @@ module Issuable
delegate :name,
:email,
to: :author,
allow_nil: true,
prefix: true
delegate :name,
......
......@@ -44,6 +44,34 @@ describe Issue, "Issuable" do
it { expect(described_class).to respond_to(:assigned) }
end
describe 'author_name' do
it 'is delegated to author' do
expect(issue.author_name).to eq issue.author.name
end
it 'returns nil when author is nil' do
issue.author_id = nil
issue.save(validate: false)
expect(issue.author_name).to eq nil
end
end
describe 'assignee_name' do
it 'is delegated to assignee' do
issue.update!(assignee: create(:user))
expect(issue.assignee_name).to eq issue.assignee.name
end
it 'returns nil when assignee is nil' do
issue.assignee_id = nil
issue.save(validate: false)
expect(issue.assignee_name).to eq nil
end
end
describe "before_save" do
describe "#update_cache_counts" do
context "when previous assignee exists" do
......
......@@ -108,4 +108,12 @@ describe Issues::ExportCsvService, services: true do
expect(csv[0]['Labels']).to eq nil
end
end
it 'succeeds when author is non-existent' do
issue.author_id = 99999999
issue.save(validate: false)
expect(csv[0]['Author']).to eq nil
expect(csv[0]['Author Username']).to eq nil
end
end
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment