class LinkNotExistingInternalConstraintValidatorTest
@coversDefaultClass \Drupal\link\Plugin\Validation\Constraint\LinkNotExistingInternalConstraintValidator
      
    
@group Link
Hierarchy
- class \Drupal\Tests\UnitTestCase uses \Drupal\Tests\Traits\PhpUnitWarnings, \Drupal\Tests\PhpUnitCompatibilityTrait, \Symfony\Bridge\PhpUnit\ExpectDeprecationTrait extends \PHPUnit\Framework\TestCase- class \Drupal\Tests\link\Unit\Plugin\Validation\Constraint\LinkNotExistingInternalConstraintValidatorTest extends \Drupal\Tests\UnitTestCase
 
Expanded class hierarchy of LinkNotExistingInternalConstraintValidatorTest
File
- 
              core/modules/ link/ tests/ src/ Unit/ Plugin/ Validation/ Constraint/ LinkNotExistingInternalConstraintValidatorTest.php, line 16 
Namespace
Drupal\Tests\link\Unit\Plugin\Validation\ConstraintView source
class LinkNotExistingInternalConstraintValidatorTest extends UnitTestCase {
  
  /**
   * @covers ::validate
   * @dataProvider providerValidate
   */
  public function testValidate($value, $valid) {
    $context = $this->createMock(ExecutionContextInterface::class);
    if ($valid) {
      $context->expects($this->never())
        ->method('addViolation');
    }
    else {
      $context->expects($this->once())
        ->method('addViolation');
    }
    $constraint = new LinkNotExistingInternalConstraint();
    $validator = new LinkNotExistingInternalConstraintValidator();
    $validator->initialize($context);
    $validator->validate($value, $constraint);
  }
  
  /**
   * Data provider for ::testValidate.
   */
  public function providerValidate() {
    $data = [];
    // External URL
    $data[] = [
      Url::fromUri('https://www.drupal.org'),
      TRUE,
    ];
    // Existing routed URL.
    $url = Url::fromRoute('example.existing_route');
    $url_generator = $this->createMock('Drupal\\Core\\Routing\\UrlGeneratorInterface');
    $url_generator->expects($this->any())
      ->method('generateFromRoute')
      ->with('example.existing_route', [], [])
      ->willReturn('/example/existing');
    $url->setUrlGenerator($url_generator);
    $data[] = [
      $url,
      TRUE,
    ];
    // Non-existent routed URL.
    $url = Url::fromRoute('example.not_existing_route');
    $url_generator = $this->createMock('Drupal\\Core\\Routing\\UrlGeneratorInterface');
    $url_generator->expects($this->any())
      ->method('generateFromRoute')
      ->with('example.not_existing_route', [], [])
      ->willThrowException(new RouteNotFoundException());
    $url->setUrlGenerator($url_generator);
    $data[] = [
      $url,
      FALSE,
    ];
    foreach ($data as &$single_data) {
      $link = $this->createMock('Drupal\\link\\LinkItemInterface');
      $link->expects($this->any())
        ->method('getUrl')
        ->willReturn($single_data[0]);
      $single_data[0] = $link;
    }
    return $data;
  }
  
  /**
   * @covers ::validate
   *
   * @see \Drupal\Core\Url::fromUri
   */
  public function testValidateWithMalformedUri() {
    $link = $this->createMock('Drupal\\link\\LinkItemInterface');
    $link->expects($this->any())
      ->method('getUrl')
      ->willThrowException(new \InvalidArgumentException());
    $context = $this->createMock(ExecutionContextInterface::class);
    $context->expects($this->never())
      ->method('addViolation');
    $constraint = new LinkNotExistingInternalConstraint();
    $validator = new LinkNotExistingInternalConstraintValidator();
    $validator->initialize($context);
    $validator->validate($link, $constraint);
  }
}Members
| Title Sort descending | Deprecated | Modifiers | Object type | Summary | Overrides | 
|---|---|---|---|---|---|
| LinkNotExistingInternalConstraintValidatorTest::providerValidate | public | function | Data provider for ::testValidate. | ||
| LinkNotExistingInternalConstraintValidatorTest::testValidate | public | function | @covers ::validate[[api-linebreak]] @dataProvider providerValidate | ||
| LinkNotExistingInternalConstraintValidatorTest::testValidateWithMalformedUri | public | function | @covers ::validate[[api-linebreak]] | ||
| PhpUnitWarnings::$deprecationWarnings | private static | property | Deprecation warnings from PHPUnit to raise with @trigger_error(). | ||
| PhpUnitWarnings::addWarning | public | function | Converts PHPUnit deprecation warnings to E_USER_DEPRECATED. | ||
| UnitTestCase::$randomGenerator | protected | property | The random generator. | ||
| UnitTestCase::$root | protected | property | The app root. | 1 | |
| UnitTestCase::assertArrayEquals | Deprecated | protected | function | Asserts if two arrays are equal by sorting them first. | |
| UnitTestCase::getClassResolverStub | protected | function | Returns a stub class resolver. | ||
| UnitTestCase::getConfigFactoryStub | public | function | Returns a stub config factory that behaves according to the passed array. | ||
| UnitTestCase::getConfigStorageStub | public | function | Returns a stub config storage that returns the supplied configuration. | ||
| UnitTestCase::getContainerWithCacheTagsInvalidator | protected | function | Sets up a container with a cache tags invalidator. | ||
| UnitTestCase::getRandomGenerator | protected | function | Gets the random generator for the utility methods. | ||
| UnitTestCase::getStringTranslationStub | public | function | Returns a stub translation manager that just returns the passed string. | ||
| UnitTestCase::randomMachineName | public | function | Generates a unique random string containing letters and numbers. | ||
| UnitTestCase::setUp | protected | function | 338 | ||
| UnitTestCase::setUpBeforeClass | public static | function | 
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.
