12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- <?php
- namespace Faker\Test\Provider\sv_SE;
- use Faker\Calculator\Luhn;
- use Faker\Generator;
- use Faker\Provider\sv_SE\Person;
- class PersonTest extends \PHPUnit_Framework_TestCase
- {
- /** @var Generator */
- protected $faker;
- public function setUp()
- {
- $faker = new Generator();
- $faker->addProvider(new Person($faker));
- $this->faker = $faker;
- }
- public function provideSeedAndExpectedReturn()
- {
- return array(
- array(1, '720727', '720727-5798'),
- array(2, '710414', '710414-5664'),
- array(3, '591012', '591012-4519'),
- array(4, '180307', '180307-0356'),
- array(5, '820904', '820904-7748')
- );
- }
- /**
- * @dataProvider provideSeedAndExpectedReturn
- */
- public function testPersonalIdentityNumberUsesBirthDateIfProvided($seed, $birthdate, $expected)
- {
- $faker = $this->faker;
- $faker->seed($seed);
- $pin = $faker->personalIdentityNumber(\DateTime::createFromFormat('ymd', $birthdate));
- $this->assertEquals($expected, $pin);
- }
- public function testPersonalIdentityNumberGeneratesLuhnCompliantNumbers()
- {
- $pin = str_replace('-', '', $this->faker->personalIdentityNumber());
- $this->assertTrue(Luhn::isValid($pin));
- }
- public function testPersonalIdentityNumberGeneratesOddValuesForMales()
- {
- $pin = $this->faker->personalIdentityNumber(null, 'male');
- $this->assertEquals(1, $pin{9} % 2);
- }
- public function testPersonalIdentityNumberGeneratesEvenValuesForFemales()
- {
- $pin = $this->faker->personalIdentityNumber(null, 'female');
- $this->assertEquals(0, $pin{9} % 2);
- }
- }
|