MenuTest.php 1.6 KB

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