Files
fetsite/spec/models/beispiel_spec.rb
2015-08-30 16:03:01 +02:00

63 lines
1.6 KiB
Ruby

require 'spec_helper'
describe Beispiel do
before(:each) do
s=FactoryGirl.create(:studium)
mg=FactoryGirl.build(:modulgruppe)
mg.studium= s
mg.save!
m=FactoryGirl.build(:other_modul)
m.modulgruppen << mg
m.save!
@l=FactoryGirl.build(:lva)
@l.modul << m
@l.save!
end
before(:each) do
@b=FactoryGirl.build(:beispiel)
@b.lva=@l
end
it "should be created" do
@b.lva=@l
expect{@b.save!; Sunspot.commit}.to change{Beispiel.count}.by(1)
end
it "should not be valid without lva" do
b=FactoryGirl.build(:beispiel)
expect(b.valid?).to be false
end
it "should respond to comments" do
expect(@b.respond_to?(:comments)).to be true
end
it "should respond to get_flag" do
expect(@b.respond_to?(:get_flag)).to be true
end
[:delete, :goodquality, :badquality].each do |flg|
it "should have default false for flag #{flg}" do
b=FactoryGirl.create(:beispiel, lva_id: @l.id)
expect(b.respond_to?(:get_flag)).to be true
expect(b.get_flag(flg)).to be false
end
it "should respond to flag setter #{flg}" do
puts "flag_#{flg.to_s}"
expect(@b.respond_to?("flag_#{flg.to_s}".to_sym)).to be true
end
end
it "should be in not_flag beispiele" do
@b.save!
bsp= Beispiel.not_flag_delete
expect(bsp).to include @b
end
it "should not be in not_flag" do
@b.save!
bsp= Beispiel.not_flag_delete
expect{@b.flag_delete=true; @b.save!}.to change{ Beispiel.not_flag_delete.count }.by(-1)
expect{@b.flag_delete=nil; @b.save!}.to change{ Beispiel.not_flag_delete.count }.by(1)
end
end