public function ConstraintsTest::testInstagramEmbedCodeConstraint in Media entity Instagram 8
Same name and namespace in other branches
- 8.2 tests/src/Unit/ConstraintsTest.php \Drupal\Tests\media_entity_instagram\Unit\ConstraintsTest::testInstagramEmbedCodeConstraint()
Tests InstagramEmbedCode constraints.
@covers \Drupal\media_entity_instagram\Plugin\Validation\Constraint\InstagramEmbedCodeConstraint @covers \Drupal\media_entity_instagram\Plugin\Validation\Constraint\InstagramEmbedCodeConstraintValidator
@dataProvider embedCodeProvider
File
- tests/
src/ Unit/ ConstraintsTest.php, line 26
Class
- ConstraintsTest
- Tests media_entity_instagram constrains.
Namespace
Drupal\Tests\media_entity_instagram\UnitCode
public function testInstagramEmbedCodeConstraint($embed_code, $expected_violation_count) {
// Check message in constraint.
$constraint = new InstagramEmbedCodeConstraint();
$this
->assertEquals(addslashes('Not valid Instagram URL/Embed code.'), addslashes($constraint->message), 'Correct constraint message found.');
$execution_context = $this
->getMockBuilder('\\Drupal\\Core\\TypedData\\Validation\\ExecutionContext')
->disableOriginalConstructor()
->getMock();
if ($expected_violation_count) {
$execution_context
->expects($this
->exactly($expected_violation_count))
->method('addViolation')
->with($constraint->message);
}
else {
$execution_context
->expects($this
->exactly($expected_violation_count))
->method('addViolation');
}
$validator = new InstagramEmbedCodeConstraintValidator();
$validator
->initialize($execution_context);
$definition = $this
->getMock(ComplexDataDefinitionInterface::class);
$definition
->method('getPropertyDefinitions')
->willReturn([]);
$data = new StringLongItem($definition);
$data
->set('value', $embed_code);
$validator
->validate($data, $constraint);
}