ConfigEntityDependencyTest.php 2.35 KB
Newer Older
1
2
<?php

3
4
5
6
7
8
/**
 * @file
 * Contains \Drupal\Tests\Core\Config\Entity\ConfigEntityDependencyTest.
 */

namespace Drupal\Tests\Core\Config\Entity;
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66

use Drupal\Tests\UnitTestCase;
use Drupal\Core\Config\Entity\ConfigEntityDependency;

/**
 * Tests the ConfigEntityDependency class.
 *
 * @group Drupal
 * @group Config
 */
class ConfigEntityDependencyTest extends UnitTestCase {

  public static function getInfo() {
    return array(
      'name' => 'ConfigEntityDependency test',
      'description' => 'Tests the ConfigEntityDependency class.',
      'group' => 'Configuration'
    );
  }

  public function testEmptyDependencies() {
    $dep = new ConfigEntityDependency('config_test.dynamic.entity_id', array());

    $this->assertEquals('config_test.dynamic.entity_id', $dep->getConfigDependencyName());
    $this->assertEquals(array(), $dep->getDependencies('theme'));
    $this->assertEquals(array(), $dep->getDependencies('entity'));
    $this->assertEquals(array('config_test'), $dep->getDependencies('module'));
    $this->assertTrue($dep->hasDependency('module', 'config_test'));
    $this->assertFalse($dep->hasDependency('module', 'views'));
  }

  public function testWithDependencies() {
    $values = array(
      'uuid' => '60db47f4-54fb-4c86-a439-5769fbda4bd1',
      'dependencies' => array(
        'module' => array(
          'node',
          'views'
        ),
        'entity' => array(
          'config_test.dynamic.entity_id:745b0ce0-aece-42dd-a800-ade5b8455e84',
        ),
      ),
    );
    $dep = new ConfigEntityDependency('config_test.dynamic.entity_id', $values);

    $this->assertEquals(array(), $dep->getDependencies('theme'));
    $this->assertEquals(array('config_test.dynamic.entity_id:745b0ce0-aece-42dd-a800-ade5b8455e84'), $dep->getDependencies('entity'));
    $this->assertEquals(array('node', 'views', 'config_test'), $dep->getDependencies('module'));
    $this->assertTrue($dep->hasDependency('module', 'config_test'));
    $this->assertTrue($dep->hasDependency('module', 'views'));
    $this->assertTrue($dep->hasDependency('module', 'node'));
    $this->assertFalse($dep->hasDependency('module', 'block'));
    $this->assertTrue($dep->hasDependency('entity', 'config_test.dynamic.entity_id:745b0ce0-aece-42dd-a800-ade5b8455e84'));
    $this->assertFalse($dep->hasDependency('entity', 'config_test.dynamic.another_id:7dfa5cb7-2248-4d52-8c00-cd8e02d1e78e'));
  }

}