Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ##the assertion fails saying the length is zero
- def test_position
- subject_one =courses(:one).course_subjects.create!(:position => courses(:one).subjects.length)
- subject_two =courses(:one).course_subjects.create!(:position => courses(:one).subjects.length)
- subject_three =courses(:one).course_subjects.create!(:position => courses(:one).subjects.length)
- subject_one.subject = subjects(:one)
- subject_two.subject = subjects(:two)
- subject_three.subject = subjects(:three)
- subject_one.subject.save
- assert_equal courses(:one).subjects.length, 3
- end
- ##a course
- class Course < ActiveRecord::Base
- belongs_to :author, :class_name=>'User'
- has_many :course_subjects, :order => :position, :before_add => Proc.new {| course, subject| subject.position = course.subjects.length}
- has_many :subjects, :through => :course_subjects
- end
- ##a course subject
- class CourseSubject < ActiveRecord::Base
- belongs_to :course
- belongs_to :subject
- end
- ##a subject
- class Subject < ActiveRecord::Base
- belongs_to :subject
- has_many :course_subjects, :order => :position
- has_many :courses, :through => :course_subjects
- end
Add Comment
Please, Sign In to add comment