1

スレッドをテストしようとしています。上記のコードに顧客、会場、メッセージがすべて含まれていると仮定しますが、投稿すると非常に長くなります。「メッセージ」変数をテストしようとしていますが、これはインスタンス変数ではなく、スレッド内にあるため、簡単にはテストできません。スレッドをスタブ化することが rspec でこれをテストするための正しいルートであると想定していますが、「メッセージ」変数を正確にテストする方法について他に提案があれば非常に役立ちます。これが私がやっていることの基本的なバージョンです:

Class Messages
  def order_now
    conf = venue.confirmation_message
    message = "Hi #{customer.first_name}, "
    if conf && conf.present?
      message << conf
    else
      message << "your order has been received and will be ready shortly."
    end

    Thread.new do
      ActiveRecord::Base.connection_pool.with_connection do
        Conversation.start(customer, venue, message, {:from_system => true})
      end
      ActiveRecord::Base.connection_pool.clear_stale_cached_connections!
    end         
  end
end

前もって感謝します!

4

1 に答える 1