@@ -274,7 +274,7 @@ def test_empty_bxml_verb
274274 assert_equal ( expected , actual )
275275 end
276276
277- def test_bxml_speak_sentence_pause
277+ def test_speak_sentence_pause
278278 bxml = Bandwidth ::Voice ::Bxml . new ( )
279279
280280 speak_sentence = Bandwidth ::Voice ::SpeakSentence . new ( {
@@ -690,17 +690,56 @@ def test_webrtc_generate_transfer_bxml_verb
690690 end
691691
692692 def test_start_stream_bxml_verb
693- expected = '<?xml version="1.0" encoding="UTF-8"?><Response><StartStream destination="https://www.test.com/stream" name="test_stream" tracks="inbound" streamEventUrl="https://www.test.com/event" streamEventMethod="POST" username="username" password="password"/ ></Response>'
693+ expected = '<?xml version="1.0" encoding="UTF-8"?><Response><StartStream destination="https://www.test.com/stream" name="test_stream" tracks="inbound" streamEventUrl="https://www.test.com/event" streamEventMethod="POST" username="username" password="password"><StreamParam name="name1" value="value1"/></StartStream ></Response>'
694694 response = Bandwidth ::Voice ::Response . new ( )
695+
696+ stream_param1 = Bandwidth ::Voice ::StreamParam . new ( {
697+ :name => "name1" ,
698+ :value => "value1"
699+ } )
700+
701+ start_stream = Bandwidth ::Voice ::StartStream . new ( {
702+ :destination => "https://www.test.com/stream" ,
703+ :name => "test_stream" ,
704+ :tracks => "inbound" ,
705+ :streamEventUrl => "https://www.test.com/event" ,
706+ :streamEventMethod => "POST" ,
707+ :username => "username" ,
708+ :password => "password" ,
709+ :stream_params => stream_param1
710+ } )
711+
712+ response . push ( start_stream )
713+ actual = response . to_bxml ( )
714+
715+ assert_equal ( expected , actual )
716+ end
717+
718+ def test_start_stream_multiple_nested_stream_params
719+ expected = '<?xml version="1.0" encoding="UTF-8"?><Response><StartStream destination="https://www.test.com/stream" name="test_stream" tracks="inbound" streamEventUrl="https://www.test.com/event" streamEventMethod="POST" username="username" password="password"><StreamParam name="name1" value="value1"/><StreamParam name="name2" value="value2"/></StartStream></Response>'
720+ response = Bandwidth ::Voice ::Response . new ( )
721+
722+ stream_param1 = Bandwidth ::Voice ::StreamParam . new ( {
723+ :name => "name1" ,
724+ :value => "value1"
725+ } )
726+
727+ stream_param2 = Bandwidth ::Voice ::StreamParam . new ( {
728+ :name => "name2" ,
729+ :value => "value2"
730+ } )
731+
695732 start_stream = Bandwidth ::Voice ::StartStream . new ( {
696733 :destination => "https://www.test.com/stream" ,
697734 :name => "test_stream" ,
698735 :tracks => "inbound" ,
699736 :streamEventUrl => "https://www.test.com/event" ,
700737 :streamEventMethod => "POST" ,
701738 :username => "username" ,
702- :password => "password"
739+ :password => "password" ,
740+ :nested_verbs => [ stream_param1 , stream_param2 ]
703741 } )
742+
704743 response . push ( start_stream )
705744 actual = response . to_bxml ( )
706745
0 commit comments