DomainConditionTest.php in Domain Access 8        
                          
                  
                        
  
  
  
  
  
File
  domain/tests/src/Functional/Condition/DomainConditionTest.php
  
    View source  
  <?php
namespace Drupal\Tests\domain\Functional\Condition;
use Drupal\Tests\domain\Functional\DomainTestBase;
class DomainConditionTest extends DomainTestBase {
  
  protected $manager;
  
  protected $testDomain;
  
  protected $notDomain;
  
  protected $domains;
  
  public function setUp() {
    parent::setUp();
    
    $this->manager = $this->container
      ->get('plugin.manager.condition');
    
    $this
      ->domainCreateTestDomains(5);
    
    $this->domains = \Drupal::entityTypeManager()
      ->getStorage('domain')
      ->loadMultiple();
    $this->testDomain = array_shift($this->domains);
    $this->notDomain = array_shift($this->domains);
  }
  
  public function testConditions() {
    
    $configuration = [
      'domains' => [
        $this->testDomain
          ->id() => $this->testDomain
          ->id(),
      ],
      'context' => [
        'domain' => $this->notDomain,
      ],
    ];
    $condition = $this->manager
      ->createInstance('domain', $configuration);
    $this
      ->assertFalse($condition
      ->execute(), 'Domain request condition fails on wrong domain.');
    
    $configuration = [
      'domains' => [
        $this->testDomain
          ->id() => $this->testDomain
          ->id(),
      ],
      'context' => [
        'domain' => $this->testDomain,
      ],
    ];
    $condition = $this->manager
      ->createInstance('domain', $configuration);
    $this
      ->assertTrue($condition
      ->execute(), 'Domain request condition succeeds on matching domain.');
    
    $this
      ->assertEqual($condition
      ->summary(), 'Active domain is ' . $this->testDomain
      ->label());
    
    $condition
      ->setConfig('negate', TRUE);
    $this
      ->assertEqual($condition
      ->summary(), 'Active domain is not ' . $this->testDomain
      ->label());
    
    $this
      ->assertFalse($condition
      ->execute(), 'Domain request condition fails when condition negated.');
  }
}