Class: Authlogic::TestCase::MockSignedCookieJar

Inherits:
MockCookieJar
  • Object
show all
Defined in:
lib/authlogic/test_case/mock_cookie_jar.rb

Instance Attribute Summary collapse

Attributes inherited from MockCookieJar

#set_cookies

Instance Method Summary collapse

Methods inherited from MockCookieJar

#delete, #signed

Constructor Details

#initialize(parent_jar) ⇒ MockSignedCookieJar

Returns a new instance of MockSignedCookieJar.



29
30
31
# File 'lib/authlogic/test_case/mock_cookie_jar.rb', line 29

def initialize(parent_jar)
  @parent_jar = parent_jar
end

Instance Attribute Details

#parent_jarObject (readonly)

helper for testing



27
28
29
# File 'lib/authlogic/test_case/mock_cookie_jar.rb', line 27

def parent_jar
  @parent_jar
end

Instance Method Details

#[](val) ⇒ Object



33
34
35
36
37
38
39
40
# File 'lib/authlogic/test_case/mock_cookie_jar.rb', line 33

def [](val)
  signed_message = @parent_jar[val]
  if signed_message
    payload, signature = signed_message.split('--')
    raise "Invalid signature" unless Digest::SHA1.hexdigest(payload) == signature
    payload
  end
end

#[]=(key, options) ⇒ Object



42
43
44
45
# File 'lib/authlogic/test_case/mock_cookie_jar.rb', line 42

def []=(key, options)
  options[:value] = "#{options[:value]}--#{Digest::SHA1.hexdigest options[:value]}"
  @parent_jar[key] = options
end