Skip to content

Commit a2ccdcf

Browse files
authored
tests: Demonstrate orphan fieldsets (#83)
1 parent 387a2cd commit a2ccdcf

File tree

1 file changed

+29
-0
lines changed

1 file changed

+29
-0
lines changed

tests/unit/CreateButtonTest.php

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
<?php
22

3+
use Nette\Application\UI\Form;
4+
use Nette\Forms\Container;
35
use Nette\Forms\Controls\SubmitButton;
6+
use Contributte\FormMultiplier\Multiplier;
47
use Contributte\FormMultiplier\Submitter;
58

69
class CreateButtonTest extends \Codeception\TestCase\Test
@@ -132,4 +135,30 @@ public function testFormEvents()
132135
$this->assertTrue($called);
133136
}
134137

138+
public function testNoOrphanFieldsets()
139+
{
140+
$i = 1;
141+
$form = new Form();
142+
$form['members'] = $membersMultiplier = new Multiplier(function (Container $container) use ($form, &$i) {
143+
$group = $form->addGroup('Team member #' . $i++);
144+
$container->setCurrentGroup($group);
145+
$container->addText('name', 'Name');
146+
});
147+
$form->setCurrentGroup(null);
148+
$membersMultiplier->addCreateButton('add');
149+
150+
$req = $this->services->form->createRequest($form);
151+
$response = $req->setPost([
152+
'members' => [
153+
[],
154+
'multiplier_creator' => '',
155+
],
156+
])->send();
157+
158+
$dom = $response->toDomQuery();
159+
codecept_debug($response->toString());
160+
161+
$this->assertCount(2, $dom->find('fieldset'), 'After adding a container, there should be two fieldsets.');
162+
}
163+
135164
}

0 commit comments

Comments
 (0)