Skip to content

Commit 7552867

Browse files
authored
Include sleep option in queue config (#564)
* feat/add-sleep-option-to-queue-config | expose sleep option to QueueConfig * feat/add-sleep-option-to-queue-config | include default sleep option in nativephp config file
1 parent a19e54f commit 7552867

File tree

6 files changed

+13
-3
lines changed

6 files changed

+13
-3
lines changed

config/nativephp.php

+1
Original file line numberDiff line numberDiff line change
@@ -141,6 +141,7 @@
141141
'queues' => ['default'],
142142
'memory_limit' => 128,
143143
'timeout' => 60,
144+
'sleep' => 3,
144145
],
145146
],
146147

src/DTOs/QueueConfig.php

+2
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ public function __construct(
1212
public readonly array $queuesToConsume,
1313
public readonly int $memoryLimit,
1414
public readonly int $timeout,
15+
public readonly int $sleep,
1516
) {}
1617

1718
/**
@@ -26,6 +27,7 @@ function (array|string $worker, string $alias) {
2627
$worker['queues'] ?? ['default'],
2728
$worker['memory_limit'] ?? 128,
2829
$worker['timeout'] ?? 60,
30+
$worker['sleep'] ?? 3,
2931
);
3032
},
3133
$config,

src/QueueWorker.php

+1
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ public function up(string|QueueConfig $config): void
3131
'--queue='.implode(',', $config->queuesToConsume),
3232
"--memory={$config->memoryLimit}",
3333
"--timeout={$config->timeout}",
34+
"--sleep={$config->sleep}",
3435
],
3536
'queue_'.$config->alias,
3637
persistent: true,

tests/DTOs/QueueWorkerTest.php

+5
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,8 @@
2121
fn (QueueConfig $config) => $config->alias === $worker)))->memoryLimit->toBe(128);
2222
expect(Arr::first(array_filter($configObject,
2323
fn (QueueConfig $config) => $config->alias === $worker)))->timeout->toBe(60);
24+
expect(Arr::first(array_filter($configObject,
25+
fn (QueueConfig $config) => $config->alias === $worker)))->sleep->toBe(3);
2426

2527
continue;
2628
}
@@ -35,6 +37,8 @@
3537
fn (QueueConfig $config) => $config->alias === $alias)))->memoryLimit->toBe($worker['memory_limit'] ?? 128);
3638
expect(Arr::first(array_filter($configObject,
3739
fn (QueueConfig $config) => $config->alias === $alias)))->timeout->toBe($worker['timeout'] ?? 60);
40+
expect(Arr::first(array_filter($configObject,
41+
fn (QueueConfig $config) => $config->alias === $alias)))->sleep->toBe($worker['sleep'] ?? 3);
3842
}
3943
})->with([
4044
[
@@ -44,6 +48,7 @@
4448
'queues' => ['default'],
4549
'memory_limit' => 64,
4650
'timeout' => 60,
51+
'sleep' => 3,
4752
],
4853
],
4954
],

tests/Fakes/FakeQueueWorkerTest.php

+2-2
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,8 @@
1717
it('asserts up using callable', function () {
1818
swap(QueueWorkerContract::class, $fake = app(QueueWorkerFake::class));
1919

20-
$fake->up(new QueueConfig('testA', ['default'], 123, 123));
21-
$fake->up(new QueueConfig('testB', ['default'], 123, 123));
20+
$fake->up(new QueueConfig('testA', ['default'], 123, 123, 0));
21+
$fake->up(new QueueConfig('testB', ['default'], 123, 123, 0));
2222

2323
$fake->assertUp(fn (QueueConfig $up) => $up->alias === 'testA');
2424
$fake->assertUp(fn (QueueConfig $up) => $up->alias === 'testB');

tests/QueueWorker/QueueWorkerTest.php

+2-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99

1010
$workerName = 'some_worker';
1111

12-
$config = new QueueConfig($workerName, ['default'], 128, 61);
12+
$config = new QueueConfig($workerName, ['default'], 128, 61, 5);
1313

1414
QueueWorker::up($config);
1515

@@ -20,6 +20,7 @@
2020
'--queue=default',
2121
'--memory=128',
2222
'--timeout=61',
23+
'--sleep=5',
2324
]);
2425

2526
expect($iniSettings)->toBe([

0 commit comments

Comments
 (0)