1
0
Fork 0
mirror of https://github.com/archtechx/tenancy.git synced 2026-02-05 19:14:03 +00:00

Allow using only one time constraint for clearing the pending tenants

This commit is contained in:
lukinovec 2022-07-28 09:42:47 +02:00
parent 6766237669
commit 2faf9e8683
2 changed files with 20 additions and 3 deletions

View file

@ -31,7 +31,7 @@ class ClearPendingTenants extends Command
*/
public function handle()
{
$this->info('Cleaning pending tenants.');
$this->info('Removing pending tenants.');
$expirationDate = now();
// We compare the original expiration date to the new one to check if the new one is different later
@ -39,11 +39,21 @@ class ClearPendingTenants extends Command
// Skip the time constraints if the 'all' option is given
if (! $this->option('all')) {
if ($olderThanDays = $this->option('older-than-days')) {
$olderThanDays = $this->option('older-than-days');
$olderThanHours = $this->option('older-than-hours');
if ($olderThanDays && $olderThanHours) {
$this->line("<options=bold,reverse;fg=red> Cannot use '--older-than-days' and '--older-than-hours' together \n");
$this->line('Please, choose only one of these options.');
return 1; // Exit code for failure
}
if ($olderThanDays) {
$expirationDate->subDays($olderThanDays);
}
if ($olderThanHours = $this->option('older-than-hours')) {
if ($olderThanHours) {
$expirationDate->subHours($olderThanHours);
}
}

View file

@ -81,6 +81,13 @@ class PendingTenantsTest extends TestCase
$this->assertCount(1, Tenant::onlyPending()->get());
}
/** @test */
public function clear_pending_tenants_command_cannot_run_with_both_time_constraints()
{
$this->artisan('tenants:pending-clear --older-than-days=2 --older-than-hours=2')
->assertFailed();
}
/** @test */
public function clear_pending_tenants_command_all_option_overrides_config()
{