Sha256: 550864af585f984fbcc1a1a8c8b1fbcb86a353bb5e44937c3fa832584b8a38e8
Contents?: true
Size: 1.25 KB
Versions: 1
Compression:
Stored size: 1.25 KB
Contents
require 'lib/usher' def build_email_mock(email) request = mock "Request" request.should_receive(:email).any_number_of_times.and_return(email) request end SampleController = Object.new describe "Usher (for email) route recognition" do before(:each) do @route_set = Usher::Interface.for(:email) end it "should recognize a simple request" do receiver = mock('receiver') receiver.should_receive(:action).with({}).exactly(1) @route_set.for('joshbuddy@gmail.com') { |params| receiver.action(params) } @route_set.act('joshbuddy@gmail.com') end it "should recognize a wildcard domain" do receiver = mock('receiver') receiver.should_receive(:action).with({:domain => 'gmail.com'}).exactly(1) @route_set.for('joshbuddy@*domain') { |params| receiver.action(params) } @route_set.act('joshbuddy@gmail.com') end it "should recognize a complex email" do receiver = mock('receiver') receiver.should_receive(:action).with({:subject => 'sub+ect', :id => '123', :sid => '456', :tok => 'sdqwe123ae', :domain => 'mydomain.org'}).exactly(1) @route_set.for(':subject.{:id,^\d+$}-{:sid,^\d+$}-{:tok,^\w+$}@*domain') { |params| receiver.action(params) } @route_set.act('sub+ect.123-456-sdqwe123ae@mydomain.org') end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
joshbuddy-usher-0.4.2 | spec/private/email/recognize_spec.rb |