Refactor milestones related functionality. Added seeds for Milestine and MR

This commit is contained in:
randx 2012-10-30 09:22:24 +02:00
parent 53a3be03fc
commit e4cf99db46
7 changed files with 39 additions and 10 deletions

View file

@ -7,8 +7,6 @@ class Issue < ActiveRecord::Base
acts_as_taggable_on :labels
belongs_to :milestone
validates :description, length: { within: 0..2000 }
def self.open_for(user)

View file

@ -10,8 +10,6 @@ class MergeRequest < ActiveRecord::Base
attr_accessor :should_remove_source_branch
belongs_to :milestone
BROKEN_DIFF = "--broken-diff"
UNCHECKED = 1

View file

@ -6,6 +6,7 @@ module IssueCommonality
belongs_to :project
belongs_to :author, class_name: "User"
belongs_to :assignee, class_name: "User"
belongs_to :milestone
has_many :notes, as: :noteable, dependent: :destroy
validates :project, presence: true

View file

@ -13,7 +13,7 @@
- if merge_request.milestone_id?
%span.btn.small.disabled.grouped
%i.icon-time
= merge_request.project.milestones.find(merge_request.milestone_id).title
= merge_request.milestone.title
%span.btn.small.disabled.grouped
= merge_request.source_branch
&rarr;

View file

@ -13,9 +13,9 @@
.bar{style: "width: #{milestone.percent_complete}%;"}
.span6
- if milestone.issues.any?
= link_to project_issues_path(milestone.project, milestone_id: milestone.id), class: "btn very_small" do
%strong= pluralize milestone.issues.count, 'Issue'
= link_to project_issues_path(milestone.project, milestone_id: milestone.id) do
= pluralize milestone.issues.count, 'Issue'
&nbsp;
- if milestone.merge_requests.any?
= link_to project_merge_requests_path(milestone.project, milestone_id: milestone.id), class: "btn very_small" do
%strong= pluralize milestone.merge_requests.count, 'Merge Request'
= link_to project_merge_requests_path(milestone.project, milestone_id: milestone.id) do
= pluralize milestone.merge_requests.count, 'Merge Request'

View file

@ -0,0 +1,13 @@
Milestone.seed(:id, [
{ :id => 1, :project_id => 1, :title => 'v' + Faker::Address.zip_code },
{ :id => 2, :project_id => 1, :title => 'v' + Faker::Address.zip_code },
{ :id => 3, :project_id => 1, :title => 'v' + Faker::Address.zip_code },
{ :id => 4, :project_id => 2, :title => 'v' + Faker::Address.zip_code },
{ :id => 5, :project_id => 2, :title => 'v' + Faker::Address.zip_code },
{ :id => 6, :project_id => 2, :title => 'v' + Faker::Address.zip_code },
{ :id => 7, :project_id => 2, :title => 'v' + Faker::Address.zip_code },
{ :id => 8, :project_id => 3, :title => 'v' + Faker::Address.zip_code },
{ :id => 9, :project_id => 3, :title => 'v' + Faker::Address.zip_code },
{ :id => 11, :project_id => 3, :title => 'v' + Faker::Address.zip_code },
])

View file

@ -0,0 +1,19 @@
MergeRequest.seed(:id, [
{ :id => 1, milestone_id: 1, project_id: 1, source_branch: 'master', target_branch: 'feature', author_id: 1, assignee_id: 1, title: Faker::Lorem.sentence(6) },
{ :id => 2, milestone_id: 1, project_id: 1, source_branch: 'master', target_branch: 'feature', author_id: 2, assignee_id: 2, title: Faker::Lorem.sentence(6) },
{ :id => 3, milestone_id: 1, project_id: 1, source_branch: 'master', target_branch: 'feature', author_id: 3, assignee_id: 3, title: Faker::Lorem.sentence(6) },
{ :id => 4, milestone_id: 1, project_id: 1, source_branch: 'master', target_branch: 'feature', author_id: 4, assignee_id: 4, title: Faker::Lorem.sentence(6) },
{ :id => 5, milestone_id: 1, project_id: 1, source_branch: 'master', target_branch: 'feature', author_id: 5, assignee_id: 5, title: Faker::Lorem.sentence(6) },
{ :id => 6, milestone_id: 5, project_id: 2, source_branch: 'master', target_branch: 'feature', author_id: 1, assignee_id: 1, title: Faker::Lorem.sentence(6) },
{ :id => 7, milestone_id: 6, project_id: 2, source_branch: 'master', target_branch: 'feature', author_id: 2, assignee_id: 2, title: Faker::Lorem.sentence(6) },
{ :id => 8, milestone_id: 6, project_id: 2, source_branch: 'master', target_branch: 'feature', author_id: 3, assignee_id: 3, title: Faker::Lorem.sentence(6) },
{ :id => 9, milestone_id: 6, project_id: 2, source_branch: 'master', target_branch: 'feature', author_id: 4, assignee_id: 4, title: Faker::Lorem.sentence(6) },
{ :id => 11, milestone_id: 5, project_id: 2, source_branch: 'master', target_branch: 'feature', author_id: 5, assignee_id: 5, title: Faker::Lorem.sentence(6) },
{ :id => 12, milestone_id: 9, project_id: 3, source_branch: 'master', target_branch: 'feature', author_id: 1, assignee_id: 1, title: Faker::Lorem.sentence(6)},
{ :id => 13, milestone_id: 9, project_id: 3, source_branch: 'master', target_branch: 'feature', author_id: 2, assignee_id: 2, title: Faker::Lorem.sentence(6)},
{ :id => 14, milestone_id: 9, project_id: 3, source_branch: 'master', target_branch: 'feature', author_id: 3, assignee_id: 3, title: Faker::Lorem.sentence(6)},
{ :id => 15, milestone_id: 9, project_id: 3, source_branch: 'master', target_branch: 'feature', author_id: 4, assignee_id: 4, title: Faker::Lorem.sentence(6)},
{ :id => 16, milestone_id: 9, project_id: 3, source_branch: 'master', target_branch: 'feature', author_id: 5, assignee_id: 5, title: Faker::Lorem.sentence(6)},
])