- Timestamp:
- 11/30/2017 11:09:33 PM (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/tests/phpunit/tests/customize/nav-menu-setting.php
r38858 r42343 27 27 global $wp_customize; 28 28 $this->wp_customize = new WP_Customize_Manager(); 29 $wp_customize = $this->wp_customize;29 $wp_customize = $this->wp_customize; 30 30 } 31 31 … … 115 115 do_action( 'customize_register', $this->wp_customize ); 116 116 $default = array( 117 'name' => 'Lorem \\o/',117 'name' => 'Lorem \\o/', 118 118 'description' => 'ipsum \\o/', 119 'parent' => 123,119 'parent' => 123, 120 120 ); 121 121 $setting = new WP_Customize_Nav_Menu_Setting( $this->wp_customize, 'nav_menu[-5]', compact( 'default' ) ); … … 132 132 do_action( 'customize_register', $this->wp_customize ); 133 133 134 $menu_name = 'Test 123 \\o/';134 $menu_name = 'Test 123 \\o/'; 135 135 $parent_menu_id = wp_create_nav_menu( wp_slash( "Parent $menu_name" ) ); 136 $description = 'Hello my world \\o/.'; 137 $menu_id = wp_update_nav_menu_object( 0, wp_slash( array( 138 'menu-name' => $menu_name, 139 'parent' => $parent_menu_id, 140 'description' => $description, 141 ) ) ); 136 $description = 'Hello my world \\o/.'; 137 $menu_id = wp_update_nav_menu_object( 138 0, wp_slash( 139 array( 140 'menu-name' => $menu_name, 141 'parent' => $parent_menu_id, 142 'description' => $description, 143 ) 144 ) 145 ); 142 146 143 147 $setting_id = "nav_menu[$menu_id]"; 144 $setting = new WP_Customize_Nav_Menu_Setting( $this->wp_customize, $setting_id );148 $setting = new WP_Customize_Nav_Menu_Setting( $this->wp_customize, $setting_id ); 145 149 146 150 $value = $setting->value(); … … 167 171 do_action( 'customize_register', $this->wp_customize ); 168 172 169 $menu_id = wp_update_nav_menu_object( 0, wp_slash( array( 170 'menu-name' => 'Name 1 \\o/', 171 'description' => 'Description 1 \\o/', 172 'parent' => 0, 173 ) ) ); 173 $menu_id = wp_update_nav_menu_object( 174 0, wp_slash( 175 array( 176 'menu-name' => 'Name 1 \\o/', 177 'description' => 'Description 1 \\o/', 178 'parent' => 0, 179 ) 180 ) 181 ); 174 182 $setting_id = "nav_menu[$menu_id]"; 175 $setting = new WP_Customize_Nav_Menu_Setting( $this->wp_customize, $setting_id );183 $setting = new WP_Customize_Nav_Menu_Setting( $this->wp_customize, $setting_id ); 176 184 177 185 $nav_menu_options = $this->get_nav_menu_items_option(); … … 179 187 180 188 $post_value = array( 181 'name' => 'Name 2 \\o/',189 'name' => 'Name 2 \\o/', 182 190 'description' => 'Description 2 \\o/', 183 'parent' => 1,184 'auto_add' => true,191 'parent' => 1, 192 'auto_add' => true, 185 193 ); 186 194 $this->wp_customize->set_post_value( $setting_id, $post_value ); … … 213 221 $this->assertContains( $menu_id, $nav_menu_options['auto_add'] ); 214 222 215 $menus = wp_get_nav_menus();223 $menus = wp_get_nav_menus(); 216 224 $menus_ids = wp_list_pluck( $menus, 'term_id' ); 217 $i = array_search( $menu_id, $menus_ids );225 $i = array_search( $menu_id, $menus_ids ); 218 226 $this->assertInternalType( 'int', $i, 'Update-previewed menu does not appear in wp_get_nav_menus()' ); 219 227 $filtered_menu = $menus[ $i ]; … … 229 237 do_action( 'customize_register', $this->wp_customize ); 230 238 231 $menu_id = -123;239 $menu_id = -123; 232 240 $post_value = array( 233 'name' => 'New Menu Name 1 \\o/',241 'name' => 'New Menu Name 1 \\o/', 234 242 'description' => 'New Menu Description 1 \\o/', 235 'parent' => 0,236 'auto_add' => false,243 'parent' => 0, 244 'auto_add' => false, 237 245 ); 238 246 $setting_id = "nav_menu[$menu_id]"; 239 $setting = new WP_Customize_Nav_Menu_Setting( $this->wp_customize, $setting_id );247 $setting = new WP_Customize_Nav_Menu_Setting( $this->wp_customize, $setting_id ); 240 248 241 249 $this->wp_customize->set_post_value( $setting->id, $post_value ); … … 258 266 $this->assertNotContains( $menu_id, $nav_menu_options['auto_add'] ); 259 267 260 $menus = wp_get_nav_menus();268 $menus = wp_get_nav_menus(); 261 269 $menus_ids = wp_list_pluck( $menus, 'term_id' ); 262 $i = array_search( $menu_id, $menus_ids );270 $i = array_search( $menu_id, $menus_ids ); 263 271 $this->assertInternalType( 'int', $i, 'Insert-previewed menu was not injected into wp_get_nav_menus()' ); 264 272 $filtered_menu = $menus[ $i ]; … … 274 282 do_action( 'customize_register', $this->wp_customize ); 275 283 276 $menu_id = wp_update_nav_menu_object( 0, wp_slash( array( 277 'menu-name' => 'Name 1 \\o/', 278 'description' => 'Description 1 \\o/', 279 'parent' => 0, 280 ) ) ); 281 $setting_id = "nav_menu[$menu_id]"; 282 $setting = new WP_Customize_Nav_Menu_Setting( $this->wp_customize, $setting_id ); 283 $nav_menu_options = $this->get_nav_menu_items_option(); 284 $menu_id = wp_update_nav_menu_object( 285 0, wp_slash( 286 array( 287 'menu-name' => 'Name 1 \\o/', 288 'description' => 'Description 1 \\o/', 289 'parent' => 0, 290 ) 291 ) 292 ); 293 $setting_id = "nav_menu[$menu_id]"; 294 $setting = new WP_Customize_Nav_Menu_Setting( $this->wp_customize, $setting_id ); 295 $nav_menu_options = $this->get_nav_menu_items_option(); 284 296 $nav_menu_options['auto_add'][] = $menu_id; 285 297 update_option( 'nav_menu_options', $nav_menu_options ); … … 312 324 $this->assertNull( $setting->sanitize( 123 ) ); 313 325 314 $value = array(315 'name' => ' Hello \\o/ <b>world</b> ',326 $value = array( 327 'name' => ' Hello \\o/ <b>world</b> ', 316 328 'description' => "New\nline \\o/", 317 'parent' => -12,318 'auto_add' => true,319 'extra' => 'ignored',329 'parent' => -12, 330 'auto_add' => true, 331 'extra' => 'ignored', 320 332 ); 321 333 $sanitized = $setting->sanitize( $value ); … … 327 339 328 340 $value['name'] = ' '; // Blank spaces. 329 $sanitized = $setting->sanitize( $value );341 $sanitized = $setting->sanitize( $value ); 330 342 $this->assertEquals( '(unnamed)', $sanitized['name'] ); 331 343 } … … 339 351 do_action( 'customize_register', $this->wp_customize ); 340 352 341 $menu_id = wp_update_nav_menu_object( 0, wp_slash( array( 342 'menu-name' => 'Name 1 \\o/', 343 'description' => 'Description 1 \\o/', 344 'parent' => 0, 345 ) ) ); 346 $nav_menu_options = $this->get_nav_menu_items_option(); 353 $menu_id = wp_update_nav_menu_object( 354 0, wp_slash( 355 array( 356 'menu-name' => 'Name 1 \\o/', 357 'description' => 'Description 1 \\o/', 358 'parent' => 0, 359 ) 360 ) 361 ); 362 $nav_menu_options = $this->get_nav_menu_items_option(); 347 363 $nav_menu_options['auto_add'][] = $menu_id; 348 364 update_option( 'nav_menu_options', $nav_menu_options ); 349 365 350 366 $setting_id = "nav_menu[$menu_id]"; 351 $setting = new WP_Customize_Nav_Menu_Setting( $this->wp_customize, $setting_id );352 353 $auto_add = false;367 $setting = new WP_Customize_Nav_Menu_Setting( $this->wp_customize, $setting_id ); 368 369 $auto_add = false; 354 370 $new_value = array( 355 'name' => 'Name 2 \\o/',371 'name' => 'Name 2 \\o/', 356 372 'description' => 'Description 2 \\o/', 357 'parent' => 1,358 'auto_add' => $auto_add,373 'parent' => 1, 374 'auto_add' => $auto_add, 359 375 ); 360 376 … … 399 415 do_action( 'customize_register', $this->wp_customize ); 400 416 401 $menu_id = -123;417 $menu_id = -123; 402 418 $post_value = array( 403 'name' => 'New Menu Name 1 \\o/',419 'name' => 'New Menu Name 1 \\o/', 404 420 'description' => 'New Menu Description 1 \\o/', 405 'parent' => 0,406 'auto_add' => true,421 'parent' => 0, 422 'auto_add' => true, 407 423 ); 408 424 $setting_id = "nav_menu[$menu_id]"; 409 $setting = new WP_Customize_Nav_Menu_Setting( $this->wp_customize, $setting_id );425 $setting = new WP_Customize_Nav_Menu_Setting( $this->wp_customize, $setting_id ); 410 426 411 427 $this->wp_customize->set_post_value( $setting->id, $post_value ); … … 451 467 wp_update_nav_menu_object( 0, wp_slash( array( 'menu-name' => $menu_name ) ) ); 452 468 453 $menu_id = -123;469 $menu_id = -123; 454 470 $setting_id = "nav_menu[$menu_id]"; 455 $setting = new WP_Customize_Nav_Menu_Setting( $this->wp_customize, $setting_id );471 $setting = new WP_Customize_Nav_Menu_Setting( $this->wp_customize, $setting_id ); 456 472 $this->wp_customize->set_post_value( $setting->id, array( 'name' => $menu_name ) ); 457 473 $setting->save(); 458 474 459 475 $expected_resolved_menu_name = "$menu_name (2)"; 460 $new_menu = wp_get_nav_menu_object( $setting->term_id );476 $new_menu = wp_get_nav_menu_object( $setting->term_id ); 461 477 $this->assertEquals( $expected_resolved_menu_name, $new_menu->name ); 462 478 … … 473 489 do_action( 'customize_register', $this->wp_customize ); 474 490 475 $menu_name = 'Lorem Ipsum \\o/';476 $menu_id = wp_create_nav_menu( wp_slash( $menu_name ) );477 $setting_id = "nav_menu[$menu_id]";478 $setting = new WP_Customize_Nav_Menu_Setting( $this->wp_customize, $setting_id );479 $nav_menu_options = $this->get_nav_menu_items_option();491 $menu_name = 'Lorem Ipsum \\o/'; 492 $menu_id = wp_create_nav_menu( wp_slash( $menu_name ) ); 493 $setting_id = "nav_menu[$menu_id]"; 494 $setting = new WP_Customize_Nav_Menu_Setting( $this->wp_customize, $setting_id ); 495 $nav_menu_options = $this->get_nav_menu_items_option(); 480 496 $nav_menu_options['auto_add'][] = $menu_id; 481 497 update_option( 'nav_menu_options', $nav_menu_options );
Note: See TracChangeset
for help on using the changeset viewer.