spiderling-php/phpunit-matches-selector

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

Installs: 161

Dependents: 2

Suggesters: 0

Security: 0

Stars: 0

Watchers: 1

Forks: 0

Open Issues: 0

pkg:composer/spiderling-php/phpunit-matches-selector

0.2.0 2015-09-18 07:22 UTC

This package is not auto-updated.

Last update: 2025-10-12 00:09:49 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.