PHP Class eZ\Publish\Core\FieldType\Tests\FieldTypeTest

Inheritance: extends PHPUnit_Framework_TestCas\PHPUnit_Framework_TestCase
Show file Open project: ezsystems/ezpublish-kernel Class Usage Examples

Public Methods

Method Description
provideDataForGetName ( ) : array Provides data for the getName() test.
provideInValidFieldSettings ( ) : array Provide data sets with field settings which are considered invalid by the {@link validateFieldSettings()} method. The method must return a non-empty array of validation error when receiving such field settings.
provideInputForFromHash ( ) : array Provide input to fromHash() method.
provideInputForToHash ( ) : array Provide input for the toHash() method.
provideInvalidDataForValidate ( ) : array Provides data sets with validator configuration and/or field settings, field value and corresponding validation errors returned by the {@link validate()} method.
provideInvalidInputForAcceptValue ( ) : array Data provider for invalid input to acceptValue().
provideInvalidValidatorConfiguration ( ) : array Provide data sets with validator configurations which are considered invalid by the {@link validateValidatorConfiguration()} method. The method must return a non-empty array of valiation errors when receiving one of the provided values.
provideValidDataForValidate ( ) : array Provides data sets with validator configuration and/or field settings and field value which are considered valid by the {@link validate()} method.
provideValidFieldSettings ( ) : array Provide data sets with field settings which are considered valid by the {@link validateFieldSettings()} method.
provideValidInputForAcceptValue ( ) : array Data provider for valid input to acceptValue().
provideValidValidatorConfiguration ( ) : array Provide data sets with validator configurations which are considered valid by the {@link validateValidatorConfiguration()} method.
testAcceptGetEmptyValue ( ) Tests that default empty value is unchanged by acceptValue() method.
testAcceptValue ( mixed $inputValue, mixed $expectedOutputValue )
testAcceptValueFailsOnInvalidValues ( mixed $inputValue, Exception $expectedException )
testEmptyValue ( )
testEmptyValueIsEmpty ( )
testFieldSettingsFromHash ( $inputSettings )
testFieldSettingsToHash ( $inputSettings )
testFromHash ( $inputHash, array $expectedResult )
testGetFieldTypeIdentifier ( )
testGetName ( eZ\Publish\SPI\FieldType\Value $value, string $expected )
testSettingsSchema ( )
testToHash ( mixed $inputValue, array $expectedResult )
testValidateFieldSettingsInvalid ( mixed $inputSettings )
testValidateFieldSettingsValid ( mixed $inputSettings )
testValidateInvalid ( $fieldDefinitionData, $value, $errors )
testValidateValid ( $fieldDefinitionData, $value )
testValidateValidatorConfigurationInvalid ( mixed $inputConfiguration )
testValidateValidatorConfigurationValid ( mixed $inputConfiguration )
testValidatorConfigurationFromHash ( mixed $inputConfiguration )
testValidatorConfigurationSchema ( )
testValidatorConfigurationToHash ( mixed $inputConfiguration )

Protected Methods

Method Description
assertIsValidHashValue ( mixed $actualHash, array $keyChain = [] ) Asserts that the given $actualHash complies to the rules for hashes.
createFieldTypeUnderTest ( ) : FieldType Returns the field type under test.
doValidate ( $fieldDefinitionData, $value )
getEmptyValueExpectation ( ) : mixed Returns the empty value expected from the field type.
getFieldTypeUnderTest ( ) : eZ\Publish\SPI\FieldType\FieldType Retrieves a test wide cached version of the field type under test.
getSettingsSchemaExpectation ( ) : array Returns the settings schema expected from the field type.
getTransformationProcessorMock ( ) : TransformationProcessor | PHPUnit_Framework_MockObject_MockObject
getValidatorConfigurationSchemaExpectation ( ) : array Returns the validator configuration schema expected from the field type.
provideFieldTypeIdentifier ( ) : string Returns the identifier of the field type under test.

Method Details

assertIsValidHashValue() protected method

Asserts that the given $actualHash complies to the rules for hashes.
protected assertIsValidHashValue ( mixed $actualHash, array $keyChain = [] )
$actualHash mixed
$keyChain array

createFieldTypeUnderTest() abstract protected method

This method is used by all test cases to retrieve the field type under test. Just create the FieldType instance using mocks from the provided get*Mock() methods and/or custom get*Mock() implementations. You MUST NOT take care for test case wide caching of the field type, just return a new instance from this method!
abstract protected createFieldTypeUnderTest ( ) : FieldType
return FieldType

doValidate() protected method

protected doValidate ( $fieldDefinitionData, $value )

