You are here

class CardNumberTest in Creditfield Form Element 8

@coversDefaultClass \Drupal\creditfield\Element\CardNumber @group creditfield

Hierarchy

Expanded class hierarchy of CardNumberTest

File

tests/src/Unit/Element/CardNumberTest.php, line 12

Namespace

Drupal\Tests\creditfield\Unit\Element
View source
class CardNumberTest extends UnitTestCase {

  /**
   * @covers ::numberIsValid
   * @dataProvider providerValidCardNumbers
   */
  public function testGoodNumberValidation($number) {
    $this
      ->assertTrue(CardNumber::numberIsValid($number), 'Number "' . $number . '" should have passed validation, but did not.');
  }

  /**
   * @covers ::numberIsValid
   * @dataProvider providerInvalidCardNumbers
   */
  public function testBadNumberValidation($number) {
    $this
      ->assertFalse(CardNumber::numberIsValid($number), 'Number "' . $number . '" should not have passed validation, but did.');
  }

  /**
   * Data provider of valid test numbers. Includes variants that should pass validation.
   * @return array
   */
  public function providerValidCardNumbers() {
    return [
      [
        '4242424242424242',
      ],
      [
        '4012888888881881',
      ],
      [
        '4000056655665556',
      ],
      [
        '5555555555554444',
      ],
      [
        '5200828282828210',
      ],
      [
        '5105105105105100',
      ],
      [
        '378282246310005',
      ],
      [
        '371449635398431',
      ],
      [
        '6011111111111117',
      ],
      [
        '6011000990139424',
      ],
      [
        '30569309025904',
      ],
      [
        '38520000023237',
      ],
      [
        '3530111333300000',
      ],
      [
        '3566002020360505',
      ],
    ];
  }

  /**
   * Data provider of valid test numbers. Includes variants that should fail, like negative numbers, alphanumeric characters, values that are too short, or too long.
   * @return array
   */
  public function providerInvalidCardNumbers() {
    return [
      [
        '424224242',
      ],
      [
        '4012888888881881445353',
      ],
      [
        '-4242424242424242',
      ],
      [
        '40128888.10',
      ],
      [
        '4242aBcD24244242',
      ],
      [
        'ABCDEFGHIJKL',
      ],
      [
        '1234828282828210',
      ],
      [
        '',
      ],
    ];
  }

}

Members

Namesort descending Modifiers Type Description Overrides
CardNumberTest::providerInvalidCardNumbers public function Data provider of valid test numbers. Includes variants that should fail, like negative numbers, alphanumeric characters, values that are too short, or too long.
CardNumberTest::providerValidCardNumbers public function Data provider of valid test numbers. Includes variants that should pass validation.
CardNumberTest::testBadNumberValidation public function @covers ::numberIsValid @dataProvider providerInvalidCardNumbers
CardNumberTest::testGoodNumberValidation public function @covers ::numberIsValid @dataProvider providerValidCardNumbers
PhpunitCompatibilityTrait::getMock Deprecated public function Returns a mock object for the specified class using the available method.
PhpunitCompatibilityTrait::setExpectedException Deprecated public function Compatibility layer for PHPUnit 6 to support PHPUnit 4 code.
UnitTestCase::$randomGenerator protected property The random generator.
UnitTestCase::$root protected property The app root. 1
UnitTestCase::assertArrayEquals protected function Asserts if two arrays are equal by sorting them first.
UnitTestCase::getBlockMockWithMachineName Deprecated protected function Mocks a block with a block plugin. 1
UnitTestCase::getClassResolverStub protected function Returns a stub class resolver.
UnitTestCase::getConfigFactoryStub public function Returns a stub config factory that behaves according to the passed array.
UnitTestCase::getConfigStorageStub public function Returns a stub config storage that returns the supplied configuration.
UnitTestCase::getContainerWithCacheTagsInvalidator protected function Sets up a container with a cache tags invalidator.
UnitTestCase::getRandomGenerator protected function Gets the random generator for the utility methods.
UnitTestCase::getStringTranslationStub public function Returns a stub translation manager that just returns the passed string.
UnitTestCase::randomMachineName public function Generates a unique random string containing letters and numbers.
UnitTestCase::setUp protected function 340