summaryrefslogtreecommitdiffstats
path: root/core/modules/breakpoint/src/Tests/BreakpointGroupAPITest.php
blob: f8a019119a3dc8993b6c43ee7c1e9d8a8376a237 (plain)
1
2
3
4
5
6
7
8
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
67
68
69
70
71
72
73
74
75
<?php
/**
 * @file
 * Definition of Drupal\breakpoint\Tests\BreakpointGroupAPITest.
 */

namespace Drupal\breakpoint\Tests;

use Drupal\breakpoint\Tests\BreakpointsTestBase;
use Drupal\breakpoint\Entity\BreakpointGroup;
use Drupal\breakpoint\Entity\Breakpoint;
use Drupal\breakpoint\InvalidBreakpointNameException;
use Drupal\breakpoint\InvalidBreakpointSourceException;
use Drupal\breakpoint\InvalidBreakpointSourceTypeException;
use Drupal\Component\Utility\Unicode;

/**
 * Tests general API functions of the breakpoint module.
 *
 * @group breakpoint
 */
class BreakpointGroupAPITest extends BreakpointGroupTestBase {

  /**
   * Test Breakpoint::buildConfigName().
   */
  public function testConfigName() {
    // Try an invalid sourceType.
    $label = $this->randomMachineName();
    $breakpoint_group = entity_create('breakpoint_group', array(
      'label' => $label,
      'name' => drupal_strtolower($label),
      'source' => 'custom_module',
      'sourceType' => 'oops',
    ));

    $exception = FALSE;
    try {
      $breakpoint_group->save();
    }
    catch (InvalidBreakpointSourceTypeException $e) {
      $exception = TRUE;
    }
    $this->assertTrue($exception, 'An exception is thrown when an invalid sourceType is entered.');

    // Try an invalid source.
    $breakpoint_group = $breakpoint_group->createDuplicate();
    $breakpoint_group->name = '';
    $breakpoint_group->sourceType = Breakpoint::SOURCE_TYPE_USER_DEFINED;
    $breakpoint_group->source = 'custom*_module source';

    $exception = FALSE;
    try {
      $breakpoint_group->save();
    }
    catch (InvalidBreakpointSourceException $e) {
      $exception = TRUE;
    }
    $this->assertTrue($exception, 'An exception is thrown when an invalid source is entered.');

    // Try a valid breakpoint_group.
    $breakpoint_group = $breakpoint_group->createDuplicate();
    $breakpoint_group->name = 'test';
    $breakpoint_group->source = 'custom_module_source';

    $exception = FALSE;
    try {
      $breakpoint_group->save();
    }
    catch (\Exception $e) {
      $exception = TRUE;
    }
    $this->assertFalse($exception, 'No exception is thrown when a valid data is passed.');
  }
}