/** * @link https://github.com/fzaninotto/Faker/issues/265 */ public function testOptionalPercentageAndWeight() { $faker = new \Faker\Generator(); $faker->addProvider(new \Faker\Provider\Base($faker)); $faker->addProvider(new \Faker\Provider\Miscellaneous($faker)); $valuesOld = array(); $valuesNew = array(); for ($i = 0; $i < 10000; ++$i) { $valuesOld[] = $faker->optional(0.5)->boolean(100); $valuesNew[] = $faker->optional(50)->boolean(100); } $this->assertEquals(round(array_sum($valuesOld) / 10000, 2), round(array_sum($valuesNew) / 10000, 2)); }
public function testOptionalAllowsChainingProviderCallRandomlyReturnNull() { $faker = new \Faker\Generator(); $faker->addProvider(new \Faker\Provider\Base($faker)); $values = array(); for ($i = 0; $i < 10; $i++) { $values[] = $faker->optional()->randomDigit; } $this->assertContains(null, $values); }