From 035196e7a8c839ce14e280d0c7230b3ce34076fe Mon Sep 17 00:00:00 2001 From: gitlabhq Date: Sun, 9 Oct 2011 22:36:57 +0300 Subject: [PATCH] test fix --- app/controllers/admin/projects_controller.rb | 1 + app/models/project.rb | 10 ++++++++-- db/schema.rb | 2 +- spec/factories.rb | 2 ++ 4 files changed, 12 insertions(+), 3 deletions(-) diff --git a/app/controllers/admin/projects_controller.rb b/app/controllers/admin/projects_controller.rb index fe5ada8f..55752619 100644 --- a/app/controllers/admin/projects_controller.rb +++ b/app/controllers/admin/projects_controller.rb @@ -35,6 +35,7 @@ class Admin::ProjectsController < ApplicationController def create @admin_project = Project.new(params[:project]) + @admin_project.owner = current_user respond_to do |format| if @admin_project.save diff --git a/app/models/project.rb b/app/models/project.rb index 182c7844..17b556c3 100644 --- a/app/models/project.rb +++ b/app/models/project.rb @@ -1,10 +1,11 @@ require "grit" class Project < ActiveRecord::Base + belongs_to :owner, :class_name => "User" + has_many :issues, :dependent => :destroy has_many :users_projects, :dependent => :destroy has_many :users, :through => :users_projects - belongs_to :owner, :class_name => "User" has_many :notes, :dependent => :destroy validates :name, @@ -25,6 +26,9 @@ class Project < ActiveRecord::Base :uniqueness => true, :length => { :within => 3..12 } + validates :owner, + :presence => true + validate :check_limit before_save :format_code @@ -130,8 +134,10 @@ class Project < ActiveRecord::Base def check_limit 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 + rescue + errors[:base] << ("Cant check your ability to create project") end def valid_repo? diff --git a/db/schema.rb b/db/schema.rb index ed5816ca..befe0b2a 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -70,7 +70,7 @@ ActiveRecord::Schema.define(:version => 20111009111204) do t.datetime "updated_at" t.string "name" t.boolean "admin", :default => false, :null => false - t.integer "projects_limit" + t.integer "projects_limit", :default => 10 end add_index "users", ["email"], :name => "index_users_on_email", :unique => true diff --git a/spec/factories.rb b/spec/factories.rb index 457c08ba..ea055d1b 100644 --- a/spec/factories.rb +++ b/spec/factories.rb @@ -3,6 +3,7 @@ require File.join(Rails.root, 'spec', 'factory') Factory.add(:project, Project) do |obj| obj.name = Faker::Internet.user_name obj.path = 'legit' + obj.owner = Factory(:user) obj.code = 'LGT' end @@ -10,6 +11,7 @@ Factory.add(:public_project, Project) do |obj| obj.name = Faker::Internet.user_name obj.path = 'legit' obj.private_flag = false + obj.owner = Factory(:user) obj.code = 'LGT' end