getEmptyValueExpectation() abstract protected method

Returns the empty value expected from the field type.
abstract protected getEmptyValueExpectation ( ) : mixed
return mixed

getFieldTypeUnderTest() protected method

Uses {@link createFieldTypeUnderTest()} to create the instance initially.
protected getFieldTypeUnderTest ( ) : eZ\Publish\SPI\FieldType\FieldType
return eZ\Publish\SPI\FieldType\FieldType

getSettingsSchemaExpectation() abstract protected method

Returns the settings schema expected from the field type.
abstract protected getSettingsSchemaExpectation ( ) : array
return array

getTransformationProcessorMock() protected method

protected getTransformationProcessorMock ( ) : TransformationProcessor | PHPUnit_Framework_MockObject_MockObject
return eZ\Publish\Core\Persistence\TransformationProcessor | PHPUnit_Framework_MockObject_MockObject

getValidatorConfigurationSchemaExpectation() abstract protected method

Returns the validator configuration schema expected from the field type.
abstract protected getValidatorConfigurationSchemaExpectation ( ) : array
return array

provideDataForGetName() abstract public method

Provides data for the getName() test.
abstract public provideDataForGetName ( ) : array
return array

provideFieldTypeIdentifier() abstract protected method

Returns the identifier of the field type under test.
abstract protected provideFieldTypeIdentifier ( ) : string
return string

provideInValidFieldSettings() public method

ATTENTION: This is a default implementation, which must be overwritten if a FieldType supports field settings! Returns an array of data provider sets with a single argument: A valid set of field settings. For example: return array( array( true, ), array( array( 'nonExistentKey' => 2 ) ), ... );

provideInputForFromHash() abstract public method

Returns an array of data provider sets with 2 arguments: 1. The valid input to fromHash(), 2. The expected return value from fromHash(). For example: return array( array( null, null ), array( array( 'path' => 'some/file/here', 'fileName' => 'sindelfingen.jpg', 'fileSize' => 2342, 'downloadCount' => 0, 'mimeType' => 'image/jpeg', ), new BinaryFileValue( array( 'path' => 'some/file/here', 'fileName' => 'sindelfingen.jpg', 'fileSize' => 2342, 'downloadCount' => 0, 'mimeType' => 'image/jpeg', ) ) ), ... );
abstract public provideInputForFromHash ( ) : array
return array

provideInputForToHash() abstract public method

Returns an array of data provider sets with 2 arguments: 1. The valid input to toHash(), 2. The expected return value from toHash(). For example: return array( array( null, null ), array( new BinaryFileValue( array( 'path' => 'some/file/here', 'fileName' => 'sindelfingen.jpg', 'fileSize' => 2342, 'downloadCount' => 0, 'mimeType' => 'image/jpeg', ) ), array( 'path' => 'some/file/here', 'fileName' => 'sindelfingen.jpg', 'fileSize' => 2342, 'downloadCount' => 0, 'mimeType' => 'image/jpeg', ) ), ... );
abstract public provideInputForToHash ( ) : array
return array

provideInvalidDataForValidate() public method

ATTENTION: This is a default implementation, which must be overwritten if a FieldType supports validation! For example: return array( array( array( "validatorConfiguration" => array( "IntegerValueValidator" => array( "minIntegerValue" => 5, "maxIntegerValue" => 10 ), ), ), new IntegerValue( 3 ), array( new ValidationError( "The value can not be lower than %size%.", null, array( "%size%" => 5 ), ), ), ), array( array( "fieldSettings" => array( "isMultiple" => false ), ), new CountryValue( "BE" => array( "Name" => "Belgium", "Alpha2" => "BE", "Alpha3" => "BEL", "IDC" => 32, ), "FR" => array( "Name" => "France", "Alpha2" => "FR", "Alpha3" => "FRA", "IDC" => 33, ), ) ), array( new ValidationError( "Field definition does not allow multiple countries to be selected." ), ), ... );

provideInvalidInputForAcceptValue() abstract public method

Returns an array of data provider sets with 2 arguments: 1. The invalid input to acceptValue(), 2. The expected exception type as a string. For example: return array( array( new \stdClass(), 'eZ\\Publish\\Core\\Base\\Exceptions\\InvalidArgumentException', ), array( array(), 'eZ\\Publish\\Core\\Base\\Exceptions\\InvalidArgumentException', ), ... );
abstract public provideInvalidInputForAcceptValue ( ) : array
return array

provideInvalidValidatorConfiguration() public method

