2016-09-18 09:41:51 -05:00
|
|
|
# frozen_string_literal: true
|
2016-08-28 10:32:26 -05:00
|
|
|
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
|