appwrite/tests/unit/Event/MockPublisher.php

36 lines
788 B
PHP
Raw Normal View History

2025-01-29 14:13:58 +00:00
<?php
namespace Tests\Unit\Event;
use Utopia\Queue\Publisher;
use Utopia\Queue\Queue;
class MockPublisher implements Publisher
{
2025-04-27 05:06:21 +00:00
private array $events = [];
2025-01-29 14:13:58 +00:00
public function enqueue(Queue $queue, array $payload): bool
{
if (!isset($this->events[$queue->name])) {
$this->events[$queue->name] = [];
}
$this->events[$queue->name][] = $payload;
return true;
}
public function getEvents(string $queue)
{
return $this->events[$queue] ?? null;
}
public function retry(Queue $queue, int $limit = null): void
{
// TODO: Implement retry() method.
}
public function getQueueSize(Queue $queue, bool $failedJobs = false): int
{
return count($this->events[$queue->name]);
}
}