Changeset 42343 for trunk/tests/phpunit/tests/widgets.php
- Timestamp:
- 11/30/2017 11:09:33 PM (8 years ago)
- File:
-
- 1 edited
-
trunk/tests/phpunit/tests/widgets.php (modified) (37 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/tests/phpunit/tests/widgets.php
r41673 r42343 13 13 global $wp_widget_factory, $wp_registered_sidebars, $wp_registered_widgets, $wp_registered_widget_controls, $wp_registered_widget_updates; 14 14 15 $wp_registered_sidebars = array();16 $wp_registered_widgets = array();15 $wp_registered_sidebars = array(); 16 $wp_registered_widgets = array(); 17 17 $wp_registered_widget_controls = array(); 18 $wp_registered_widget_updates = array();19 $wp_widget_factory->widgets = array();18 $wp_registered_widget_updates = array(); 19 $wp_widget_factory->widgets = array(); 20 20 21 21 parent::clean_up_global_scope(); … … 56 56 $this->assertEmpty( $wp_registered_widgets ); 57 57 58 update_option( 'widget_search', array( 59 2 => array( 'title' => '' ), 60 '_multiwidget' => 1, 61 ) ); 62 update_option( 'widget_better_search', array( 63 3 => array( 'title' => '' ), 64 '_multiwidget' => 1, 65 ) ); 66 update_option( 'widget_best_search', array( 67 4 => array( 'title' => '' ), 68 '_multiwidget' => 1, 69 ) ); 58 update_option( 59 'widget_search', array( 60 2 => array( 'title' => '' ), 61 '_multiwidget' => 1, 62 ) 63 ); 64 update_option( 65 'widget_better_search', array( 66 3 => array( 'title' => '' ), 67 '_multiwidget' => 1, 68 ) 69 ); 70 update_option( 71 'widget_best_search', array( 72 4 => array( 'title' => '' ), 73 '_multiwidget' => 1, 74 ) 75 ); 70 76 71 77 register_widget( 'WP_Widget_Search' ); 72 78 $this->assertArrayHasKey( 'WP_Widget_Search', $wp_widget_factory->widgets ); 73 79 74 $widget_better_search = new WP_Widget_Search();75 $widget_better_search->id_base = 'better_search';76 $widget_better_search->name = 'Better Search';77 $widget_better_search->option_name = 'widget_' . $widget_better_search->id_base;80 $widget_better_search = new WP_Widget_Search(); 81 $widget_better_search->id_base = 'better_search'; 82 $widget_better_search->name = 'Better Search'; 83 $widget_better_search->option_name = 'widget_' . $widget_better_search->id_base; 78 84 $widget_better_search->widget_options['classname'] = 'widget_' . $widget_better_search->id_base; 79 $widget_better_search->control_options['id_base'] = $widget_better_search->id_base;85 $widget_better_search->control_options['id_base'] = $widget_better_search->id_base; 80 86 register_widget( $widget_better_search ); 81 87 $this->assertContains( $widget_better_search, $wp_widget_factory->widgets ); 82 88 83 $widget_best_search = new WP_Widget_Search();84 $widget_best_search->id_base = 'best_search';85 $widget_best_search->name = 'Best Search';86 $widget_best_search->option_name = 'widget_' . $widget_best_search->id_base;89 $widget_best_search = new WP_Widget_Search(); 90 $widget_best_search->id_base = 'best_search'; 91 $widget_best_search->name = 'Best Search'; 92 $widget_best_search->option_name = 'widget_' . $widget_best_search->id_base; 87 93 $widget_best_search->widget_options['classname'] = 'widget_' . $widget_best_search->id_base; 88 $widget_best_search->control_options['id_base'] = $widget_best_search->id_base;94 $widget_best_search->control_options['id_base'] = $widget_best_search->id_base; 89 95 register_widget( $widget_best_search ); 90 96 $this->assertContains( $widget_best_search, $wp_widget_factory->widgets ); … … 135 141 global $wp_registered_sidebars; 136 142 137 $result = array();138 $num = 3;143 $result = array(); 144 $num = 3; 139 145 $id_base = 'WP Unit Test'; 140 146 register_sidebars( $num, array( 'name' => $id_base . ' %d' ) ); … … 163 169 register_sidebar(); 164 170 165 $derived_sidebar_id = "sidebar-2"; // Number of sidebars in the global + 1.171 $derived_sidebar_id = 'sidebar-2'; // Number of sidebars in the global + 1. 166 172 167 173 $this->assertArrayHasKey( $derived_sidebar_id, $wp_registered_sidebars ); … … 180 186 register_sidebar(); 181 187 182 $derived_sidebar_id = "sidebar-2"; // Number of sidebars in the global + 1.188 $derived_sidebar_id = 'sidebar-2'; // Number of sidebars in the global + 1. 183 189 184 190 unregister_sidebar( $derived_sidebar_id ); … … 256 262 register_sidebar(); 257 263 258 $derived_sidebar_id = "sidebar-2"; // Number of sidebars in the global + 1.264 $derived_sidebar_id = 'sidebar-2'; // Number of sidebars in the global + 1. 259 265 260 266 add_action( 'dynamic_sidebar_before', array( $this, 'retrieve_sidebar_id' ), 10, 2 ); … … 317 323 $widget = new WP_Widget_Search( 'foo', 'Foo' ); 318 324 ob_start(); 319 $args = array(325 $args = array( 320 326 'before_widget' => '<section>', 321 'after_widget' => "</section>\n",322 'before_title' => '<h2>',323 'after_title' => "</h2>\n",327 'after_widget' => "</section>\n", 328 'before_title' => '<h2>', 329 'after_title' => "</h2>\n", 324 330 ); 325 331 $instance = array( 'title' => 'Buscar' ); … … 349 355 */ 350 356 function test_wp_widget_constructor() { 351 $id_base = 'foo';352 $name = 'Foo';357 $id_base = 'foo'; 358 $name = 'Foo'; 353 359 $foo_widget = new WP_Widget( $id_base, $name ); 354 360 … … 361 367 $this->assertEquals( $id_base, $foo_widget->control_options['id_base'] ); 362 368 363 $id_base = 'bar';364 $name = 'Bar';365 $widget_options = array(369 $id_base = 'bar'; 370 $name = 'Bar'; 371 $widget_options = array( 366 372 'classname' => 'bar_classname', 367 373 ); … … 369 375 'id_base' => 'bar_id_base', 370 376 ); 371 $bar_widget = new WP_Widget( $id_base, $name, $widget_options, $control_options );377 $bar_widget = new WP_Widget( $id_base, $name, $widget_options, $control_options ); 372 378 $this->assertEquals( $widget_options['classname'], $bar_widget->widget_options['classname'] ); 373 379 $this->assertEquals( $control_options['id_base'], $bar_widget->control_options['id_base'] ); … … 377 383 * @see WP_Widget::get_field_name() 378 384 * @dataProvider data_wp_widget_get_field_name 379 *380 385 */ 381 386 function test_wp_widget_get_field_name( $expected, $value_to_test ) { … … 399 404 * } 400 405 */ 401 function data_wp_widget_get_field_name( ) {406 function data_wp_widget_get_field_name() { 402 407 403 408 return array( … … 428 433 * @see WP_Widget::get_field_id() 429 434 * @dataProvider data_wp_widget_get_field_id 430 *431 435 */ 432 436 function test_wp_widget_get_field_id( $expected, $value_to_test ) { … … 567 571 $wp_widget_search = $wp_registered_widgets['search-2']['callback'][0]; 568 572 569 $settings = $wp_widget_search->get_settings();573 $settings = $wp_widget_search->get_settings(); 570 574 $overridden_title = 'Unit Tested'; 571 575 … … 578 582 * So this is why the value must be obtained. 579 583 */ 580 $instance = $settings[2];584 $instance = $settings[2]; 581 585 $instance['title'] = $overridden_title; 582 $settings[2] = $instance;586 $settings[2] = $instance; 583 587 584 588 $wp_widget_search->save_settings( $settings ); … … 615 619 require_once ABSPATH . '/wp-admin/includes/widgets.php'; 616 620 $widget_id = 'search-2'; 617 $widget = $wp_registered_widgets[ $widget_id ];618 $params = array(619 'widget_id' => $widget['id'],621 $widget = $wp_registered_widgets[ $widget_id ]; 622 $params = array( 623 'widget_id' => $widget['id'], 620 624 'widget_name' => $widget['name'], 621 625 ); 622 $args = wp_list_widget_controls_dynamic_sidebar( array( 0 => $params, 1 => $widget['params'][0] ) ); 626 $args = wp_list_widget_controls_dynamic_sidebar( 627 array( 628 0 => $params, 629 1 => $widget['params'][0], 630 ) 631 ); 623 632 624 633 ob_start(); … … 642 651 643 652 $param_overrides = array( 644 'before_form' => '<!-- before_form -->',645 'after_form' => '<!-- after_form -->',653 'before_form' => '<!-- before_form -->', 654 'after_form' => '<!-- after_form -->', 646 655 'before_widget_content' => '<!-- before_widget_content -->', 647 'after_widget_content' => '<!-- after_widget_content -->', 648 ); 649 $params = array_merge( $params, $param_overrides ); 650 $args = wp_list_widget_controls_dynamic_sidebar( array( 0 => $params, 1 => $widget['params'][0] ) ); 656 'after_widget_content' => '<!-- after_widget_content -->', 657 ); 658 $params = array_merge( $params, $param_overrides ); 659 $args = wp_list_widget_controls_dynamic_sidebar( 660 array( 661 0 => $params, 662 1 => $widget['params'][0], 663 ) 664 ); 651 665 652 666 ob_start(); … … 668 682 the_widget( 669 683 'WP_Widget_Text', 670 array( 'title' => 'Notes', 'text' => 'Sample text' ), 671 array( 'before_widget' => '<span class="special %s">', 'after_widget' => '</span>' ) 684 array( 685 'title' => 'Notes', 686 'text' => 'Sample text', 687 ), 688 array( 689 'before_widget' => '<span class="special %s">', 690 'after_widget' => '</span>', 691 ) 672 692 ); 673 693 $actual = ob_get_clean(); … … 713 733 714 734 // Test restoring sidebars widgets when previously activated. 715 set_theme_mod( 'sidebars_widgets', array( 716 'time' => time(), 717 'data' => array( 718 'sidebar-1' => array( 'tag_cloud-1' ), 719 'sidebar-2' => array(), 720 'sidebar-3' => array( 'unregistered_widget-1', 'text-1', 'media_image-1' ), 721 'orphaned_widgets_1' => array( 'media_video-2' ), 722 ), 723 ) ); 735 set_theme_mod( 736 'sidebars_widgets', array( 737 'time' => time(), 738 'data' => array( 739 'sidebar-1' => array( 'tag_cloud-1' ), 740 'sidebar-2' => array(), 741 'sidebar-3' => array( 'unregistered_widget-1', 'text-1', 'media_image-1' ), 742 'orphaned_widgets_1' => array( 'media_video-2' ), 743 ), 744 ) 745 ); 724 746 725 747 $sidebars_widgets = array( 726 'sidebar-1' => array( 'tag_cloud-1' ),727 'sidebar-2' => array( 'text-1' ),728 'fantasy' => array( 'archives-2' ),748 'sidebar-1' => array( 'tag_cloud-1' ), 749 'sidebar-2' => array( 'text-1' ), 750 'fantasy' => array( 'archives-2' ), 729 751 'wp_inactive_widgets' => array(), 730 752 ); … … 750 772 $this->assertCount( 6, $sidebars_widgets['wp_inactive_widgets'] ); 751 773 752 $this->assertContains( 'meta-2', $sidebars_widgets['wp_inactive_widgets'] );753 $this->assertContains( 'search-2', $sidebars_widgets['wp_inactive_widgets'] );754 $this->assertContains( 'archives-2', $sidebars_widgets['wp_inactive_widgets'] );755 $this->assertContains( 'categories-2', $sidebars_widgets['wp_inactive_widgets'] );756 $this->assertContains( 'recent-posts-2', $sidebars_widgets['wp_inactive_widgets'] );774 $this->assertContains( 'meta-2', $sidebars_widgets['wp_inactive_widgets'] ); 775 $this->assertContains( 'search-2', $sidebars_widgets['wp_inactive_widgets'] ); 776 $this->assertContains( 'archives-2', $sidebars_widgets['wp_inactive_widgets'] ); 777 $this->assertContains( 'categories-2', $sidebars_widgets['wp_inactive_widgets'] ); 778 $this->assertContains( 'recent-posts-2', $sidebars_widgets['wp_inactive_widgets'] ); 757 779 $this->assertContains( 'recent-comments-2', $sidebars_widgets['wp_inactive_widgets'] ); 758 780 … … 770 792 771 793 wp_widgets_init(); 772 $this->register_sidebars( array( 'sidebar-1', 'sidebar-2', 'sidebar-3', 'wp_inactive_widgets' ) );794 $this->register_sidebars( array( 'sidebar-1', 'sidebar-2', 'sidebar-3', 'wp_inactive_widgets' ) ); 773 795 774 796 $sidebars_widgets = array( 775 'sidebar-1' => array( 'tag_cloud-1' ),776 'sidebar-2' => array( 'text-1' ),777 'sidebar-3' => array( 'custom_widget-1' ),797 'sidebar-1' => array( 'tag_cloud-1' ), 798 'sidebar-2' => array( 'text-1' ), 799 'sidebar-3' => array( 'custom_widget-1' ), 778 800 'wp_inactive_widgets' => array(), 779 801 ); … … 808 830 809 831 wp_widgets_init(); 810 $this->register_sidebars( array( 'sidebar-1', 'sidebar-2', 'sidebar-3', 'wp_inactive_widgets' ) );832 $this->register_sidebars( array( 'sidebar-1', 'sidebar-2', 'sidebar-3', 'wp_inactive_widgets' ) ); 811 833 812 834 $sidebars_widgets = array( 813 'sidebar-1' => array( 'tag_cloud-1' ),814 'sidebar-2' => array( 'text-1' ),815 'fantasy' => array( 'unregistered_widget-1' ),835 'sidebar-1' => array( 'tag_cloud-1' ), 836 'sidebar-2' => array( 'text-1' ), 837 'fantasy' => array( 'unregistered_widget-1' ), 816 838 'wp_inactive_widgets' => array(), 817 839 ); … … 842 864 $this->assertCount( 6, $sidebars_widgets['wp_inactive_widgets'] ); 843 865 844 $this->assertContains( 'archives-2', $sidebars_widgets['wp_inactive_widgets'] );845 $this->assertContains( 'meta-2', $sidebars_widgets['wp_inactive_widgets'] );846 $this->assertContains( 'search-2', $sidebars_widgets['wp_inactive_widgets'] );847 $this->assertContains( 'categories-2', $sidebars_widgets['wp_inactive_widgets'] );848 $this->assertContains( 'recent-posts-2', $sidebars_widgets['wp_inactive_widgets'] );866 $this->assertContains( 'archives-2', $sidebars_widgets['wp_inactive_widgets'] ); 867 $this->assertContains( 'meta-2', $sidebars_widgets['wp_inactive_widgets'] ); 868 $this->assertContains( 'search-2', $sidebars_widgets['wp_inactive_widgets'] ); 869 $this->assertContains( 'categories-2', $sidebars_widgets['wp_inactive_widgets'] ); 870 $this->assertContains( 'recent-posts-2', $sidebars_widgets['wp_inactive_widgets'] ); 849 871 $this->assertContains( 'recent-comments-2', $sidebars_widgets['wp_inactive_widgets'] ); 850 872 … … 854 876 // Reset. 855 877 $sidebars_widgets = array( 856 'sidebar-1' => array( 'tag_cloud-1' ),857 'sidebar-2' => array( 'text-1' ),858 'fantasy' => array( 'archives-2' ),878 'sidebar-1' => array( 'tag_cloud-1' ), 879 'sidebar-2' => array( 'text-1' ), 880 'fantasy' => array( 'archives-2' ), 859 881 'wp_inactive_widgets' => array(), 860 882 ); … … 881 903 $this->assertCount( 6, $sidebars_widgets['wp_inactive_widgets'] ); 882 904 883 $this->assertContains( 'meta-2', $sidebars_widgets['wp_inactive_widgets'] );884 $this->assertContains( 'search-2', $sidebars_widgets['wp_inactive_widgets'] );905 $this->assertContains( 'meta-2', $sidebars_widgets['wp_inactive_widgets'] ); 906 $this->assertContains( 'search-2', $sidebars_widgets['wp_inactive_widgets'] ); 885 907 // archives-2 ends up as inactive because fantasy sidebar doesn't exist. 886 $this->assertContains( 'archives-2', $sidebars_widgets['wp_inactive_widgets'] );887 $this->assertContains( 'categories-2', $sidebars_widgets['wp_inactive_widgets'] );888 $this->assertContains( 'recent-posts-2', $sidebars_widgets['wp_inactive_widgets'] );908 $this->assertContains( 'archives-2', $sidebars_widgets['wp_inactive_widgets'] ); 909 $this->assertContains( 'categories-2', $sidebars_widgets['wp_inactive_widgets'] ); 910 $this->assertContains( 'recent-posts-2', $sidebars_widgets['wp_inactive_widgets'] ); 889 911 $this->assertContains( 'recent-comments-2', $sidebars_widgets['wp_inactive_widgets'] ); 890 912 … … 902 924 903 925 wp_widgets_init(); 904 $this->register_sidebars( array( 'sidebar-1', 'sidebar-2', 'sidebar-3', 'wp_inactive_widgets' ) );926 $this->register_sidebars( array( 'sidebar-1', 'sidebar-2', 'sidebar-3', 'wp_inactive_widgets' ) ); 905 927 906 928 $old_sidebars_widgets = array( 907 'sidebar-1' => array( 'tag_cloud-1' ),908 'sidebar-2' => array( 'text-1' ),909 'sidebar-3' => array( 'unregistered_widget-1' ),910 'fantasy' => array( 'archives-2' ),929 'sidebar-1' => array( 'tag_cloud-1' ), 930 'sidebar-2' => array( 'text-1' ), 931 'sidebar-3' => array( 'unregistered_widget-1' ), 932 'fantasy' => array( 'archives-2' ), 911 933 'wp_inactive_widgets' => array(), 912 934 ); … … 929 951 $this->assertCount( 6, $sidebars_widgets['wp_inactive_widgets'] ); 930 952 931 $this->assertContains( 'meta-2', $sidebars_widgets['wp_inactive_widgets'] );932 $this->assertContains( 'search-2', $sidebars_widgets['wp_inactive_widgets'] );933 $this->assertContains( 'archives-2', $sidebars_widgets['wp_inactive_widgets'] );934 $this->assertContains( 'categories-2', $sidebars_widgets['wp_inactive_widgets'] );935 $this->assertContains( 'recent-posts-2', $sidebars_widgets['wp_inactive_widgets'] );953 $this->assertContains( 'meta-2', $sidebars_widgets['wp_inactive_widgets'] ); 954 $this->assertContains( 'search-2', $sidebars_widgets['wp_inactive_widgets'] ); 955 $this->assertContains( 'archives-2', $sidebars_widgets['wp_inactive_widgets'] ); 956 $this->assertContains( 'categories-2', $sidebars_widgets['wp_inactive_widgets'] ); 957 $this->assertContains( 'recent-posts-2', $sidebars_widgets['wp_inactive_widgets'] ); 936 958 $this->assertContains( 'recent-comments-2', $sidebars_widgets['wp_inactive_widgets'] ); 937 959 … … 955 977 956 978 $sidebars_widgets = array( 957 'sidebar-1' => array( 'tag_cloud-1' ),979 'sidebar-1' => array( 'tag_cloud-1' ), 958 980 'wp_inactive_widgets' => array(), 959 981 ); … … 977 999 978 1000 $sidebars_widgets = array( 979 'sidebar-1' => array( 'tag_cloud-1' ),980 'sidebar-2' => array( 'text-1' ),1001 'sidebar-1' => array( 'tag_cloud-1' ), 1002 'sidebar-2' => array( 'text-1' ), 981 1003 'wp_inactive_widgets' => array( 'search-2', 'archives-2' ), 982 1004 'orphaned_widgets_1' => array( 'calendar-1' ), … … 1007 1029 public function test__wp_remove_unregistered_widgets() { 1008 1030 $widgets = array( 1009 'sidebar-1' => array( 'tag_cloud-1' ),1010 'sidebar-2' => array( 'text-1' ),1011 'fantasy' => array( 'archives-2' ),1031 'sidebar-1' => array( 'tag_cloud-1' ), 1032 'sidebar-2' => array( 'text-1' ), 1033 'fantasy' => array( 'archives-2' ), 1012 1034 'wp_inactive_widgets' => array(), 1013 'array_version' => 3,1035 'array_version' => 3, 1014 1036 ); 1015 1037 … … 1044 1066 1045 1067 $expected_sidebars = array( 1046 'primary' => 1,1068 'primary' => 1, 1047 1069 'wp_inactive_widgets' => array(), 1048 1070 ); … … 1058 1080 $this->register_sidebars( array( 'primary', 'secondary' ) ); 1059 1081 $prev_theme_sidebars = array( 1060 'primary' => 1,1061 'secondary' => 2,1082 'primary' => 1, 1083 'secondary' => 2, 1062 1084 'wp_inactive_widgets' => array(), 1063 1085 ); … … 1084 1106 1085 1107 $expected_sidebars = array( 1086 'primary' => array(),1087 'secondary' => array(),1108 'primary' => array(), 1109 'secondary' => array(), 1088 1110 'wp_inactive_widgets' => array(), 1089 1111 ); … … 1099 1121 $this->register_sidebars( array( 'primary' ) ); 1100 1122 $prev_theme_sidebars = array( 1101 'top-menu' => array(),1123 'top-menu' => array(), 1102 1124 'secondary' => array(), 1103 1125 ); … … 1106 1128 1107 1129 $expected_sidebars = array( 1108 'main' => array(),1130 'main' => array(), 1109 1131 'wp_inactive_widgets' => array(), 1110 1132 ); … … 1122 1144 $prev_theme_sidebars = array( 1123 1145 'navigation-menu' => array(), 1124 'top-menu' => array(),1146 'top-menu' => array(), 1125 1147 ); 1126 1148 … … 1128 1150 1129 1151 $expected_sidebars = array( 1130 'main' => array(),1131 'primary' => array(),1152 'main' => array(), 1153 'primary' => array(), 1132 1154 'wp_inactive_widgets' => array(), 1133 1155 );
Note: See TracChangeset
for help on using the changeset viewer.