ATTENTION: This is a default implementation, which must be overwritten if a FieldType supports validators! Returns an array of data provider sets with a single argument: A valid set of validator configurations. For example: return array( array( array( 'NonExistentValidator' => array(), ), ), array( array( Typos 'InTEgervALUeVALIdator' => array( 'minIntegerValue' => 0, 'maxIntegerValue' => 23, ) ) ), array( array( 'IntegerValueValidator' => array( Incorrect value types 'minIntegerValue' => true, 'maxIntegerValue' => false, ) ) ), ... );

provideValidDataForValidate() public method

ATTENTION: This is a default implementation, which must be overwritten if a FieldType supports validation! For example: return array( array( array( "validatorConfiguration" => array( "StringLengthValidator" => array( "minStringLength" => 2, "maxStringLength" => 10, ), ), ), new TextLineValue( "lalalala" ), ), array( array( "fieldSettings" => array( 'isMultiple' => true ), ), new CountryValue( array( "BE" => array( "Name" => "Belgium", "Alpha2" => "BE", "Alpha3" => "BEL", "IDC" => 32, ), ), ), ), ... );

provideValidFieldSettings() public method

ATTENTION: This is a default implementation, which must be overwritten if a FieldType supports field settings! Returns an array of data provider sets with a single argument: A valid set of field settings. For example: return array( array( array(), ), array( array( 'rows' => 2 ) ), ... );
public provideValidFieldSettings ( ) : array
return array

provideValidInputForAcceptValue() abstract public method

Returns an array of data provider sets with 2 arguments: 1. The valid input to acceptValue(), 2. The expected return value from acceptValue(). For example: return array( array( null, null ), array( __FILE__, new BinaryFileValue( array( 'path' => __FILE__, 'fileName' => basename( __FILE__ ), 'fileSize' => filesize( __FILE__ ), 'downloadCount' => 0, 'mimeType' => 'text/plain', ) ) ), ... );
abstract public provideValidInputForAcceptValue ( ) : array
return array

provideValidValidatorConfiguration() public method

ATTENTION: This is a default implementation, which must be overwritten if a FieldType supports validators! Returns an array of data provider sets with a single argument: A valid set of validator configurations. For example: return array( array( array(), ), array( array( 'IntegerValueValidator' => array( 'minIntegerValue' => 0, 'maxIntegerValue' => 23, ) ) ), ... );

testAcceptGetEmptyValue() public method

Tests that default empty value is unchanged by acceptValue() method.

testAcceptValue() public method

public testAcceptValue ( mixed $inputValue, mixed $expectedOutputValue )
$inputValue mixed
$expectedOutputValue mixed

testAcceptValueFailsOnInvalidValues() public method

public testAcceptValueFailsOnInvalidValues ( mixed $inputValue, Exception $expectedException )
$inputValue mixed
$expectedException Exception

testEmptyValue() public method

public testEmptyValue ( )

testEmptyValueIsEmpty() public method

testFieldSettingsFromHash() public method

public testFieldSettingsFromHash ( $inputSettings )

testFieldSettingsToHash() public method

public testFieldSettingsToHash ( $inputSettings )

testFromHash() public method

public testFromHash ( $inputHash, array $expectedResult )
$expectedResult array

testGetFieldTypeIdentifier() public method

testGetName() public method

public testGetName ( eZ\Publish\SPI\FieldType\Value $value, string $expected )
$value eZ\Publish\SPI\FieldType\Value
$expected string

testSettingsSchema() public method

public testSettingsSchema ( )

testToHash() public method

public testToHash ( mixed $inputValue, array $expectedResult )
$inputValue mixed
$expectedResult array

testValidateFieldSettingsInvalid() public method

public testValidateFieldSettingsInvalid ( mixed $inputSettings )
$inputSettings mixed

testValidateFieldSettingsValid() public method

public testValidateFieldSettingsValid ( mixed $inputSettings )
$inputSettings mixed

testValidateInvalid() public method

public testValidateInvalid ( $fieldDefinitionData, $value, $errors )

testValidateValid() public method

public testValidateValid ( $fieldDefinitionData, $value )

testValidateValidatorConfigurationInvalid() public method

public testValidateValidatorConfigurationInvalid ( mixed $inputConfiguration )
$inputConfiguration mixed

testValidateValidatorConfigurationValid() public method

public testValidateValidatorConfigurationValid ( mixed $inputConfiguration )
$inputConfiguration mixed

testValidatorConfigurationFromHash() public method

public testValidatorConfigurationFromHash ( mixed $inputConfiguration )
$inputConfiguration mixed

testValidatorConfigurationSchema() public method

testValidatorConfigurationToHash() public method

public testValidatorConfigurationToHash ( mixed $inputConfiguration )
$inputConfiguration mixed