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

46 lines
1.3 KiB
PHP
Raw Normal View History

2018-10-20 17:59:55 +02:00
<?php
namespace SilverStripe\Forms;
use PHPUnit\Framework\MockObject\MockObject;
2018-10-20 17:59:55 +02:00
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 */
2018-10-20 17:59:55 +02:00
$mock = $this->getMockBuilder(DatalessField::class)
->disableOriginalConstructor()
2024-09-18 03:53:44 +02:00
->onlyMethods(['Field'])
2018-10-20 17:59:55 +02:00
->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());
}
}