public function TypedDataDefinitionTest::testLists in Zircon Profile 8.0
Same name and namespace in other branches
- 8 core/modules/system/src/Tests/TypedData/TypedDataDefinitionTest.php \Drupal\system\Tests\TypedData\TypedDataDefinitionTest::testLists()
Tests deriving metadata about list items.
File
- core/
modules/ system/ src/ Tests/ TypedData/ TypedDataDefinitionTest.php, line 42 - Contains \Drupal\system\Tests\TypedData\TypedDataDefinitionTest.
Class
- TypedDataDefinitionTest
- Tests deriving metadata of core data types.
Namespace
Drupal\system\Tests\TypedDataCode
public function testLists() {
$list_definition = ListDataDefinition::create('string');
$this
->assertTrue($list_definition instanceof ListDataDefinitionInterface);
$item_definition = $list_definition
->getItemDefinition();
$this
->assertTrue($item_definition instanceof DataDefinitionInterface);
$this
->assertEqual($item_definition
->getDataType(), 'string');
// Test using the definition factory.
$list_definition2 = $this->typedDataManager
->createListDataDefinition('string');
$this
->assertTrue($list_definition2 instanceof ListDataDefinitionInterface);
$this
->assertEqual($list_definition, $list_definition2);
// Test creating the definition of data with type 'list', which is the same
// as creating a definition of a list of items of type 'any'.
$list_definition = $this->typedDataManager
->createDataDefinition('list');
$this
->assertTrue($list_definition instanceof ListDataDefinitionInterface);
$this
->assertEqual($list_definition
->getDataType(), 'list');
$this
->assertEqual($list_definition
->getItemDefinition()
->getDataType(), 'any');
}