/**
  * Test the navbar usage.
  *
  * @cover Navbar::__construct()
  * @cover Navbar::getMenuList()
  * @cover Navbar::setMenuList()
  * @cover Navbar::pushMenu()
  */
 public function testUsage()
 {
     $navbar = new Navbar();
     $this->assertEquals(array(), $navbar->getMenuList());
     $menuList = array(new Menu('Menu ' . uniqid()), new Menu('Menu ' . uniqid()), new Menu('Menu ' . uniqid(), null, array(new Menu('Sub-menu ' . uniqid()))));
     $navbar = new Navbar($menuList);
     $this->assertEquals(count($menuList), count($navbar->getMenuList()));
     $this->assertEquals($menuList, $navbar->getMenuList());
     $menuList = array(new Menu('Menu ' . uniqid()), new Menu('Menu ' . uniqid()));
     $navbar = new Navbar();
     $this->assertEquals($navbar, $navbar->setMenuList($menuList));
     $this->assertEquals(count($menuList), count($navbar->getMenuList()));
     $this->assertEquals($menuList, $navbar->getMenuList());
     $menuList = array(new Menu('Menu ' . uniqid()), new Menu('Menu ' . uniqid()), new Menu('Menu ' . uniqid()), new Menu('Menu ' . uniqid()), new Menu('Menu ' . uniqid()));
     $navbar = new Navbar();
     foreach ($menuList as $menu) {
         $navbar->pushMenu($menu);
     }
     $this->assertEquals(count($menuList), count($navbar->getMenuList()));
     $this->assertEquals($menuList, $navbar->getMenuList());
     foreach ($navbar->getMenuList() as $k => $menu) {
         $this->assertSame($menuList[$k], $menu);
     }
 }