Backport try_megabytes_to_bytes from EE
EE adds this method to Gitlab::Utils, which is also required by our SimpleCov helper. This prevents us from injecting EE modules into Gitlab::Utils, because the necessary bits for this are not yet in place. To work around this we just backport try_megabytes_to_bytes, as there's no particular reason to keep this in EE only.
This commit is contained in:
parent
018fc6c696
commit
ae9838d035
2 changed files with 24 additions and 0 deletions
|
@ -104,6 +104,12 @@ module Gitlab
|
|||
nil
|
||||
end
|
||||
|
||||
def try_megabytes_to_bytes(size)
|
||||
Integer(size).megabytes
|
||||
rescue ArgumentError
|
||||
size
|
||||
end
|
||||
|
||||
def bytes_to_megabytes(bytes)
|
||||
bytes.to_f / Numeric::MEGABYTE
|
||||
end
|
||||
|
|
|
@ -213,4 +213,22 @@ describe Gitlab::Utils do
|
|||
expect(subject[:variables].first[:key]).to eq('VAR1')
|
||||
end
|
||||
end
|
||||
|
||||
describe '.try_megabytes_to_bytes' do
|
||||
context 'when the size can be converted to megabytes' do
|
||||
it 'returns the size in megabytes' do
|
||||
size = described_class.try_megabytes_to_bytes(1)
|
||||
|
||||
expect(size).to eq(1.megabytes)
|
||||
end
|
||||
end
|
||||
|
||||
context 'when the size can not be converted to megabytes' do
|
||||
it 'returns the input size' do
|
||||
size = described_class.try_megabytes_to_bytes('foo')
|
||||
|
||||
expect(size).to eq('foo')
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Reference in a new issue