You are here

protected function UbercartBrowserTestBase::setUp in Ubercart 8.4

Overrides BrowserTestBase::setUp

23 calls to UbercartBrowserTestBase::setUp()
AddressTest::setUp in uc_store/tests/src/Functional/AddressTest.php
AttributeTest::setUp in uc_attribute/tests/src/Functional/AttributeTest.php
CartBlockTest::setUp in uc_cart/tests/src/Functional/CartBlockTest.php
CartCheckoutTest::setUp in uc_cart/tests/src/Functional/CartCheckoutTest.php
CartRulesEventsTest::setUp in uc_cart/tests/src/Functional/CartRulesEventsTest.php

... See full list

23 methods override UbercartBrowserTestBase::setUp()
AddressTest::setUp in uc_store/tests/src/Functional/AddressTest.php
AttributeTest::setUp in uc_attribute/tests/src/Functional/AttributeTest.php
CartBlockTest::setUp in uc_cart/tests/src/Functional/CartBlockTest.php
CartCheckoutTest::setUp in uc_cart/tests/src/Functional/CartCheckoutTest.php
CartRulesEventsTest::setUp in uc_cart/tests/src/Functional/CartRulesEventsTest.php

... See full list

File

uc_store/tests/src/Functional/UbercartBrowserTestBase.php, line 80

Class

UbercartBrowserTestBase
Base class for Ubercart PHPUnit browser tests.

Namespace

Drupal\Tests\uc_store\Functional

Code

protected function setUp() {
  parent::setUp();

  // Place the tabs and actions blocks as various tests use them.
  $this
    ->drupalPlaceBlock('local_actions_block');
  $this
    ->drupalPlaceBlock('local_tasks_block');

  // Collect admin permissions.
  $class = get_class($this);
  $adminPermissions = [];
  while ($class) {
    if (property_exists($class, 'adminPermissions')) {
      $adminPermissions = array_merge($adminPermissions, $class::$adminPermissions);
    }
    $class = get_parent_class($class);
  }

  // Enable a random selection of 8 countries so we're not always
  // testing with the 1 site default.
  $countries = \Drupal::service('country_manager')
    ->getAvailableList();
  $country_ids = array_rand($countries, 8);
  foreach ($country_ids as $country_id) {

    // Don't use the country UI, we're not testing that here...
    Country::load($country_id)
      ->enable()
      ->save();
  }

  // Last one of the 8 gets to be the store default country.
  \Drupal::configFactory()
    ->getEditable('uc_store.settings')
    ->set('address.country', $country_id)
    ->save();

  // Create a store administrator user account.
  $this->adminUser = $this
    ->drupalCreateUser($adminPermissions);

  // Create a test product.
  $this->product = $this
    ->createProduct([
    'uid' => $this->adminUser
      ->id(),
    'promote' => 0,
  ]);
}