Code
Explorer
You are a developer and looking for Shopware projects?
Apply Now!
addDefaultChildrenIfNoneSet example
$this
->
addMailerSection
(
$rootNode
)
;
return
$treeBuilder
;
}
private
function
addFormThemesSection
(
ArrayNodeDefinition
$rootNode
)
: void
{
$rootNode
->
fixXmlConfig
(
'form_theme'
)
->
children
(
)
->
arrayNode
(
'form_themes'
)
->
addDefaultChildrenIfNoneSet
(
)
->
prototype
(
'scalar'
)
->
defaultValue
(
'form_div_layout.html.twig'
)
->
end
(
)
->
example
(
[
'@My/form.html.twig'
]
)
->
validate
(
)
->
ifTrue
(
fn
(
$v
)
=> !\
in_array
(
'form_div_layout.html.twig',
$v
)
)
->
then
(
fn
(
$v
)
=>
array_merge
(
[
'form_div_layout.html.twig'
]
,
$v
)
)
->
end
(
)
->
end
(
)
->
end
(
)
;
}
->
prototype
(
'array'
)
;
$node
->
getNode
(
)
;
}
public
function
testPrototypeNodesCantHaveADefaultValueWhenUsingDefaultChildren
(
)
{
$this
->
expectException
(
InvalidDefinitionException::
class
)
;
$node
=
new
ArrayNodeDefinition
(
'root'
)
;
$node
->
defaultValue
(
[
]
)
->
addDefaultChildrenIfNoneSet
(
'foo'
)
->
prototype
(
'array'
)
;
$node
->
getNode
(
)
;
}
public
function
testPrototypedArrayNodeDefaultWhenUsingDefaultChildren
(
)
{
$node
=
new
ArrayNodeDefinition
(
'root'
)
;
$node
->
addDefaultChildrenIfNoneSet
(
)
->
prototype
(
'array'
)
;