ROOTPLOIT
Server: LiteSpeed
System: Linux in-mum-web1878.main-hosting.eu 5.14.0-570.21.1.el9_6.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Jun 11 07:22:35 EDT 2025 x86_64
User: u435929562 (435929562)
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/site-generate.feature
Feature: Generate new WordPress sites

  Scenario: Generate on single site
    Given a WP install
    When I try `wp site generate`
    Then STDERR should contain:
      """
      This is not a multisite installation.
      """
    And STDOUT should be empty
    And the return code should be 1

  Scenario: Generate a specific number of sites
    Given a WP multisite install
    When I run `wp site generate --count=10`
    And I run `wp site list --format=count`
    Then STDOUT should be:
      """
      11
      """

  Scenario: Generate sites assigned to a specific network
    Given a WP multisite install
    When I try `wp site generate --count=4 --network_id=2`
    Then STDERR should contain:
      """
      Network with id 2 does not exist.
      """
    And STDOUT should be empty
    And the return code should be 1

  Scenario: Generate sites and output ids
    Given a WP multisite install
    When I run `wp site generate --count=3 --format=ids`
    And I run `wp site list --format=ids`
    Then STDOUT should be:
      """
      1 2 3 4
      """
    And STDERR should be empty
    And the return code should be 0

  Scenario: Generate subdomain sites
    Given a WP multisite subdomain install

    When I run `wp site generate --count=1`
    Then STDOUT should be empty

    When I run `wp site list --fields=blog_id,url`
    Then STDOUT should be a table containing rows:
      | blog_id | url                       |
      | 1       | https://example.com/       |
      | 2       | http://site1.example.com/ |
    When I run `wp site list --format=ids`
    Then STDOUT should be:
      """
      1 2
      """

  Scenario: Generate subdirectory sites
    Given a WP multisite subdirectory install
    When I run `wp site generate --count=1`
    Then STDOUT should be empty
    And I run `wp site list --site__in=2 --field=url | sed -e's,^\(.*\)://.*,\1,g'`
    And save STDOUT as {SCHEME}

    When I run `wp site list --fields=blog_id,url`
    Then STDOUT should be a table containing rows:
      | blog_id | url                       |
      | 1       | https://example.com/       |
      | 2       | {SCHEME}://example.com/site1/ |
    When I run `wp site list --format=ids`
    Then STDOUT should be:
      """
      1 2
      """

  Scenario: Generate sites with a slug
    Given a WP multisite subdirectory install
    When I run `wp site generate --count=2 --slug=subsite`
    Then STDOUT should be empty
    And I run `wp site list --site__in=2 --field=url | sed -e's,^\(.*\)://.*,\1,g'`
    And save STDOUT as {SCHEME1}
    And I run `wp site list --site__in=3 --field=url | sed -e's,^\(.*\)://.*,\1,g'`
    And save STDOUT as {SCHEME2}

    When I run `wp site list --fields=blog_id,url`
    Then STDOUT should be a table containing rows:
      | blog_id | url                       |
      | 1       | https://example.com/        |
      | 2       | {SCHEME1}://example.com/subsite1/   |
      | 3       | {SCHEME2}://example.com/subsite2/   |
    When I run `wp site list --format=ids`
    Then STDOUT should be:
      """
      1 2 3
      """

  Scenario: Generate sites with reserved slug
    Given a WP multisite subdirectory install
    When I try `wp site generate --count=2 --slug=page`
    Then STDERR should contain:
      """
      The following words are reserved and cannot be used as blog names: page, comments, blog, files, feed
      """
    And STDOUT should be empty
    And the return code should be 1