| 542 | |
| 543 | protected $state = 0; |
| 544 | |
| 545 | function _short1_tag( $atts, $content ) { |
| 546 | $this->state++; |
| 547 | return do_shortcode( $content ); |
| 548 | } |
| 549 | |
| 550 | function _short2_tag( $atts, $content ) { |
| 551 | return $this->state; |
| 552 | } |
| 553 | |
| 554 | /** |
| 555 | * @ticket 33134 |
| 556 | */ |
| 557 | function test_nested_left_to_right() { |
| 558 | add_shortcode( 'short1', array( $this, '_short1_tag' ) ); |
| 559 | add_shortcode( 'short2', array( $this, '_short2_tag' ) ); |
| 560 | $content = '<a [short2]>[short2]</a>'; |
| 561 | $this->assertEquals( '<a 0>0</a>', wp_placeholder_restore( do_shortcode( wp_placeholder_shortcodes( $content ) ) ) ); |
| 562 | $content = '[short1]<a [short2]>[short2]</a>[/short1]'; |
| 563 | $this->assertEquals( '<a 1>1</a>', wp_placeholder_restore( do_shortcode( wp_placeholder_shortcodes( $content ) ) ) ); |
| 564 | remove_shortcode( 'short2' ); |
| 565 | remove_shortcode( 'short1' ); |
| 566 | } |