fixing resume and application dependencies
Dangling instances were left and blew up respective admin lists dependent: destroy added with relevant tests
This commit is contained in:
parent
c0285d6512
commit
78d810c690
|
@ -4,8 +4,8 @@ class User < ActiveRecord::Base
|
||||||
validates_presence_of :city
|
validates_presence_of :city
|
||||||
validates_presence_of :country
|
validates_presence_of :country
|
||||||
|
|
||||||
has_one :application , class_name: :Apply
|
has_one :application , dependent: :destroy , class_name: :Apply
|
||||||
has_one :resume
|
has_one :resume , dependent: :destroy
|
||||||
|
|
||||||
enum role: [:user, :teacher, :admin]
|
enum role: [:user, :teacher, :admin]
|
||||||
|
|
||||||
|
|
|
@ -10,4 +10,9 @@ describe "Admin Apply" do
|
||||||
apply = create(:apply)
|
apply = create(:apply)
|
||||||
visit_url admin_apply_url(apply)
|
visit_url admin_apply_url(apply)
|
||||||
end
|
end
|
||||||
|
it "lists applies after deleting user" do
|
||||||
|
list = create_list(:apply , 3)
|
||||||
|
list.first.user.destroy
|
||||||
|
visit_url admin_applies_url
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -10,4 +10,9 @@ describe "Admin Resume" do
|
||||||
resume = create(:resume)
|
resume = create(:resume)
|
||||||
visit_url admin_resume_url(resume)
|
visit_url admin_resume_url(resume)
|
||||||
end
|
end
|
||||||
|
it "lists resumes after destroying user" do
|
||||||
|
resume = create(:resume)
|
||||||
|
resume.user.destroy
|
||||||
|
visit_url admin_resumes_url
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -11,4 +11,11 @@ RSpec.describe Apply, type: :model do
|
||||||
apply = build(:apply , primary_choice_course_id: nil)
|
apply = build(:apply , primary_choice_course_id: nil)
|
||||||
expect(apply.save).to be false
|
expect(apply.save).to be false
|
||||||
end
|
end
|
||||||
|
|
||||||
|
it "deletes application when deleting user" do
|
||||||
|
apply = create :apply
|
||||||
|
apply.user.destroy
|
||||||
|
expect(Apply.where( id: apply.id)).to be_empty
|
||||||
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
|
@ -26,6 +26,6 @@ RSpec.describe Course, type: :model do
|
||||||
|
|
||||||
it "the course is in the future" do
|
it "the course is in the future" do
|
||||||
course = create :course
|
course = create :course
|
||||||
expect((course.start - DateTime.now).to_i).to be < 410
|
expect((course.start - DateTime.now).to_i).to be < 470
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -17,13 +17,19 @@ describe User do
|
||||||
user = build :user
|
user = build :user
|
||||||
expect(user).to be_valid
|
expect(user).to be_valid
|
||||||
end
|
end
|
||||||
it "application assoc" do
|
it "has application assoc" do
|
||||||
user = create :user
|
user = create :user
|
||||||
expect(user.application).to be_nil
|
expect(user.application).to be_nil
|
||||||
end
|
end
|
||||||
it "resume assoc" do
|
it "has resume assoc" do
|
||||||
user = create :user
|
user = create :user
|
||||||
expect(user.resume).not_to be_nil
|
expect(user.resume).not_to be_nil
|
||||||
end
|
end
|
||||||
|
it "deletes resume when deleting user" do
|
||||||
|
user = create :user
|
||||||
|
resume_id = user.resume.id
|
||||||
|
user.destroy
|
||||||
|
expect(Resume.where( id: resume_id)).to be_empty
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in New Issue