Migrate tests/unit/Integrations folder to WordPress Coding Standard

[MAILPOET-6240]
This commit is contained in:
Jan Lysý
2024-11-04 12:10:19 +01:00
committed by Jan Lysý
parent 906e80a6d7
commit d0f8d6f83e

View File

@@ -1,45 +1,66 @@
<?php declare(strict_types = 1); <?php
/**
* This file is part of the MailPoet plugin.
*
* @package MailPoet\EmailEditor
*/
declare(strict_types = 1);
namespace MailPoet\EmailEditor\Integrations\Utils; namespace MailPoet\EmailEditor\Integrations\Utils;
/**
* Unit test for Dom_Document_Helper class.
*/
class Dom_Document_Helper_Test extends \MailPoetUnitTest { class Dom_Document_Helper_Test extends \MailPoetUnitTest {
/**
* Test if finds element.
*/
public function testItFindsElement(): void { public function testItFindsElement(): void {
$html = '<div><p>Some text</p></div>'; $html = '<div><p>Some text</p></div>';
$domDocumentHelper = new Dom_Document_Helper( $html ); $dom_document_helper = new Dom_Document_Helper( $html );
$element = $domDocumentHelper->find_element( 'p' ); $element = $dom_document_helper->find_element( 'p' );
$empty = $domDocumentHelper->find_element( 'span' ); $empty = $dom_document_helper->find_element( 'span' );
$this->assertInstanceOf( \DOMElement::class, $element ); $this->assertInstanceOf( \DOMElement::class, $element );
$this->assertEquals( 'p', $element->tagName ); $this->assertEquals( 'p', $element->tagName ); // phpcs:ignore WordPress.NamingConventions.ValidVariableName.UsedPropertyNotSnakeCase
$this->assertNull( $empty ); $this->assertNull( $empty );
} }
/**
* Test it gets attribute value.
*/
public function testItGetsAttributeValue(): void { public function testItGetsAttributeValue(): void {
$html = '<div><p class="some-class">Some text</p></div>'; $html = '<div><p class="some-class">Some text</p></div>';
$domDocumentHelper = new Dom_Document_Helper( $html ); $dom_document_helper = new Dom_Document_Helper( $html );
$element = $domDocumentHelper->find_element( 'p' ); $element = $dom_document_helper->find_element( 'p' );
$this->assertInstanceOf( \DOMElement::class, $element ); $this->assertInstanceOf( \DOMElement::class, $element );
$this->assertEquals( 'some-class', $domDocumentHelper->get_attribute_value( $element, 'class' ) ); $this->assertEquals( 'some-class', $dom_document_helper->get_attribute_value( $element, 'class' ) );
} }
/**
* Test it gets outer html.
*/
public function testItGetsOuterHtml(): void { public function testItGetsOuterHtml(): void {
$html = '<div><span>Some <strong>text</strong></span></div>'; $html = '<div><span>Some <strong>text</strong></span></div>';
$domDocumentHelper = new Dom_Document_Helper( $html ); $dom_document_helper = new Dom_Document_Helper( $html );
$element = $domDocumentHelper->find_element( 'span' ); $element = $dom_document_helper->find_element( 'span' );
$this->assertInstanceOf( \DOMElement::class, $element ); $this->assertInstanceOf( \DOMElement::class, $element );
$this->assertEquals( '<span>Some <strong>text</strong></span>', $domDocumentHelper->get_outer_html( $element ) ); $this->assertEquals( '<span>Some <strong>text</strong></span>', $dom_document_helper->get_outer_html( $element ) );
// testings encoding of special characters // testings encoding of special characters.
$html = '<div><img src="https://test.com/DALL·E-A®∑oecasƒ-803x1024.jpg"></div>'; $html = '<div><img src="https://test.com/DALL·E-A®∑oecasƒ-803x1024.jpg"></div>';
$domDocumentHelper = new Dom_Document_Helper( $html ); $dom_document_helper = new Dom_Document_Helper( $html );
$element = $domDocumentHelper->find_element( 'img' ); $element = $dom_document_helper->find_element( 'img' );
$this->assertInstanceOf( \DOMElement::class, $element ); $this->assertInstanceOf( \DOMElement::class, $element );
$this->assertEquals( '<img src="https://test.com/DALL%C2%B7E-A%C2%AE%E2%88%91oecas%C6%92-803x1024.jpg">', $domDocumentHelper->get_outer_html( $element ) ); $this->assertEquals( '<img src="https://test.com/DALL%C2%B7E-A%C2%AE%E2%88%91oecas%C6%92-803x1024.jpg">', $dom_document_helper->get_outer_html( $element ) );
} }
/**
* Test it gets element attribute value by tag name.
*/
public function testItGetsAttributeValueByTagName(): void { public function testItGetsAttributeValueByTagName(): void {
$html = '<div><p class="some-class">Some text</p><p class="second-paragraph"></p></div>'; $html = '<div><p class="some-class">Some text</p><p class="second-paragraph"></p></div>';
$domDocumentHelper = new Dom_Document_Helper( $html ); $dom_document_helper = new Dom_Document_Helper( $html );
$this->assertEquals( 'some-class', $domDocumentHelper->get_attribute_value_by_tag_name( 'p', 'class' ) ); $this->assertEquals( 'some-class', $dom_document_helper->get_attribute_value_by_tag_name( 'p', 'class' ) );
$this->assertNull( $domDocumentHelper->get_attribute_value_by_tag_name( 'span', 'class' ) ); $this->assertNull( $dom_document_helper->get_attribute_value_by_tag_name( 'span', 'class' ) );
} }
} }