BroadcastManagerTest.php 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. <?php
  2. namespace Illuminate\Tests\Integration\Broadcasting;
  3. use Illuminate\Broadcasting\BroadcastEvent;
  4. use Illuminate\Contracts\Broadcasting\ShouldBroadcast;
  5. use Illuminate\Contracts\Broadcasting\ShouldBroadcastNow;
  6. use Illuminate\Support\Facades\Broadcast;
  7. use Illuminate\Support\Facades\Bus;
  8. use Illuminate\Support\Facades\Queue;
  9. use Orchestra\Testbench\TestCase;
  10. class BroadcastManagerTest extends TestCase
  11. {
  12. public function testEventCanBeBroadcastNow()
  13. {
  14. Bus::fake();
  15. Queue::fake();
  16. Broadcast::queue(new TestEventNow);
  17. Bus::assertDispatched(BroadcastEvent::class);
  18. Queue::assertNotPushed(BroadcastEvent::class);
  19. }
  20. public function testEventsCanBeBroadcast()
  21. {
  22. Bus::fake();
  23. Queue::fake();
  24. Broadcast::queue(new TestEvent);
  25. Bus::assertNotDispatched(BroadcastEvent::class);
  26. Queue::assertPushed(BroadcastEvent::class);
  27. }
  28. }
  29. class TestEvent implements ShouldBroadcast
  30. {
  31. /**
  32. * Get the channels the event should broadcast on.
  33. *
  34. * @return \Illuminate\Broadcasting\Channel|\Illuminate\Broadcasting\Channel[]
  35. */
  36. public function broadcastOn()
  37. {
  38. //
  39. }
  40. }
  41. class TestEventNow implements ShouldBroadcastNow
  42. {
  43. /**
  44. * Get the channels the event should broadcast on.
  45. *
  46. * @return \Illuminate\Broadcasting\Channel|\Illuminate\Broadcasting\Channel[]
  47. */
  48. public function broadcastOn()
  49. {
  50. //
  51. }
  52. }