spec/adhearsion/call_controller/output_spec.rb in adhearsion-2.5.2 vs spec/adhearsion/call_controller/output_spec.rb in adhearsion-2.5.3

- old
+ new

@@ -20,26 +20,18 @@ it "should return a Player component targetted at the current controller" do player = controller.player player.should be_a Output::Player player.controller.should be controller end - - it "should return the same player every time" do - controller.player.should be controller.player - end end describe "#async_player" do it "should return an AsyncPlayer component targetted at the current controller" do player = controller.async_player player.should be_a Output::AsyncPlayer player.controller.should be controller end - - it "should return the same player every time" do - controller.async_player.should be controller.async_player - end end describe "#play_audio" do let(:audio_file) { "/sounds/boo.wav" } @@ -148,10 +140,20 @@ it 'raises ArgumentError' do lambda { subject.play_numeric input }.should raise_error(ArgumentError) end end + + context "with a renderer" do + let(:input) { 123 } + let(:renderer) { :native } + + it "should use the specified renderer in the SSML" do + expect_ssml_output ssml, renderer: renderer + subject.play_numeric(input, renderer: renderer).should be true + end + end end describe "#play_numeric!" do let :ssml do RubySpeech::SSML.draw do @@ -182,10 +184,20 @@ it 'raises ArgumentError' do lambda { subject.play_numeric! input }.should raise_error(ArgumentError) end end + + context "with a renderer" do + let(:input) { 123 } + let(:renderer) { :native } + + it "should use the specified renderer in the SSML" do + expect_async_ssml_output ssml, renderer: renderer + subject.play_numeric!(input, renderer: renderer).should be_a Punchblock::Component::Output + end + end end describe "#play_time" do let :ssml do content = input.to_s @@ -249,10 +261,22 @@ expect_ssml_output ssml subject.play_time(base_input, :format => format, :strftime => strftime).should be true end end + context "with a renderer" do + let(:renderer) { :native } + let(:input) { Date.parse('2011-01-23') } + let(:format) { "d-m-y" } + let(:expected_say_as_options) { {:interpret_as => 'date', :format => format} } + + it "should use the specified renderer in the SSML" do + expect_ssml_output ssml, renderer: renderer + subject.play_time(input, format: format, renderer: renderer).should be true + end + end + describe "with an object other than Time, DateTime, or Date" do let(:input) { "foo" } it 'raises ArgumentError' do lambda { subject.play_time input }.should raise_error(ArgumentError) @@ -320,9 +344,21 @@ let(:expected_say_as_options) { {:interpret_as => 'date', :format => format} } it 'plays the correct SSML' do expect_async_ssml_output ssml subject.play_time!(base_input, :format => format, :strftime => strftime).should be_a Punchblock::Component::Output + end + end + + context "with a renderer" do + let(:renderer) { :native } + let(:input) { Date.parse('2011-01-23') } + let(:format) { "d-m-y" } + let(:expected_say_as_options) { {:interpret_as => 'date', :format => format} } + + it "should use the specified renderer in the SSML" do + expect_async_ssml_output ssml, renderer: renderer + subject.play_time!(input, format: format, renderer: renderer).should be_a Punchblock::Component::Output end end describe "with an object other than Time, DateTime, or Date" do let(:input) { "foo" }