Commit d1311119 authored by Grzegorz Bizon's avatar Grzegorz Bizon

Fix static analysis in utf8 helper methods

parent 777b6713
...@@ -19,7 +19,7 @@ module Gitlab ...@@ -19,7 +19,7 @@ module Gitlab
def ensure_utf8_size(str, bytes:) def ensure_utf8_size(str, bytes:)
raise ArgumentError if str.empty? || bytes.negative? raise ArgumentError if str.empty? || bytes.negative?
truncated = str.each_char.each_with_object(String.new) do |char, object| truncated = str.each_char.each_with_object(+'') do |char, object|
if object.bytesize + char.bytesize > bytes if object.bytesize + char.bytesize > bytes
break object break object
else else
......
...@@ -24,7 +24,7 @@ describe Settings do ...@@ -24,7 +24,7 @@ describe Settings do
it 'expands db key base secret to 12 bytes' do it 'expands db key base secret to 12 bytes' do
expect(described_class.attr_encrypted_db_key_base_12) expect(described_class.attr_encrypted_db_key_base_12)
.to eq ('a' * 10) + ("\0" * 2) .to eq(('a' * 10) + ("\0" * 2))
end end
end end
...@@ -38,7 +38,7 @@ describe Settings do ...@@ -38,7 +38,7 @@ describe Settings do
it 'does not use more than 32 bytes' do it 'does not use more than 32 bytes' do
db_key_base = described_class.attr_encrypted_db_key_base_12 db_key_base = described_class.attr_encrypted_db_key_base_12
expect(db_key_base).to eq ('❤' * 4) expect(db_key_base).to eq('❤' * 4)
expect(db_key_base.bytesize).to eq 12 expect(db_key_base.bytesize).to eq 12
end end
end end
...@@ -99,7 +99,7 @@ describe Settings do ...@@ -99,7 +99,7 @@ describe Settings do
it 'does not use more than 32 bytes' do it 'does not use more than 32 bytes' do
db_key_base = described_class.attr_encrypted_db_key_base_32 db_key_base = described_class.attr_encrypted_db_key_base_32
expect(db_key_base).to eq ('❤' * 10) + ("\0" * 2) expect(db_key_base).to eq(('❤' * 10) + ("\0" * 2))
expect(db_key_base.bytesize).to eq 32 expect(db_key_base.bytesize).to eq 32
end end
end end
......
...@@ -134,7 +134,7 @@ describe Gitlab::Utils do ...@@ -134,7 +134,7 @@ describe Gitlab::Utils do
transformed = described_class.ensure_utf8_size('a' * 10, bytes: 32) transformed = described_class.ensure_utf8_size('a' * 10, bytes: 32)
expect(transformed.bytesize).to eq 32 expect(transformed.bytesize).to eq 32
expect(transformed).to eq ('a' * 10) + ("\0" * 22) expect(transformed).to eq(('a' * 10) + ("\0" * 22))
end end
end end
...@@ -160,7 +160,7 @@ describe Gitlab::Utils do ...@@ -160,7 +160,7 @@ describe Gitlab::Utils do
it 'truncates string to 32 characters and backfills it if needed' do it 'truncates string to 32 characters and backfills it if needed' do
transformed = described_class.ensure_utf8_size('❤' * 18, bytes: 32) transformed = described_class.ensure_utf8_size('❤' * 18, bytes: 32)
expect(transformed).to eq ('❤' * 10) + ("\0" * 2) expect(transformed).to eq(('❤' * 10) + ("\0" * 2))
expect(transformed.bytesize).to eq 32 expect(transformed.bytesize).to eq 32
end end
end end
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment