test fix
This commit is contained in:
parent
67f0c62d07
commit
035196e7a8
4 changed files with 12 additions and 3 deletions
|
@ -35,6 +35,7 @@ class Admin::ProjectsController < ApplicationController
|
||||||
|
|
||||||
def create
|
def create
|
||||||
@admin_project = Project.new(params[:project])
|
@admin_project = Project.new(params[:project])
|
||||||
|
@admin_project.owner = current_user
|
||||||
|
|
||||||
respond_to do |format|
|
respond_to do |format|
|
||||||
if @admin_project.save
|
if @admin_project.save
|
||||||
|
|
|
@ -1,10 +1,11 @@
|
||||||
require "grit"
|
require "grit"
|
||||||
|
|
||||||
class Project < ActiveRecord::Base
|
class Project < ActiveRecord::Base
|
||||||
|
belongs_to :owner, :class_name => "User"
|
||||||
|
|
||||||
has_many :issues, :dependent => :destroy
|
has_many :issues, :dependent => :destroy
|
||||||
has_many :users_projects, :dependent => :destroy
|
has_many :users_projects, :dependent => :destroy
|
||||||
has_many :users, :through => :users_projects
|
has_many :users, :through => :users_projects
|
||||||
belongs_to :owner, :class_name => "User"
|
|
||||||
has_many :notes, :dependent => :destroy
|
has_many :notes, :dependent => :destroy
|
||||||
|
|
||||||
validates :name,
|
validates :name,
|
||||||
|
@ -25,6 +26,9 @@ class Project < ActiveRecord::Base
|
||||||
:uniqueness => true,
|
:uniqueness => true,
|
||||||
:length => { :within => 3..12 }
|
:length => { :within => 3..12 }
|
||||||
|
|
||||||
|
validates :owner,
|
||||||
|
:presence => true
|
||||||
|
|
||||||
validate :check_limit
|
validate :check_limit
|
||||||
|
|
||||||
before_save :format_code
|
before_save :format_code
|
||||||
|
@ -130,8 +134,10 @@ class Project < ActiveRecord::Base
|
||||||
|
|
||||||
def check_limit
|
def check_limit
|
||||||
unless owner.can_create_project?
|
unless owner.can_create_project?
|
||||||
errors[:base] << ("You can to have #{owner.projects_limit} your own projects")
|
errors[:base] << ("Your own projects limit is #{owner.projects_limit}! Please contact administrator to increase it")
|
||||||
end
|
end
|
||||||
|
rescue
|
||||||
|
errors[:base] << ("Cant check your ability to create project")
|
||||||
end
|
end
|
||||||
|
|
||||||
def valid_repo?
|
def valid_repo?
|
||||||
|
|
|
@ -70,7 +70,7 @@ ActiveRecord::Schema.define(:version => 20111009111204) do
|
||||||
t.datetime "updated_at"
|
t.datetime "updated_at"
|
||||||
t.string "name"
|
t.string "name"
|
||||||
t.boolean "admin", :default => false, :null => false
|
t.boolean "admin", :default => false, :null => false
|
||||||
t.integer "projects_limit"
|
t.integer "projects_limit", :default => 10
|
||||||
end
|
end
|
||||||
|
|
||||||
add_index "users", ["email"], :name => "index_users_on_email", :unique => true
|
add_index "users", ["email"], :name => "index_users_on_email", :unique => true
|
||||||
|
|
|
@ -3,6 +3,7 @@ require File.join(Rails.root, 'spec', 'factory')
|
||||||
Factory.add(:project, Project) do |obj|
|
Factory.add(:project, Project) do |obj|
|
||||||
obj.name = Faker::Internet.user_name
|
obj.name = Faker::Internet.user_name
|
||||||
obj.path = 'legit'
|
obj.path = 'legit'
|
||||||
|
obj.owner = Factory(:user)
|
||||||
obj.code = 'LGT'
|
obj.code = 'LGT'
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -10,6 +11,7 @@ Factory.add(:public_project, Project) do |obj|
|
||||||
obj.name = Faker::Internet.user_name
|
obj.name = Faker::Internet.user_name
|
||||||
obj.path = 'legit'
|
obj.path = 'legit'
|
||||||
obj.private_flag = false
|
obj.private_flag = false
|
||||||
|
obj.owner = Factory(:user)
|
||||||
obj.code = 'LGT'
|
obj.code = 'LGT'
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue