MenuCest.php 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. <?php
  2. namespace backend\tests\functional;
  3. use common\models\AdminUser;
  4. use backend\tests\FunctionalTester;
  5. use backend\fixtures\UserFixture;
  6. use yii\helpers\Url;
  7. /**
  8. * Class MenuCest
  9. */
  10. class MenuCest
  11. {
  12. public function _fixtures()
  13. {
  14. return [
  15. 'user' => [
  16. 'class' => UserFixture::className(),
  17. 'dataFile' => codecept_data_dir() . 'login_data.php'
  18. ]
  19. ];
  20. }
  21. public function _before(FunctionalTester $I)
  22. {
  23. $I->amLoggedInAs(AdminUser::findIdentity(1));
  24. }
  25. public function checkIndex(FunctionalTester $I)
  26. {
  27. $I->amOnPage(Url::toRoute('/menu/index'));
  28. $I->see('后台菜单');
  29. }
  30. public function checkUpdate(FunctionalTester $I)
  31. {
  32. $I->amOnPage(Url::toRoute('/menu/index'));
  33. $I->click("a[title=编辑]");
  34. $I->see("编辑后台菜单");
  35. $I->fillField("Menu[name]", '测试123');
  36. $I->submitForm("button[type=submit]", []);
  37. $I->click("a[title=编辑]");
  38. $I->seeInField("Menu[name]", "测试123");
  39. }
  40. public function checkCreate(FunctionalTester $I)
  41. {
  42. $I->amOnPage(Url::toRoute('/menu/create'));
  43. $I->fillField("Menu[name]", 'test_menu_name');
  44. $I->submitForm("button[type=submit]", []);
  45. $I->see("test_menu_name");
  46. }
  47. public function checkView(FunctionalTester $I)
  48. {
  49. $I->amOnPage(Url::toRoute('/menu/index'));
  50. $urls = $I->grabMultiple("table a[title=查看]", "url");
  51. $I->amOnPage($urls[0]);
  52. $I->see('创建时间');
  53. }
  54. public function checkDelete(FunctionalTester $I)
  55. {
  56. $I->amOnPage(Url::toRoute('/menu/index'));
  57. $urls = $I->grabMultiple("table a[title=查看]", "url");
  58. $data = \GuzzleHttp\Psr7\parse_query($urls[0]);
  59. $I->sendAjaxPostRequest(Url::toRoute('menu/delete'), [
  60. 'id' => $data['id'],
  61. ]);
  62. $I->see(422);
  63. }
  64. public function checkSort(FunctionalTester $I)
  65. {
  66. $I->amOnPage(Url::toRoute('/menu/index'));
  67. $urls = $I->grabMultiple("table a[title=查看]", "url");
  68. $data = \GuzzleHttp\Psr7\parse_query($urls[0]);
  69. $key = "sort[" . json_encode(['id' => $data['id']]) . "]";//echo $key;exit;
  70. $I->sendAjaxPostRequest(Url::toRoute('menu/sort'), [
  71. $key => 1,
  72. ]);
  73. $I->see("success");
  74. }
  75. }