Core/tests/Traits/FakeDataTrait.php

37 lines
1.1 KiB
PHP

<?php
declare(strict_types=1);
namespace Benzine\Tests\Traits;
use Faker\Factory as FakerFactory;
use Faker\Generator;
use Faker\Provider;
trait FakeDataTrait
{
/** @var Generator */
protected static $faker;
public static function setUpBeforeClass(): void
{
self::$faker = FakerFactory::create();
self::$faker->addProvider(new Provider\Base(self::$faker));
self::$faker->addProvider(new Provider\DateTime(self::$faker));
self::$faker->addProvider(new Provider\Lorem(self::$faker));
self::$faker->addProvider(new Provider\Internet(self::$faker));
self::$faker->addProvider(new Provider\Payment(self::$faker));
self::$faker->addProvider(new Provider\en_US\Person(self::$faker));
self::$faker->addProvider(new Provider\en_US\Address(self::$faker));
self::$faker->addProvider(new Provider\en_US\PhoneNumber(self::$faker));
self::$faker->addProvider(new Provider\en_US\Company(self::$faker));
// Continue setup.
parent::setUpBeforeClass();
}
public function faker(): Generator
{
return self::$faker;
}
}