sapalymahabat/vendor/dms/phpunit-arraysubset-asserts
Shohrat 63f1adb70d api 2023-02-15 20:52:41 +05:00
..
.github api 2023-02-15 20:52:41 +05:00
src api 2023-02-15 20:52:41 +05:00
tests/Unit api 2023-02-15 20:52:41 +05:00
.gitignore api 2023-02-15 20:52:41 +05:00
LICENSE api 2023-02-15 20:52:41 +05:00
README.md api 2023-02-15 20:52:41 +05:00
composer.json api 2023-02-15 20:52:41 +05:00
composer.lock api 2023-02-15 20:52:41 +05:00
phpcs.xml.dist api 2023-02-15 20:52:41 +05:00
phpunit.xml.dist api 2023-02-15 20:52:41 +05:00

README.md

PHPUnit AssertArraySubset Extension

In PHPUnit 8 the function assertArraySubset was deprecated. This function was often misunderstood and thus removed, but it still holds true as a very useful tool, hence it was extracted here.

Disclaimer: The initial version contained here is copied over from phpunit and is heavily based on the original work by Márcio Almada.

Installation

Simply use it by importing it with Composer

composer require --dev dms/phpunit-arraysubset-asserts

Usage

You have two options to use this in your classes: either directly as a static call or as a trait if you wish to keep existing references working.

<?php
declare(strict_types=1);

namespace DMS\Tests;

use DMS\PHPUnitExtensions\ArraySubset\Assert;
use DMS\PHPUnitExtensions\ArraySubset\ArraySubsetAsserts;
use PHPUnit\Framework\TestCase;


final class AssertTest extends TestCase
{
    use ArraySubsetAsserts;
    
    public function testWithTrait(): void
    {
        $expectedSubset = ['bar' => 0];

        $content = ['bar' => '0'];

        self::assertArraySubset($expectedSubset, $content, true);
    }

    public function testWithDirectCall(): void
    {
        $expectedSubset = ['bar' => 0];

        $content = ['bar' => '0'];

        Assert::assertArraySubset($expectedSubset, $content, true);
    }
}