jam-cloud/ruby/spec/jam_ruby/models/icecast_logging_spec.rb

49 lines
1.4 KiB
Ruby

require 'spec_helper'
describe IcecastLogging do
let(:logging) { IcecastLogging.new }
let(:output) { StringIO.new }
let(:builder) { ::Builder::XmlMarkup.new(:target => output, :indent => 1) }
it "save works by default db values" do
logging.save.should be_true
logging.access_log.should == 'access.log'
logging.error_log.should == 'error.log'
end
it "save" do
logging.access_log = Faker::Lorem.characters(10)
logging.error_log = Faker::Lorem.characters(10)
logging.log_level = 4
logging.log_size = 20000
logging.save!
logging.dumpXml(builder)
output.rewind
xml = Nokogiri::XML(output)
xml.css('logging accesslog').text.should == logging.access_log
xml.css('logging errorlog').text.should == logging.error_log
xml.css('logging loglevel').text.should == logging.log_level.to_s
xml.css('logging logsize').text.should == logging.log_size.to_s
xml.css('logging playlistlog').length.should == 0
xml.css('logging logarchive').length.should == 0
end
describe "poke configs" do
let(:server) { a = FactoryGirl.create(:icecast_server_with_overrides); a.config_updated; IcecastServer.find(a.id) }
it "success via template" do
server.template.logging.save!
server.reload
server.config_changed.should == 1
end
it "success via server" do
server.logging.save!
server.reload
server.config_changed.should == 1
end
end
end