Sha256: f7ba3aed8ca4ce832b4f6b59226f403eb0359b77e8b3ea32b763409ecd46870a

Contents?: true

Size: 1.11 KB

Versions: 4

Compression:

Stored size: 1.11 KB

Contents

require 'spec_helper'

module Punchblock
  class Event
    describe End do
      it 'registers itself' do
        RayoNode.class_from_registration(:end, 'urn:xmpp:rayo:1').should == End
      end

      describe "from a stanza" do
        let :stanza do
          <<-MESSAGE
<end xmlns="urn:xmpp:rayo:1">
  <timeout />
  <!-- Signaling (e.g. SIP) Headers -->
  <header name="x-skill" value="agent" />
  <header name="x-customer-id" value="8877" />
</end>
          MESSAGE
        end

        subject { RayoNode.import parse_stanza(stanza).root, '9f00061', '1' }

        it { should be_instance_of End }

        it_should_behave_like 'event'
        it_should_behave_like 'event_headers'

        its(:reason) { should == :timeout }
        its(:xmlns) { should == 'urn:xmpp:rayo:1' }
      end

      describe "when setting options in initializer" do
        subject do
          End.new :reason => :hangup,
                  :headers  => { :x_skill => "agent", :x_customer_id => "8877" }
        end

        its(:reason) { should == :hangup }
        it_should_behave_like 'event_headers'
      end
    end
  end
end # Punchblock

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
punchblock-0.9.2 spec/punchblock/event/end_spec.rb
punchblock-0.9.1 spec/punchblock/event/end_spec.rb
punchblock-0.9.0 spec/punchblock/event/end_spec.rb
punchblock-0.8.4 spec/punchblock/event/end_spec.rb