2019-12-21 20:55:43 +05:30
|
|
|
# frozen_string_literal: true
|
|
|
|
|
|
|
|
require 'spec_helper'
|
|
|
|
|
2020-07-28 23:09:34 +05:30
|
|
|
RSpec.describe Checksummable do
|
2021-01-03 14:25:43 +05:30
|
|
|
subject do
|
|
|
|
Class.new { include Checksummable }
|
|
|
|
end
|
|
|
|
|
|
|
|
describe ".crc32" do
|
|
|
|
it 'returns the CRC32 of data' do
|
|
|
|
expect(subject.crc32('abcd')).to eq 3984772369
|
2019-12-21 20:55:43 +05:30
|
|
|
end
|
2021-01-03 14:25:43 +05:30
|
|
|
end
|
2019-12-21 20:55:43 +05:30
|
|
|
|
2021-11-18 22:05:49 +05:30
|
|
|
describe ".sha256_hexdigest" do
|
2019-12-21 20:55:43 +05:30
|
|
|
it 'returns the SHA256 sum of the file' do
|
|
|
|
expected = Digest::SHA256.file(__FILE__).hexdigest
|
|
|
|
|
2021-11-18 22:05:49 +05:30
|
|
|
expect(subject.sha256_hexdigest(__FILE__)).to eq(expected)
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
describe ".md5_hexdigest" do
|
|
|
|
it 'returns the MD5 sum of the file' do
|
|
|
|
expected = Digest::MD5.file(__FILE__).hexdigest
|
|
|
|
|
|
|
|
expect(subject.md5_hexdigest(__FILE__)).to eq(expected)
|
2019-12-21 20:55:43 +05:30
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|