Class: Webspicy::Tester::Fakeses

Inherits:
Object
  • Object
show all
Includes:
Support::World::Item
Defined in:
lib/webspicy/tester/fakeses.rb,
lib/webspicy/tester/fakeses/email.rb

Defined Under Namespace

Classes: Email

Constant Summary collapse

DEFAULT_OPTIONS =
{
  endpoint: "http://fake-ses/_/api"
}

Instance Attribute Summary collapse

Attributes included from Support::World::Item

#config

Instance Method Summary collapse

Constructor Details

#initialize(options = {}) ⇒ Fakeses

Returns a new instance of Fakeses.



12
13
14
# File 'lib/webspicy/tester/fakeses.rb', line 12

def initialize(options = {})
  @options = DEFAULT_OPTIONS.merge(options)
end

Instance Attribute Details

#optionsObject (readonly)

Returns the value of attribute options.



15
16
17
# File 'lib/webspicy/tester/fakeses.rb', line 15

def options
  @options
end

Instance Method Details

#clear!Object



21
22
23
# File 'lib/webspicy/tester/fakeses.rb', line 21

def clear!
  res = HTTP.post("#{endpoint}/reset")
end

#emailsObject



25
26
27
28
# File 'lib/webspicy/tester/fakeses.rb', line 25

def emails
  res = HTTP.get("#{endpoint}/emails")
  JSON.parse(res.body).map{|data| Email.new(data) }
end

#emails_countObject



30
31
32
# File 'lib/webspicy/tester/fakeses.rb', line 30

def emails_count
  emails.length
end

#endpointObject



17
18
19
# File 'lib/webspicy/tester/fakeses.rb', line 17

def endpoint
  options[:endpoint]
end

#last_emailObject



34
35
36
# File 'lib/webspicy/tester/fakeses.rb', line 34

def last_email
  emails.last
end