Make WordPress Core

Changeset 40447


Ignore:
Timestamp:
04/15/2017 08:07:52 PM (8 years ago)
Author:
johnbillion
Message:

assertTag() has been deprecated in PHPUnit 4.2. Rewrite some of the tests in Tests_Paginate_Links to use DOMDocument.

See #29545.

Merges [29746] to the 4.0 branch.

Location:
branches/4.0
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/4.0

  • branches/4.0/tests/phpunit/tests/general/paginateLinks.php

    r28785 r40447  
    125125        ) );
    126126
    127         // It's supposed to link to page 1:
    128         $this->assertTag( array( 'tag' => 'a', 'attributes' => array( 'href' => 'http://' . WP_TESTS_DOMAIN . '/' ) ), $links[0] );
    129         $this->assertTag( array( 'tag' => 'a', 'attributes' => array( 'href' => 'http://' . WP_TESTS_DOMAIN . '/' ) ), $links[1] );
     127        $expected_attributes = array(
     128            array(
     129                'href'  => 'http://' . WP_TESTS_DOMAIN . '/',
     130                'class' => 'prev page-numbers'
     131            ),
     132            array(
     133                'href'  => 'http://' . WP_TESTS_DOMAIN . '/',
     134                'class' => 'page-numbers'
     135            )
     136        );
    130137
    131         // It's not supposed to have an empty href.
    132         $this->assertNotTag( array( 'tag' => 'a', 'attributes' => array( 'class' => 'prev page-numbers', 'href' => '' ) ), $links[0] );
    133         $this->assertNotTag( array( 'tag' => 'a', 'attributes' => array( 'class' => 'page-numbers',      'href' => '' ) ), $links[1] );
     138        $document = new DOMDocument();
     139        $document->preserveWhiteSpace = false;
     140
     141        // The first two links should link to page 1
     142        foreach ( $expected_attributes as $link_idx => $attributes ) {
     143
     144            $document->loadHTML( $links[$link_idx] );
     145            $tag = $document->getElementsByTagName( 'a' )->item( 0 );
     146
     147            $this->assertNotNull( $tag );
     148
     149            $href  = $tag->attributes->getNamedItem( 'href' )->value;
     150            $class = $tag->attributes->getNamedItem( 'class' )->value;
     151
     152            $this->assertEquals( $attributes['href'], $href );
     153            $this->assertEquals( $attributes['class'], $class );
     154        }
    134155
    135156        // Current page: 1
     
    142163        ) );
    143164
    144         $this->assertTag( array( 'tag' => 'span', 'attributes' => array( 'class' => 'current' ) ), $links[0] );
    145         $this->assertTag( array( 'tag' => 'a',    'attributes' => array( 'href' => get_pagenum_link( 2 ) ) ), $links[1] );
     165        $document->loadHTML( $links[0] );
     166        $tag = $document->getElementsByTagName( 'span' )->item( 0 );
     167        $this->assertNotNull( $tag );
     168
     169        $class = $tag->attributes->getNamedItem( 'class' )->value;
     170        $this->assertEquals( 'page-numbers current', $class );
     171
     172        $document->loadHTML( $links[1] );
     173        $tag = $document->getElementsByTagName( 'a' )->item( 0 );
     174        $this->assertNotNull( $tag );
     175
     176        $href = $tag->attributes->getNamedItem( 'href' )->value;
     177        $this->assertEquals( get_pagenum_link( 2 ), $href );
    146178    }
    147179
Note: See TracChangeset for help on using the changeset viewer.