You are here

public function BundleTest::testAvailableBundles in Commerce Pricelist 8.2

Tests available bundles.

File

tests/src/Kernel/BundleTest.php, line 17

Class

BundleTest
Tests the bundles for commerce_pricelist and commerce_pricelist_item.

Namespace

Drupal\Tests\commerce_pricelist\Kernel

Code

public function testAvailableBundles() {
  $bundle_info = $this->container
    ->get('entity_type.bundle.info')
    ->getAllBundleInfo();
  $price_list_bundles = $bundle_info['commerce_pricelist'];
  $price_list_item_bundles = $bundle_info['commerce_pricelist_item'];
  $this
    ->assertCount(1, $price_list_bundles);
  $this
    ->assertTrue(isset($price_list_bundles['commerce_product_variation']));
  $this
    ->assertCount(1, $price_list_item_bundles);
  $this
    ->assertTrue(isset($price_list_item_bundles['commerce_product_variation']));

  // The test module provides its own purchasable entity type.
  $this
    ->installModule('commerce_pricelist_test');
  $this->container
    ->get('entity_type.manager')
    ->clearCachedDefinitions();
  $this->container
    ->get('entity_type.bundle.info')
    ->clearCachedBundles();
  $bundle_info = $this->container
    ->get('entity_type.bundle.info')
    ->getAllBundleInfo();
  $price_list_bundles = $bundle_info['commerce_pricelist'];
  $price_list_item_bundles = $bundle_info['commerce_pricelist_item'];
  $this
    ->assertCount(2, $price_list_bundles);
  $this
    ->assertTrue(isset($price_list_bundles['commerce_pricelist_widget']));
  $this
    ->assertCount(2, $price_list_item_bundles);
  $this
    ->assertTrue(isset($price_list_item_bundles['commerce_pricelist_widget']));
}