require 'spec_helper' describe Studium do # test if it is invalid if certain attributes are missing let(:studium) { FactoryBot.build(:studium)} let(:object_variable) {studium} [:name, :zahl].each do |attr| it "should not be valid without #{attr}" do s = FactoryBot.build(:studium, attr=>nil) expect(s).not_to be_valid end end it_behaves_like "a valid object" it "should create studium with valid data" do s=FactoryBot.build(:studium) lambda { s.save!; Sunspot.commit}.should change {Studium.count()}.by(1) end it "should not accept double entrys" do FactoryBot.create(:studium) expect(studium).not_to be_valid expect(studium).to have_at_least(1).error_on(:name) expect(studium).to have_at_least(1).error_on(:zahl) end it "expect zahl to be 000.000" do s=FactoryBot.build(:studium, :zahl=>"000.000") #Sunspot.commit s.should_not be_valid expect(s.errors.size).to be > 0 end it "is not valid with a short zahl" do s=FactoryBot.build(:studium, :zahl=>"123") expect(s).not_to be_valid end it "has a alias title for name" do expect(studium.title).to eq(studium.name) end end