MenuTest.php 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. <?php
  2. namespace Dcat\Admin\Tests\Feature;
  3. use Dcat\Admin\Models\Menu;
  4. use Dcat\Admin\Tests\TestCase;
  5. /**
  6. * @group menu
  7. */
  8. class MenuTest extends TestCase
  9. {
  10. public function testMenuIndex()
  11. {
  12. $this->visit('admin/auth/menu')
  13. ->see('Menu')
  14. ->see('Index')
  15. ->see('Auth')
  16. ->see('Users')
  17. ->see('Roles')
  18. ->see('Permission')
  19. ->see('Menu')
  20. ->see('Operation log')
  21. ->see('Helpers')
  22. ->see('Extensions')
  23. ->see('Scaffold')
  24. ->see('Routes');
  25. }
  26. public function testAddMenu()
  27. {
  28. $item = ['parent_id' => '0', 'title' => 'Test', 'uri' => 'test', 'icon' => 'fa-user'];
  29. $this->visit('admin/auth/menu')
  30. ->seePageIs('admin/auth/menu')
  31. ->see('Menu')
  32. ->submitForm('Submit', $item)
  33. ->seePageIs('admin/auth/menu')
  34. ->seeInDatabase(config('admin.database.menu_table'), $item)
  35. ->assertEquals(8, Menu::count());
  36. }
  37. public function testDeleteMenu()
  38. {
  39. $this->delete('admin/auth/menu/8')
  40. ->assertEquals(7, Menu::count());
  41. }
  42. public function testEditMenu()
  43. {
  44. $this->visit('admin/auth/menu/1/edit')
  45. ->see('Menu')
  46. ->submitForm('Submit', ['title' => 'blablabla'])
  47. ->seePageIs('admin/auth/menu')
  48. ->seeInDatabase(config('admin.database.menu_table'), ['title' => 'blablabla'])
  49. ->assertEquals(7, Menu::count());
  50. }
  51. public function testEditMenuParent()
  52. {
  53. $this->expectException(\Laravel\BrowserKitTesting\HttpException::class);
  54. $this->visit('admin/auth/menu/5/edit')
  55. ->see('Menu')
  56. ->submitForm('Submit', ['parent_id' => 5]);
  57. }
  58. }