widgets.php 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. <?php
  2. /**
  3. * Test widget template tags
  4. *
  5. * @group widgets
  6. */
  7. class Tests_Widgets extends WP_UnitTestCase {
  8. function test_register_widget_core_widget() {
  9. global $wp_widget_factory;
  10. unregister_widget( 'WP_Widget_Search' );
  11. register_widget( 'WP_Widget_Search' );
  12. $this->assertTrue( isset( $wp_widget_factory->widgets['WP_Widget_Search'] ) );
  13. }
  14. function test_unregister_widget_core_widget() {
  15. global $wp_widget_factory;
  16. unregister_widget( 'WP_Widget_Search' );
  17. $this->assertFalse( isset( $wp_widget_factory->widgets['WP_Widget_Search'] ) );
  18. }
  19. function test_register_sidebars_single() {
  20. global $wp_registered_sidebars;
  21. register_sidebars( 1, array( 'id' => 'wp-unit-test' ) );
  22. $this->assertTrue( isset( $wp_registered_sidebars['wp-unit-test'] ) );
  23. }
  24. function test_register_sidebars_multiple() {
  25. global $wp_registered_sidebars;
  26. $num = 3;
  27. $id_base = 'WP Unit Test';
  28. register_sidebars( $num, array( 'name' => $id_base . ' %d' ) );
  29. $names = wp_list_pluck( $wp_registered_sidebars, 'name' );
  30. for ( $i = 1; $i <= $num; $i++ ) {
  31. if ( in_array( "$id_base $i", $names ) )
  32. $result[] = true;
  33. }
  34. $this->assertEquals( $num, count( $result ) );
  35. }
  36. function test_register_sidebar() {
  37. global $wp_registered_sidebars;
  38. register_sidebar( array( 'id' => 'wp-unit-test' ) );
  39. $this->assertTrue( isset( $wp_registered_sidebars['wp-unit-test'] ) );
  40. }
  41. function test_unregister_sidebar() {
  42. global $wp_registered_sidebars;
  43. unregister_sidebar( 'sidebar-1' );
  44. $this->assertFalse( isset( $wp_registered_sidebars['sidebar-1'] ) );
  45. }
  46. }