2013-02-05 14:16:51 -05:00
require 'spec_helper'
2013-06-13 12:41:27 +10:00
require_dependency 'site_setting'
require_dependency 'site_setting_extension'
2013-02-05 14:16:51 -05:00
describe SiteSetting do
2014-02-12 15:55:44 -05:00
describe " normalized_embeddable_host " do
it 'returns the `embeddable_host` value' do
SiteSetting . stubs ( :embeddable_host ) . returns ( " eviltrout.com " )
SiteSetting . normalized_embeddable_host . should == " eviltrout.com "
end
it 'strip http from `embeddable_host` value' do
SiteSetting . stubs ( :embeddable_host ) . returns ( " http://eviltrout.com " )
SiteSetting . normalized_embeddable_host . should == " eviltrout.com "
end
it 'strip https from `embeddable_host` value' do
SiteSetting . stubs ( :embeddable_host ) . returns ( " https://eviltrout.com " )
SiteSetting . normalized_embeddable_host . should == " eviltrout.com "
end
end
2013-02-26 19:27:59 +03:00
describe 'topic_title_length' do
it 'returns a range of min/max topic title length' do
2013-06-13 12:41:27 +10:00
SiteSetting . topic_title_length . should ==
2013-04-10 14:54:10 +02:00
( SiteSetting . defaults [ :min_topic_title_length ] .. SiteSetting . defaults [ :max_topic_title_length ] )
2013-02-26 19:27:59 +03:00
end
end
2013-02-28 21:54:12 +03:00
describe 'post_length' do
it 'returns a range of min/max post length' do
2013-04-10 14:54:10 +02:00
SiteSetting . post_length . should == ( SiteSetting . defaults [ :min_post_length ] .. SiteSetting . defaults [ :max_post_length ] )
2013-02-28 21:54:12 +03:00
end
end
2013-06-04 17:58:25 -04:00
describe 'private_message_title_length' do
it 'returns a range of min/max pm topic title length' do
expect ( SiteSetting . private_message_title_length ) . to eq ( SiteSetting . defaults [ :min_private_message_title_length ] .. SiteSetting . defaults [ :max_topic_title_length ] )
end
end
2013-06-23 13:35:06 +10:00
describe 'in test we do some judo to ensure SiteSetting is always reset between tests' do
it 'is always the correct default' do
expect ( SiteSetting . contact_email ) . to eq ( '' )
end
it 'sets a setting' do
SiteSetting . contact_email = 'sam@sam.com'
end
it 'is always the correct default' do
expect ( SiteSetting . contact_email ) . to eq ( '' )
end
2013-06-21 13:31:40 -07:00
end
describe " anonymous_homepage " do
it " returns latest " do
expect ( SiteSetting . anonymous_homepage ) . to eq ( 'latest' )
end
end
describe " top_menu " do
2014-06-03 11:48:52 +10:00
before ( :each ) { SiteSetting . top_menu = 'one,-nope|two|three,-not|four,ignored|category/xyz' }
2013-06-23 13:35:06 +10:00
2013-06-21 13:31:40 -07:00
describe " items " do
let ( :items ) { SiteSetting . top_menu_items }
it 'returns TopMenuItem objects' do
expect ( items [ 0 ] ) . to be_kind_of ( TopMenuItem )
end
end
describe " homepage " do
it " has homepage " do
expect ( SiteSetting . homepage ) . to eq ( 'one' )
end
end
2013-06-23 13:35:06 +10:00
end
2013-12-16 11:44:59 +01:00
describe " scheme " do
it " returns http when ssl is disabled " do
2014-01-09 10:51:38 +11:00
SiteSetting . expects ( :use_https ) . returns ( false )
2013-12-16 11:44:59 +01:00
SiteSetting . scheme . should == " http "
end
it " returns https when using ssl " do
2014-01-09 10:51:38 +11:00
SiteSetting . expects ( :use_https ) . returns ( true )
2013-12-16 11:44:59 +01:00
SiteSetting . scheme . should == " https "
end
end
2013-02-05 14:16:51 -05:00
end