summaryrefslogtreecommitdiff
path: root/app/services/todos/destroy/destroyed_issuable_service.rb
diff options
context:
space:
mode:
Diffstat (limited to 'app/services/todos/destroy/destroyed_issuable_service.rb')
-rw-r--r--app/services/todos/destroy/destroyed_issuable_service.rb7
1 files changed, 6 insertions, 1 deletions
diff --git a/app/services/todos/destroy/destroyed_issuable_service.rb b/app/services/todos/destroy/destroyed_issuable_service.rb
index 7a85b59eeea..759c430ec7a 100644
--- a/app/services/todos/destroy/destroyed_issuable_service.rb
+++ b/app/services/todos/destroy/destroyed_issuable_service.rb
@@ -5,9 +5,14 @@ module Todos
class DestroyedIssuableService
BATCH_SIZE = 100
+ # Since we are moving towards work items, in some instances we create todos with
+ # `target_type: WorkItem` in other instances we still create todos with `target_type: Issue`
+ # So when an issue/work item is deleted, we just make sure to delete todos for both target types
+ BOUND_TARGET_TYPES = %w(Issue WorkItem).freeze
+
def initialize(target_id, target_type)
@target_id = target_id
- @target_type = target_type
+ @target_type = BOUND_TARGET_TYPES.include?(target_type) ? BOUND_TARGET_TYPES : target_type
end
def execute