ability to set custom maximum space

This commit is contained in:
Kyle Drake 2015-08-21 14:42:05 -07:00
parent 0c8bba8114
commit 3035175c4f
3 changed files with 24 additions and 1 deletions

View file

@ -0,0 +1,9 @@
Sequel.migration do
up {
DB.add_column :sites, :custom_max_space, :bigint, default: 0
}
down {
DB.drop_column :sites, :custom_max_space
}
end

View file

@ -960,7 +960,11 @@ class Site < Sequel::Model
end
def maximum_space
PLAN_FEATURES[(parent? ? self : parent).plan_type.to_sym][:space]
plan_space = PLAN_FEATURES[(parent? ? self : parent).plan_type.to_sym][:space]
return custom_max_space if custom_max_space > plan_space
plan_space
end
def space_percentage_used

View file

@ -5,6 +5,16 @@ def app
end
describe Site do
describe 'custom_max_space' do
it 'should use the custom max space if it is more' do
site = Fabricate :site
site.maximum_space.must_equal Site::PLAN_FEATURES[:free][:space]
site.custom_max_space = 10**9
site.save_changes
site.maximum_space.must_equal 10**9
end
end
describe 'can_email' do
it 'should fail if send_emails is false' do
site = Fabricate :site