diff --git a/core/tests/Drupal/Tests/Core/Entity/ContentEntityBaseUnitTest.php b/core/tests/Drupal/Tests/Core/Entity/ContentEntityBaseUnitTest.php index 15ad05d..39f8d76 100644 --- a/core/tests/Drupal/Tests/Core/Entity/ContentEntityBaseUnitTest.php +++ b/core/tests/Drupal/Tests/Core/Entity/ContentEntityBaseUnitTest.php @@ -35,6 +35,13 @@ class ContentEntityBaseUnitTest extends UnitTestCase { protected $entity; /** + * An entity with no defined language to test. + * + * @var \Drupal\Core\Entity\ContentEntityBase|\PHPUnit_Framework_MockObject_MockObject + */ + protected $entityUnd; + + /** * The entity type used for testing. * * @var \Drupal\Core\Entity\EntityTypeInterface|\PHPUnit_Framework_MockObject_MockObject @@ -104,8 +111,8 @@ protected function setUp() { $this->id = 1; $values = array( 'id' => $this->id, - 'langcode' => 'en', 'uuid' => '3bb9ee60-bea5-4622-b89b-a63319d10b3a', + 'defaultLangcode' => array(LanguageInterface::LANGCODE_DEFAULT => 'en'), ); $this->entityTypeId = $this->randomMachineName(); $this->bundle = $this->randomMachineName(); @@ -129,15 +136,9 @@ protected function setUp() { $this->typedDataManager = $this->getMockBuilder('\Drupal\Core\TypedData\TypedDataManager') ->disableOriginalConstructor() ->getMock(); - $typed_data = $this->getMockBuilder('\Drupal\Core\Field\FieldItemList') - ->disableOriginalConstructor() - ->getMock(); - $this->typedDataManager->expects($this->any()) - ->method('getPropertyInstance') - ->will($this->returnValue($typed_data)); $english = new Language(array('id' => 'en')); - $not_specified = new Language(array('id' => LanguageInterface::LANGCODE_NOT_SPECIFIED)); + $not_specified = new Language(array('id' => LanguageInterface::LANGCODE_NOT_SPECIFIED, 'locked' => TRUE)); $this->languageManager = $this->getMock('\Drupal\Core\Language\LanguageManagerInterface'); $this->languageManager->expects($this->any()) ->method('getLanguages') @@ -179,6 +180,9 @@ protected function setUp() { ->with($this->entityTypeId, $this->bundle) ->will($this->returnValue($this->fieldDefinitions)); $this->entity = $this->getMockForAbstractClass('\Drupal\Core\Entity\ContentEntityBase', array($values, $this->entityTypeId, $this->bundle)); + + $values['defaultLangcode'] = array(LanguageInterface::LANGCODE_DEFAULT => LanguageInterface::LANGCODE_NOT_SPECIFIED); + $this->entityUnd = $this->getMockForAbstractClass('\Drupal\Core\Entity\ContentEntityBase', array($values, $this->entityTypeId, $this->bundle)); } /** @@ -268,7 +272,13 @@ public function testIsTranslatable() { $this->languageManager->expects($this->any()) ->method('isMultilingual') ->will($this->returnValue(TRUE)); + $this->assertTrue($this->entity->language()->id == 'en'); + $this->assertFalse($this->entity->language()->locked); $this->assertTrue($this->entity->isTranslatable()); + + $this->assertTrue($this->entityUnd->language()->id == LanguageInterface::LANGCODE_NOT_SPECIFIED); + $this->assertTrue($this->entityUnd->language()->locked); + $this->assertFalse($this->entityUnd->isTranslatable()); } /** @@ -282,21 +292,6 @@ public function testIsTranslatableForMonolingual() { } /** - * @covers ::isTranslatable - */ - public function testIsTranslatableForUndefined() { - $this->entityManager->expects($this->any()) - ->method('getBundleInfo') - ->with($this->entityTypeId) - ->will($this->returnValue(array( - $this->bundle => array( - 'translatable' => TRUE, - ), - ))); - $this->assertFalse($this->entity->isTranslatable()); - } - - /** * @covers ::preSaveRevision */ public function testPreSaveRevision() {