gitlab-org--gitlab-foss/spec/lib/gitlab/repository_size_checker_spe...

64 lines
1.4 KiB
Ruby

# frozen_string_literal: true
require 'spec_helper'
RSpec.describe Gitlab::RepositorySizeChecker do
let_it_be(:namespace) { nil }
let(:current_size) { 0 }
let(:limit) { 50 }
let(:enabled) { true }
subject do
described_class.new(
current_size_proc: -> { current_size.megabytes },
limit: limit.megabytes,
namespace: namespace,
enabled: enabled
)
end
describe '#enabled?' do
context 'when enabled' do
it 'returns true' do
expect(subject.enabled?).to eq(true)
end
end
context 'when limit is zero' do
let(:limit) { 0 }
it 'returns false' do
expect(subject.enabled?).to eq(false)
end
end
end
describe '#changes_will_exceed_size_limit?' do
let(:current_size) { 49 }
it 'returns true when changes go over' do
expect(subject.changes_will_exceed_size_limit?(2.megabytes)).to eq(true)
end
it 'returns false when changes do not go over' do
expect(subject.changes_will_exceed_size_limit?(1.megabytes)).to eq(false)
end
end
describe '#above_size_limit?' do
include_examples 'checker size above limit'
include_examples 'checker size not over limit'
end
describe '#exceeded_size' do
include_examples 'checker size exceeded'
end
describe '#additional_repo_storage_available?' do
it 'returns false' do
expect(subject.additional_repo_storage_available?).to eq(false)
end
end
end