From 312f08287e0a53a1748276b6e4407d27fa2d7912 Mon Sep 17 00:00:00 2001 From: Hemant Kumar Date: Thu, 1 Mar 2012 23:12:41 +0530 Subject: [PATCH] Fix last of nagging issues --- app/models/mapping.rb | 2 +- lib/issue_patch.rb | 2 +- lib/pivotal_story.rb | 12 ++++++++---- lib/trackmine.rb | 11 +++++------ 4 files changed, 15 insertions(+), 12 deletions(-) diff --git a/app/models/mapping.rb b/app/models/mapping.rb index 3ba82bf..cbcd455 100644 --- a/app/models/mapping.rb +++ b/app/models/mapping.rb @@ -2,7 +2,7 @@ class Mapping < ActiveRecord::Base unloadable belongs_to :project - validates_presence_of :project_id, :tracker_project_id, :estimations, :story_types, :status_type + validates_presence_of :project_id, :tracker_project_id, :estimations, :story_types validates_uniqueness_of :tracker_project_id, :scope => :label serialize :estimations serialize :story_types diff --git a/lib/issue_patch.rb b/lib/issue_patch.rb index 8aa1d50..39cb17e 100644 --- a/lib/issue_patch.rb +++ b/lib/issue_patch.rb @@ -26,7 +26,7 @@ def self.included(klass) # :nodoc: begin puts "Pivotal project id is #{pivotal_project_id}" if pivotal_project_id - new PivotalStory(issue,pivotal_project_id)) + PivotalStory.new(issue,pivotal_project_id) end puts "Creating pt story is done" rescue => e diff --git a/lib/pivotal_story.rb b/lib/pivotal_story.rb index 11b13a8..2903ac3 100644 --- a/lib/pivotal_story.rb +++ b/lib/pivotal_story.rb @@ -18,10 +18,14 @@ def initialize(issue, pivotal_project_id) end def story_type - map_type = mapping.story_types.detect { |pt_type, mine_type| mine_type == issue.tracker.name } - mapping[0] - rescue - 'feature' + case issue.tracker.name + when 'Todo', 'Feature' + 'feature' + when 'Defect', 'Bug' + 'bug' + else + 'chore' + end end def description diff --git a/lib/trackmine.rb b/lib/trackmine.rb index cdc501c..8322b31 100644 --- a/lib/trackmine.rb +++ b/lib/trackmine.rb @@ -52,7 +52,7 @@ def read_activity(activity) if story['current_state'] == "started" story_restart(issues, activity) else - update_state(issue,activity) + issues.each {|issue| update_state(issue,story) } end story_url = get_story(activity).url update_issues(issues, activity['project_id'], {:description => story_url +"\r\n"+ story['description']}) if story['description'] @@ -71,15 +71,14 @@ def get_user_email(project_id, name) end end - def update_state(issue,story) + def update_state(issue, story) case story['current_state'] - when 'finished' + when 'accepted' finished_issue_state = IssueStatus.find_by_name "Closed" - issue.update_attributes(:issue_id => finished_issue_state.id) + issue.update_attributes(:status_id => finished_issue_state.id) else finished_issue_state = IssueStatus.find_by_name "Review" - issue.update_attributes(:issue_id => finished_issue_state.id) - end + issue.update_attributes(:status_id => finished_issue_state.id) end end