- Implement AdminDomainOrderTest to cover admin functionalities for domain orders including listing, confirming registration, KYC updates, activation, rejection, and refunds. - Implement ClientDomainOrderTest to cover client functionalities for placing domain orders, including validation for balance, duplicate orders, and domain normalization. - Ensure proper handling of domain pricing and service statuses throughout the tests.
41 lines
1.3 KiB
PHP
41 lines
1.3 KiB
PHP
<?php
|
|
|
|
namespace Database\Factories;
|
|
|
|
use Illuminate\Database\Eloquent\Factories\Factory;
|
|
use Illuminate\Support\Facades\DB;
|
|
use Illuminate\Support\Str;
|
|
|
|
/**
|
|
* @extends \Illuminate\Database\Eloquent\Factories\Factory<\App\Models\Product>
|
|
*/
|
|
class ProductFactory extends Factory
|
|
{
|
|
public function definition(): array
|
|
{
|
|
$slug = Str::slug($this->faker->unique()->words(3, true));
|
|
|
|
$categoryId = DB::table('product_categories')->insertGetId([
|
|
'name' => 'Test Category ' . $this->faker->unique()->numberBetween(1, 9999),
|
|
'slug' => 'cat-' . $slug,
|
|
'type' => null, // null so boot() hook does not override product_type
|
|
'is_active' => true,
|
|
'sort_order' => 0,
|
|
'created_at' => now(),
|
|
'updated_at' => now(),
|
|
]);
|
|
|
|
return [
|
|
'product_categories_id' => $categoryId,
|
|
'product_type' => 'domain',
|
|
'name' => $this->faker->unique()->words(2, true),
|
|
'slug' => $slug,
|
|
'is_active' => true,
|
|
'is_unlimited' => true,
|
|
'setup_fee' => 0,
|
|
'trial_days' => 0,
|
|
'sort_order' => 0,
|
|
];
|
|
}
|
|
}
|