insert([ 'id' => 20, 'firstname' => 'Old', 'lastname' => 'User', 'email' => 'old@example.com', 'status' => 'Inactive', 'is_verified' => 0, 'created_at' => now()->subDays(2), 'updated_at' => now()->subDays(2), ]); DB::table('users')->insert([ 'id' => 21, 'firstname' => 'Recent', 'lastname' => 'User', 'email' => 'recent@example.com', 'status' => 'Inactive', 'is_verified' => 0, 'created_at' => now(), 'updated_at' => now(), ]); Event::fake(); $this->artisan('users:delete-unverified', ['--timeout' => 3600])->assertExitCode(0); Event::assertDispatched(DeleteUnverifiedUser::class, function ($event) { return $event->userId === 20; }); Event::assertNotDispatched(DeleteUnverifiedUser::class, function ($event) { return $event->userId === 21; }); } }