TenantAtlas/apps/platform/database/factories/WorkspaceSubscriptionFactory.php
ahmido 35b59eb628 274: Billing subscription truth - add workspace subscription model & tests (#326)
Automated PR: commit all local changes and add feature 274-billing-subscription-truth.

Co-authored-by: Ahmed Darrazi <ahmed.darrazi@live.de>
Reviewed-on: #326
2026-05-04 21:15:57 +00:00

35 lines
949 B
PHP

<?php
declare(strict_types=1);
namespace Database\Factories;
use App\Models\Workspace;
use App\Models\WorkspaceSubscription;
use Illuminate\Database\Eloquent\Factories\Factory;
/**
* @extends Factory<WorkspaceSubscription>
*/
class WorkspaceSubscriptionFactory extends Factory
{
protected $model = WorkspaceSubscription::class;
/**
* @return array<string, mixed>
*/
public function definition(): array
{
$periodStartsAt = now()->subDays(1)->startOfMinute();
return [
'workspace_id' => Workspace::factory(),
'state' => WorkspaceSubscription::STATE_ACTIVE,
'billing_reference' => 'sub_'.fake()->bothify('????##'),
'trial_ends_at' => null,
'current_period_starts_at' => $periodStartsAt,
'current_period_ends_at' => $periodStartsAt->copy()->addDays(30),
'status_reason' => 'Subscription is current.',
];
}
}