WordPress.org

Make WordPress Core

Changeset 1012 in tests


Ignore:
Timestamp:
09/10/12 16:21:26 (19 months ago)
Author:
ryan
Message:

wp_kses_allowed_html() tests. see #WP20210

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/tests/kses.php

    r1010 r1012  
    296296        } 
    297297    } 
     298 
     299    public function test_wp_kses_allowed_html() { 
     300        global $allowedposttags, $allowedtags, $allowedentitynames; 
     301 
     302        $this->assertEquals( $allowedposttags, wp_kses_allowed_html( 'post' ) ); 
     303 
     304        $tags = wp_kses_allowed_html( 'post' ) ; 
     305 
     306        foreach ( $tags as $tag ) { 
     307            $this->assertTrue( $tag['class'] ); 
     308            $this->assertTrue( $tag['id'] ); 
     309            $this->assertTrue( $tag['style'] ); 
     310            $this->assertTrue( $tag['title'] ); 
     311        } 
     312 
     313        $this->assertEquals( $allowedtags, wp_kses_allowed_html( 'data' ) ); 
     314        $this->assertEquals( $allowedtags, wp_kses_allowed_html( '' ) ); 
     315        $this->assertEquals( $allowedtags, wp_kses_allowed_html() ); 
     316 
     317        $tags = wp_kses_allowed_html( 'user_description' ); 
     318        $this->assertTrue( $tags['a']['rel'] ); 
     319 
     320        $tags = wp_kses_allowed_html(); 
     321        $this->assertFalse( isset( $tags['a']['rel'] ) ); 
     322 
     323        $this->assertEquals( array(), wp_kses_allowed_html( 'strip' ) ); 
     324 
     325        $custom_tags = array( 
     326            'a' => array( 
     327                'href' => true, 
     328                'rel' => true, 
     329                'rev' => true, 
     330                'name' => true, 
     331                'target' => true, 
     332            ), 
     333        ); 
     334 
     335        $this->assertEquals( $custom_tags, wp_kses_allowed_html( $custom_tags ) ); 
     336 
     337        $cb = function ( $html, $context ) { 
     338            if ( 'post' == $context ) 
     339                return array( 'a' => array( 'href' => true ) ); 
     340            else 
     341                return array( 'a' => array( 'href' => false ) ); 
     342        }; 
     343 
     344        add_filter( 'wp_kses_allowed_html', $cb, 10, 2 ); 
     345 
     346        $this->assertEquals( array( 'a' => array( 'href' => true ) ), wp_kses_allowed_html( 'post' ) ); 
     347        $this->assertEquals( array( 'a' => array( 'href' => false ) ), wp_kses_allowed_html( 'data' ) ); 
     348 
     349        remove_filter( 'wp_kses_allowed_html', $cb ); 
     350        $this->assertEquals( $allowedposttags, wp_kses_allowed_html( 'post' ) ); 
     351        $this->assertEquals( $allowedtags, wp_kses_allowed_html( 'data' ) ); 
     352    } 
    298353} 
Note: See TracChangeset for help on using the changeset viewer.