1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82
|
<?php
namespace Faker\Test\Calculator;
use Faker\Calculator\Ean;
use Faker\Test\TestCase;
final class EanTest extends TestCase
{
public function Ean8checksumProvider()
{
return [
['1234567', 0],
['2345678', 5],
['3456789', 0],
];
}
public function ean8ValidationProvider()
{
return [
['1234567891231', true],
['2354698521469', true],
['3001092650834', false],
['3921092190838', false],
['39210921908381', false],
];
}
/**
* @dataProvider Ean8checksumProvider
*/
public function testChecksumEan8($partial, $checksum)
{
self::assertSame($checksum, Ean::checksum($partial));
}
/**
* @dataProvider ean8ValidationProvider
*/
public function testEan8Validation($ean8, $valid)
{
self::assertSame($valid, Ean::isValid($ean8));
}
public function Ean13checksumProvider()
{
return [
['123456789123', 1],
['978020137962', 4],
['235469852146', 9],
['300109265083', 5],
['392109219083', 7],
];
}
public function ean13ValidationProvider()
{
return [
['1234567891231', true],
['2354698521469', true],
['3001092650834', false],
['3921092190838', false],
];
}
/**
* @dataProvider Ean13checksumProvider
*/
public function testChecksumEan13($partial, $checksum)
{
self::assertSame($checksum, Ean::checksum($partial));
}
/**
* @dataProvider ean13ValidationProvider
*/
public function testEan13Validation($ean13, $valid)
{
self::assertSame($valid, Ean::isValid($ean13));
}
}
|