silverstripe-framework/tests/php/Forms/DefaultFormFactoryTest.php

39 lines
989 B
PHP

<?php
namespace SilverStripe\Forms\Tests;
use InvalidArgumentException;
use SilverStripe\Dev\SapphireTest;
use SilverStripe\Forms\DefaultFormFactory;
use SilverStripe\ORM\DataObject;
class DefaultFormFactoryTest extends SapphireTest
{
/**
* @expectedException InvalidArgumentException
* @expectedExceptionMessageRegExp /Missing required context/
*/
public function testGetFormThrowsExceptionOnMissingContext()
{
$factory = new DefaultFormFactory();
$factory->getForm();
}
public function testGetForm()
{
$record = new DataObject();
$record->Title = 'Test';
$factory = new DefaultFormFactory();
$form = $factory->getForm(null, null, ['Record' => $record]);
$this->assertSame($record, $form->getRecord());
}
public function testGetRequiredContext()
{
$factory = new DefaultFormFactory();
$this->assertContains('Record', $factory->getRequiredContext());
}
}