Jarves\Configuration\Bundle::getFieldTypesArray PHP Method

getFieldTypesArray() public method

public getFieldTypesArray ( ) : FieldType[]
return FieldType[]
    public function getFieldTypesArray()
    {
        if ($this->fieldTypes) {
            $result = [];
            foreach ($this->fieldTypes as $fieldType) {
                $result[$fieldType->getId()] = $fieldType->toArray();
            }
            return $result;
        }
    }

Usage Example

コード例 #1
0
ファイル: BundleConfigTest.php プロジェクト: jarves/jarves
    /**
     * @group test
     */
    public function testFieldTypes()
    {
        $xml = <<<EOF
<bundle>
  <fieldTypes>
    <field-type id="text" service="jarves.field.types.text">
      <label>Text</label>
    </field-type>
    <field-type id="tab" service="jarves.field.types.tab" userInterfaceOnly="true">
      <label>Tab</label>
    </field-type>
  </fieldTypes>
</bundle>
EOF;
        $bundleConfig = new Bundle('MyBundle');
        $bundleConfig->initialize($xml);
        $this->assertEquals(2, count($bundleConfig->getFieldTypesArray()));
        $this->assertEquals('jarves.field.types.text', $bundleConfig->getFieldTypes()[0]->getService());
        $this->assertEquals('text', $bundleConfig->getFieldTypes()[0]->getId());
        $this->assertEquals(false, $bundleConfig->getFieldTypes()[0]->isUserInterfaceOnly());
        $this->assertEquals(true, $bundleConfig->getFieldTypes()[1]->isUserInterfaceOnly());
        $exportedXml = $bundleConfig->toXml();
        $this->assertEquals($xml, $exportedXml);
    }