summaryrefslogtreecommitdiff
path: root/lib/gitlab/cycle_analytics/updater.rb
diff options
context:
space:
mode:
authorJames Lopez <james@jameslopez.es>2016-11-18 13:00:38 +0100
committerJames Lopez <james@jameslopez.es>2016-11-18 13:00:38 +0100
commitf5b792e22eb7bd4ecafcd2ad3bc7a388abb36ffc (patch)
treec647334269f0d4ae414d13e77711f8279aa57697 /lib/gitlab/cycle_analytics/updater.rb
parent0aa477884c6ac3298f79f62e08e63294d81735a3 (diff)
downloadgitlab-ce-f5b792e22eb7bd4ecafcd2ad3bc7a388abb36ffc.tar.gz
refactored updater and updated specs
Diffstat (limited to 'lib/gitlab/cycle_analytics/updater.rb')
-rw-r--r--lib/gitlab/cycle_analytics/updater.rb14
1 files changed, 7 insertions, 7 deletions
diff --git a/lib/gitlab/cycle_analytics/updater.rb b/lib/gitlab/cycle_analytics/updater.rb
index 38cbfa03030..953268ebd46 100644
--- a/lib/gitlab/cycle_analytics/updater.rb
+++ b/lib/gitlab/cycle_analytics/updater.rb
@@ -5,25 +5,25 @@ module Gitlab
new(*args).update!
end
- def initialize(event_result, update_klass, update_key, column = nil)
+ def initialize(event_result, from:, to:, klass:)
@event_result = event_result
- @update_klass = update_klass
- @update_key = update_key.to_s
- @column = column || "#{@update_key}_id"
+ @klass = klass
+ @from = from
+ @to = to
end
def update!
@event_result.each do |event|
- event[@update_key] = items[event.delete(@column).to_i].first
+ event[@to] = items[event.delete(@from).to_i].first
end
end
def result_ids
- @event_result.map { |event| event[@column] }
+ @event_result.map { |event| event[@from] }
end
def items
- @items ||= @update_klass.find(result_ids).group_by { |item| item['id'] }
+ @items ||= @klass.find(result_ids).group_by { |item| item['id'] }
end
end
end