class Mailtruck::Truck

Public Instance Methods

email_address() click to toggle source

Generates an email address that Mailtruck can receive email at.

@example

mailtruck = Mailtruck.start
address = mailtruck.email_address

emails = mailtruck.wait_for_emails do
  MyApp.send_email_to(address)
end

@yield Block to run that should trigger emails @return [String] an email address

# File lib/mailtruck/truck.rb, line 16
def email_address
  address = Mailtruck::EmailAddress.random
  addresses << address

  address.to_s
end
wait_for_emails(&block) click to toggle source

Waits for emails to be sent to email_address and returns them.

@return [Array<Mailtruck::Email>] the received emails

# File lib/mailtruck/truck.rb, line 26
def wait_for_emails(&block)
  Mailtruck::Receiver.wait_for(addresses, block)
end

Private Instance Methods

addresses() click to toggle source
# File lib/mailtruck/truck.rb, line 32
def addresses
  @addresses ||= []
end