This repository has been archived on 2023-08-20. You can view files and clone it, but cannot push or open issues or pull requests.
symfony/src/Symfony/Component/Form/Tests/CompoundFormPerformanceTest.php

51 lines
1.7 KiB
PHP
Raw Normal View History

<?php
/*
* This file is part of the Symfony package.
*
* (c) Fabien Potencier <fabien@symfony.com>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Symfony\Component\Form\Tests;
2017-03-01 15:03:05 +00:00
use Symfony\Component\Form\Test\FormPerformanceTestCase;
/**
* @author Bernhard Schussek <bschussek@gmail.com>
*/
2017-03-01 15:03:05 +00:00
class CompoundFormPerformanceTest extends FormPerformanceTestCase
{
/**
2014-12-21 17:00:50 +00:00
* Create a compound form multiple times, as happens in a collection form.
*
* @group benchmark
*/
public function testArrayBasedForm()
{
$this->setMaxRunningTime(1);
for ($i = 0; $i < 40; ++$i) {
$form = $this->factory->createBuilder('Symfony\Component\Form\Extension\Core\Type\FormType')
->add('firstName', 'Symfony\Component\Form\Extension\Core\Type\TextType')
->add('lastName', 'Symfony\Component\Form\Extension\Core\Type\TextType')
2019-01-16 09:39:14 +00:00
->add('color', 'Symfony\Component\Form\Extension\Core\Type\ChoiceType', [
'choices' => ['red' => 'Red', 'blue' => 'Blue'],
'required' => false,
2019-01-16 09:39:14 +00:00
])
->add('age', 'Symfony\Component\Form\Extension\Core\Type\NumberType')
->add('birthDate', 'Symfony\Component\Form\Extension\Core\Type\BirthdayType')
2019-01-16 09:39:14 +00:00
->add('city', 'Symfony\Component\Form\Extension\Core\Type\ChoiceType', [
// simulate 300 different cities
'choices' => range(1, 300),
2019-01-16 09:39:14 +00:00
])
->getForm();
// load the form into a view
$form->createView();
}
}
}