DomainNavBlockTest.php in Domain Access 8
File
domain/tests/src/Functional/DomainNavBlockTest.php
View source
<?php
namespace Drupal\Tests\domain\Functional;
use Drupal\Core\Session\AccountInterface;
class DomainNavBlockTest extends DomainTestBase {
public static $modules = [
'domain',
'node',
'block',
];
public function testDomainNav() {
$this
->domainCreateTestDomains(4);
$domains = \Drupal::entityTypeManager()
->getStorage('domain')
->loadMultiple();
$block = $this
->drupalPlaceBlock('domain_nav_block');
user_role_grant_permissions(AccountInterface::ANONYMOUS_ROLE, [
'use domain nav block',
]);
$this
->drupalGet('<front>');
foreach ($domains as $id => $domain) {
$this
->findLink($domain
->label());
}
$disabled = $domains['one_example_com'];
$disabled
->disable();
$this
->drupalGet('<front>');
foreach ($domains as $id => $domain) {
if ($id != 'one_example_com') {
$this
->findLink($domain
->label());
}
else {
$this
->assertNoRaw($domain
->label());
}
}
user_role_grant_permissions(AccountInterface::ANONYMOUS_ROLE, [
'access inactive domains',
]);
$this
->drupalGet('<front>');
foreach ($domains as $id => $domain) {
$this
->findLink($domain
->label());
}
$this
->config('block.block.' . $block
->id())
->set('settings.link_options', 'active')
->set('settings.link_label', 'hostname')
->save();
$this
->drupalGet('user/login');
foreach ($domains as $id => $domain) {
$this
->findLink($domain
->getHostname());
$this
->assertRaw($domain
->buildUrl(base_path() . 'user/login'));
}
$this
->config('block.block.' . $block
->id())
->set('settings.link_options', 'home')
->set('settings.link_theme', 'menu')
->set('settings.link_label', 'url')
->save();
$this
->drupalGet('user/login');
foreach ($domains as $id => $domain) {
$this
->findLink($domain
->getPath());
$this
->assertRaw($domain
->getPath());
}
}
}