Вход Регистрация
Файл: src/vendor/fzaninotto/faker/test/Faker/Provider/sv_SE/PersonTest.php
Строк: 63
<?php

namespace FakerTestProvidersv_SE;

use 
FakerCalculatorLuhn;
use 
FakerGenerator;
use 
FakerProvidersv_SEPerson;

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);
    }
}
Онлайн: 3
Реклама