diff --git a/spec/adhearsion/call_controller_spec.rb b/spec/adhearsion/call_controller_spec.rb
index <HASH>..<HASH> 100644
--- a/spec/adhearsion/call_controller_spec.rb
+++ b/spec/adhearsion/call_controller_spec.rb
@@ -317,7 +317,7 @@ module Adhearsion
       let(:response)  { Punchblock::Event::Complete.new }
 
       before do
-        expect_message_waiting_for_response component
+        expect_message_of_type_waiting_for_response component
         component.execute!
         component.complete_event = response
       end
diff --git a/spec/support/call_controller_test_helpers.rb b/spec/support/call_controller_test_helpers.rb
index <HASH>..<HASH> 100644
--- a/spec/support/call_controller_test_helpers.rb
+++ b/spec/support/call_controller_test_helpers.rb
@@ -28,6 +28,11 @@ module CallControllerTestHelpers
     message.request!
   end
 
+  def expect_message_of_type_waiting_for_response(message)
+    subject.should_receive(:write_and_await_response).once.with(message.class).and_return message
+    message.request!
+  end
+
   def expect_component_execution(component)
     subject.should_receive(:execute_component_and_await_completion).once.with(component).and_return(component)
   end
[BUGFIX] Avoid comparing a component directly when not necessary