silverstripe-framework/tests/php/Forms/DatalessFieldTest.php
2024-09-18 13:53:44 +12:00

46 lines
1.3 KiB
PHP

<?php
namespace SilverStripe\Forms;
use PHPUnit\Framework\MockObject\MockObject;
use SilverStripe\Dev\SapphireTest;
class DatalessFieldTest extends SapphireTest
{
public function testGetAttributes()
{
$field = new DatalessField('Name');
$result = $field->getAttributes();
$this->assertSame('hidden', $result['type']);
}
public function testFieldHolderAndSmallFieldHolderReturnField()
{
/** @var DatalessField|MockObject $mock */
$mock = $this->getMockBuilder(DatalessField::class)
->disableOriginalConstructor()
->onlyMethods(['Field'])
->getMock();
$properties = [
'foo' => 'bar',
];
$mock->expects($this->exactly(2))->method('Field')->with($properties)->willReturn('boo!');
$fieldHolder = $mock->FieldHolder($properties);
$smallFieldHolder = $mock->SmallFieldHolder($properties);
$this->assertSame('boo!', $fieldHolder);
$this->assertSame('boo!', $smallFieldHolder);
}
public function testPerformReadonlyTransformation()
{
$field = new DatalessField('Test');
$result = $field->performReadonlyTransformation();
$this->assertInstanceOf(DatalessField::class, $result);
$this->assertTrue($result->isReadonly());
}
}