spiderling-php/phpunit-matches-selector

PHPUnit extension for asserting if a dom element matches a given css selector

0.2.0 2015-09-18 07:22 UTC

This package is not auto-updated.

Last update: 2024-03-16 16:10:09 UTC


README

Build Status Scrutinizer Code Quality Code Coverage Latest Stable Version

PHPUnit extension for asserting if a dom element matches a given css selector

Installation

Install via composer

composer require --dev spiderling-php/phpunit-matches-selector

Since it is meant as an extension for your tests, all the requirements are in require-dev. PHPUnit requirement is not explicitly stated as its assumed you will need it anyway to use in your tests.

Usage

This extension allows to check if a DOMElement matches a particular css selector

use SP\PhpunitDomConstraints\DomConstraintsTrait;
use PHPUnit_Framework_TestCase;

class TestCaseTest extends PHPUnit_Framework_TestCase
{
    use DomConstraintsTrait;

    public function testTest()
    {
        $document = new DOMDocument();
        $document->load('Some file');

        $element = $document->getElementById('some id');

        // Here is the test you can now perform
        $this->assertMatchesSelector('div.some-class', $element, 'This should match');

        // You can do even more complex selects
        $this->assertMatchesSelector('ul li > #test.some-class[disabled]', $element, 'This should match');
    }
}

License

Copyright (c) 2015, Clippings Ltd. Developed by Ivan Kerin

Under BSD-3-Clause license, read LICENSE file.