ftp-manager/test/services/crypt_serializer_test.rb

32 lines
770 B
Ruby

# frozen_string_literal: true
require 'test_helper'
class CryptSerializerTest < ActiveSupport::TestCase
test "should generate marshaled array" do
string = "some string to encrypt"
encrypted = CryptSerializer.dump string
ar = Marshal.load(Base64.urlsafe_decode64(encrypted))
assert_instance_of Array, ar
assert_equal 3, ar.count
end
test "should encrypt and dencrypt" do
string = "test@string.email"
encrypted = CryptSerializer.dump string
decrypted = CryptSerializer.load encrypted
assert_equal string, decrypted
end
test "should handle nils" do
assert_equal nil, CryptSerializer.dump(nil)
end
test "must raise RuntimeError" do
assert_raises RuntimeError do
CryptSerializer.dump []
end
end
end