Files
fetsite/spec/models/gremium_spec.rb

51 lines
1.3 KiB
Ruby

require 'spec_helper'
describe Gremium do
let(:gremium) {FactoryGirl.build(:gremium)}
let(:object_variable){gremium}
it_behaves_like "a valid object"
[:name,:typ].each do |attr|
it "is not valid without #{attr}" do
g = FactoryGirl.build(:gremium,attr.to_sym => nil)
expect(g).not_to be_valid
expect(g.errors[attr]).to have_at_least(1).items
end
end
pending "only accepts valid types"
pending "only accepts valid geschlecht"
it "is not valid with wrong typ" do
((-5..30).to_a-Gremium::TYPEN.keys()).each do |i|
g = FactoryGirl.build(:gremium, typ: i)
expect(g).not_to be_valid
end
end
it "is in tabs if typ is 1" do
g = FactoryGirl.create(:gremium, typ: 1)
expect(Gremium.tabs).to eq([g])
end
it "is not in tabs if typ is not 1 or 3" do
g = FactoryGirl.create(:gremium, typ: 2)
expect(Gremium.tabs).to eq([])
end
it "destroys memberships if its destroyed" do
g=FactoryGirl.create(:gremium)
fp=FactoryGirl.create(:fetprofile)
m=FactoryGirl.create(:membership, gremium_id: g.id, fetprofile_id: fp.id)
expect{g.destroy}.to change {Membership.count}.by(-1)
end
it "responds to title" do
g=FactoryGirl.build(:gremium)
expect(g.respond_to?(:title)).to be true
end
end