You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							90 lines
						
					
					
						
							3.0 KiB
						
					
					
				
			
		
		
	
	
							90 lines
						
					
					
						
							3.0 KiB
						
					
					
				| <?php | |
| namespace yiiunit\extensions\bootstrap; | |
|  | |
| use yii\bootstrap\Dropdown; | |
|  | |
| /** | |
|  * Tests for Dropdown widget | |
|  * | |
|  * @group bootstrap | |
|  */ | |
| class DropdownTest extends TestCase | |
| { | |
|     public function testIds() | |
|     { | |
|         Dropdown::$counter = 0; | |
|         $out = Dropdown::widget( | |
|             [ | |
|                 'items' => [ | |
|                     [ | |
|                         'label' => 'Page1', | |
|                         'content' => 'Page1', | |
|                     ], | |
|                     [ | |
|                         'label' => 'Dropdown1', | |
|                         'items' => [ | |
|                             ['label' => 'Page2', 'content' => 'Page2'], | |
|                             ['label' => 'Page3', 'content' => 'Page3'], | |
|                         ] | |
|                     ], | |
|                     [ | |
|                         'label' => 'Dropdown2', | |
|                         'visible' => false, | |
|                         'items' => [ | |
|                             ['label' => 'Page4', 'content' => 'Page4'], | |
|                             ['label' => 'Page5', 'content' => 'Page5'], | |
|                         ] | |
|                     ] | |
|                 ] | |
|             ] | |
|         ); | |
|  | |
|         $expected = <<<EXPECTED | |
| <ul id="w0" class="dropdown-menu"><li class="dropdown-header">Page1</li> | |
| <li class="dropdown-submenu"><a href="#" tabindex="-1">Dropdown1</a><ul><li class="dropdown-header">Page2</li> | |
| <li class="dropdown-header">Page3</li></ul></li></ul> | |
| EXPECTED; | |
|  | |
|         $this->assertEqualsWithoutLE($expected, $out); | |
|     } | |
|  | |
|     public function testSubMenuOptions() | |
|     { | |
|         Dropdown::$counter = 0; | |
|         $out = Dropdown::widget( | |
|             [ | |
|                 'submenuOptions' => [ | |
|                     'class' => 'submenu-list', | |
|                 ], | |
|                 'items' => [ | |
|                     [ | |
|                         'label' => 'Dropdown1', | |
|                         'items' => [ | |
|                             ['label' => 'Page1', 'content' => 'Page2'], | |
|                             ['label' => 'Page2', 'content' => 'Page3'], | |
|                         ] | |
|                     ], | |
|                     [ | |
|                         'label' => 'Dropdown2', | |
|                         'items' => [ | |
|                             ['label' => 'Page3', 'content' => 'Page4'], | |
|                             ['label' => 'Page4', 'content' => 'Page5'], | |
|                         ], | |
|                         'submenuOptions' => [ | |
|                             'class' => 'submenu-override', | |
|                         ], | |
|                     ] | |
|                 ] | |
|             ] | |
|         ); | |
|  | |
|         $expected = <<<EXPECTED | |
| <ul id="w0" class="dropdown-menu"><li class="dropdown-submenu"><a href="#" tabindex="-1">Dropdown1</a><ul class="submenu-list"><li class="dropdown-header">Page1</li> | |
| <li class="dropdown-header">Page2</li></ul></li> | |
| <li class="dropdown-submenu"><a href="#" tabindex="-1">Dropdown2</a><ul class="submenu-override"><li class="dropdown-header">Page3</li> | |
| <li class="dropdown-header">Page4</li></ul></li></ul> | |
| EXPECTED; | |
|  | |
|         $this->assertEqualsWithoutLE($expected, $out); | |
|     } | |
| }
 | |
| 
 |