polish user associations

This commit is contained in:
Torsten Ruger 2017-06-07 22:29:04 +03:00
parent 1c0e93c732
commit 262185f939
3 changed files with 17 additions and 7 deletions

View File

@ -4,6 +4,9 @@ class User < ActiveRecord::Base
validates_presence_of :city
validates_presence_of :country
has_one :application , class_name: :Apply
has_one :resume
enum role: [:user, :teacher, :admin]
after_initialize :set_default_role, :if => :new_record?
@ -18,9 +21,6 @@ class User < ActiveRecord::Base
Resume.find_or_create_by( :user_id => self.id)
end
def application
Apply.where(user_id: self.id ).first
end
# Include default devise modules. Others available are:
# :confirmable, :lockable, :timeoutable and :omniauthable
devise :database_authenticatable, :registerable, :confirmable,

View File

@ -4,6 +4,6 @@ FactoryGirl.define do
comment "Some Comment"
sent "2016-05-17"
plan "Flex"
user { FactoryGirl.create(:user) }
user
end
end

View File

@ -12,8 +12,18 @@ describe User do
end
end
it "factory works" do
user = build :user
expect(user).to be_valid
describe "factory" do
it "basic build" do
user = build :user
expect(user).to be_valid
end
it "application assoc" do
user = create :user
expect(user.application).to be_nil
end
it "resume assoc" do
user = create :user
expect(user.resume).not_to be_nil
end
end
end