Refactor `Issuable::Clone::BaseService` to use services
What does this MR do?
This MR refactors Issuable::Clone::BaseService
to use services.
Previously Issuable::Clone::BaseService
copied an issuable's notes, award emoji, and award emoji on the issuable notes to another issue through Issuable::Clone::ContentRewriter
.
As preparatory work for #13426 (closed) we need to be able to copy design notes and their award emoji independently of Issuable::Clone::ContentRewriter
which is highly-coupled to issuables.
Issuable::Clone::BaseService
now calls three new services:
Notes::CopyService
AwardEmoji::CopyService
MarkdownContentRewriterService
Which contain re-usable logic to perform those actions.
Does this MR meet the acceptance criteria?
Conformity
- [-] Changelog entry
-
Documentation (if required) -
Code review guidelines -
Merge request performance guidelines -
Style guides - [-] Database guides
- [-] Separation of EE specific content
Availability and Testing
-
Review and add/update tests for this feature/bug. Consider all test levels. See the Test Planning Process. - [-] Tested in all supported browsers
- [-] Informed Infrastructure department of a default or new setting change, if applicable per definition of done
Edited by Luke Duncalfe