Sha256: a8b1bacbc2939bde96d418fb34921aa7d219106d67cf9a2587eb2158c89750c5

Contents?: true

Size: 1.09 KB

Versions: 4

Compression:

Stored size: 1.09 KB

Contents

require 'test_helper'
require 'mocha'
require 'mocha/mini_test'

module Dripper
  class MessageTest < ActiveSupport::TestCase

    def setup
      # create the mailer
      User.create(email: "foo@bar.com", username: "foo")
      User.create(email: "foo2@bar.com")
      User.create(email: "foo3@bar.com")

      Dripper.config model: :users do
        dripper mailer: :user_mailer do
          dripper action: :welcome
          dripper action: :newsletter, wait: 1.minutes, scope: -> {has_username}
        end
      end

    end


    def teardown
      Dripper.registry.clear
    end

    test "Config" do
      assert Dripper.registry.count == 2
    end

    test "Integration" do
      msg = mock()
      msg.stubs(:deliver_now)
      msg.stubs(:deliver_later)

      # expect that welcome was called 2x, newsletter called once
      UserMailer.stubs(:welcome)
        .with(instance_of(User))
        .returns(msg)
        .at_least(3)
        .at_most(3)

      UserMailer.stubs(:newsletter)
        .with(instance_of(User))
        .returns(msg)
        .once

      Dripper.execute

    end


  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
dripper_mail-0.0.17 test/models/dripper/message_test.rb
dripper_mail-0.0.16 test/models/dripper/message_test.rb
dripper_mail-0.0.10 test/models/dripper/message_test.rb
dripper_mail-0.0.8 test/models/dripper/message_test.rb