Skip to content

villfa/phpunit-extra-constraints

Repository files navigation

PHPUnit Extra Constraints

Build Status AppVeyor Build Status Quality Gate Status Latest Stable Version Minimum PHP Version License PDS Skeleton

Installation

composer require --dev villfa/phpunit-extra-constraints

Usage

Here a basic example:

<?php
require_once 'vendor/autoload.php';

use PHPUnitExtraConstraints\Constraint\IsDate;

class ExampleTest extends PHPUnit\Framework\TestCase
{
    public function testDate(): void
    {
        $this->assertThat('2020-04-02', new IsDate('Y-m-d'));
    }
}

Available extra constraints

  • IsDate: asserts that a string is a valid date according a given format
  • IsEmail: asserts that a string contains only an email address
  • IsJSON: asserts that the value is a decodable JSON string
  • IsList: asserts that the value is a sequential list
  • IsURL: asserts that a string contains only an URL
  • StringEndsWith: asserts that a string ends with another string
  • StringStartsWith: asserts that a string starts with another string

Tests

To validate and test the library:

composer run-script test

License

MIT

Other libraries proposing extra constraints