Sha256: 150071d224bacb9dd8209a622588c892e251962f5413de76e971d6c92b5c93c2
Contents?: true
Size: 1.14 KB
Versions: 1
Compression:
Stored size: 1.14 KB
Contents
require 'spec_helper' describe RackSessionAccess do subject { described_class } it 'should have configured default path' do expect(subject.path).to eq('/rack_session') end it 'should have configured default edit_path' do expect(subject.edit_path).to eq('/rack_session/edit') end describe '.encode' do it 'should encode ruby hash to string' do result = subject.encode( { 'a' => 'b' }) expect(result).to be_kind_of(String) end end describe '.decode' do it 'should decode marshalized and base64 encoded string' do # Array(Marshal.dump({ :user_id => 100 })).pack("m") # => "BAh7BjoMdXNlcl9pZGlp\n" expect(subject.decode("BAh7BjoMdXNlcl9pZGlp\n")).to eq(user_id: 100) end end it 'should encode and decode value' do source = { 'klass' => Class, :id => 100, '1' => 2 } data = subject.encode(source) result = subject.decode(data) expect(result).to eq(source) end it 'should encode and decode values with line brake characters' do source = { 'line' => "one\ntwo" } data = subject.encode(source) result = subject.decode(data) expect(result).to eq(source) end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
rack_session_access-0.2.0 | spec/rack_session_access_spec.rb |