L337xyz
Server: LiteSpeed
System: Linux in-mum-web831.main-hosting.eu 4.18.0-553.34.1.lve.el8.x86_64 #1 SMP Thu Jan 9 16:30:32 UTC 2025 x86_64
User: u786315844 (786315844)
PHP: 7.4.33
Disabled: system, exec, shell_exec, passthru, mysql_list_dbs, ini_alter, dl, symlink, link, chgrp, leak, popen, apache_child_terminate, virtual, mb_send_mail
Upload Files
File: //opt/.wp-cli/packages/vendor/wp-cli/entity-command/features/menu.feature
Feature: Manage WordPress menus

  Background:
    Given a WP install

  Scenario: Menu CRUD operations

    When I run `wp menu create "My Menu"`
    And I run `wp menu list --fields=name,slug`
    Then STDOUT should be a table containing rows:
      | name       | slug       |
      | My Menu    | my-menu    |

    When I run `wp menu delete "My Menu"`
    Then STDOUT should be:
      """
      Deleted menu 'My Menu'.
      Success: Deleted 1 of 1 menus.
      """
    And the return code should be 0

    When I run `wp menu list --format=count`
    Then STDOUT should be:
      """
      0
      """

    When I run `wp menu create "First Menu"`
    And I run `wp menu create "Second Menu"`
    And I run `wp menu list --fields=name,slug`
    Then STDOUT should be a table containing rows:
      | name           | slug           |
      | First Menu     | first-menu     |
      | Second Menu    | second-menu    |

    When I run `wp menu delete "First Menu" "Second Menu"`
    Then STDOUT should be:
      """
      Deleted menu 'First Menu'.
      Deleted menu 'Second Menu'.
      Success: Deleted 2 of 2 menus.
      """
    And the return code should be 0

    When I run `wp menu list --format=count`
    Then STDOUT should be:
      """
      0
      """

    When I run `wp menu create "First Menu"`
    And I run `wp menu list --format=ids`
    Then STDOUT should be:
      """
      5
      """

  Scenario: Errors when deleting menus
    When I try `wp menu delete "Your menu"`
    Then STDERR should be:
      """
      Warning: Couldn't delete menu 'Your menu'.
      Error: No menus deleted.
      """
    And the return code should be 1

    When I run `wp menu create "My Menu"`
    And I run `wp menu list --fields=name,slug`
    Then STDOUT should be a table containing rows:
      | name       | slug       |
      | My Menu    | my-menu    |

    When I try `wp menu delete "My Menu" "Your menu"`
    Then STDERR should be:
      """
      Warning: Couldn't delete menu 'Your menu'.
      Error: Only deleted 1 of 2 menus.
      """
    And the return code should be 1