Sha256: 76ef70838c18966764839d242cf191f3dc2584eb3f5daf3ad231235af849caeb

Contents?: true

Size: 701 Bytes

Versions: 5

Compression:

Stored size: 701 Bytes

Contents

require 'spec_helper_models'

describe Gaku::SemesterConnector do

  describe 'associations' do
    it { should belong_to :semester }
    it { should belong_to :semesterable }
  end

  describe 'validations' do
    it { should validate_presence_of :semester_id }
    it { should validate_presence_of :semesterable_id }
    it { should validate_presence_of :semesterable_type }

    it do
      should validate_uniqueness_of(:semester_id).scoped_to([:semesterable_type, :semesterable_id])
                                                 .with_message(/Semester already added/)
    end

    it { should validate_inclusion_of(:semesterable_type).in_array(%w(Gaku::ClassGroup Gaku::Course)) }
  end

end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
gaku-0.2.4 core/spec/models/semester_connector_spec.rb
gaku-0.2.3 core/spec/models/semester_connector_spec.rb
gaku-0.2.2 core/spec/models/semester_connector_spec.rb
gaku-0.2.1 core/spec/models/semester_connector_spec.rb
gaku-0.2.0 core/spec/models/semester_connector_spec.rb