file_entity.test in File Entity (fieldable files) 7
Test integration for the file_entity module.
File
tests/file_entity.testView source
<?php
/**
* @file
* Test integration for the file_entity module.
*/
class FileEntityUnitTestCase extends DrupalWebTestCase {
public static function getInfo() {
return array(
'name' => 'File entity unit tests',
'description' => 'Test basic file entity funcitonality.',
'group' => 'File entity',
);
}
function setUp($modules = array()) {
$modules[] = 'file_entity';
parent::setUp($modules);
}
/**
* Regression tests for core issue http://drupal.org/node/1239376.
*/
function testOggMimeTypeMapping() {
$this
->assertEqual(file_get_mimetype('public://test.ogg'), 'audio/ogg');
}
}
class FileEntityTokenTestCase extends DrupalWebTestCase {
public static function getInfo() {
return array(
'name' => 'File entity tokens',
'description' => 'Test the file entity tokens.',
'group' => 'File entity',
);
}
function setUp($modules = array()) {
$modules[] = 'file_entity';
parent::setUp($modules);
}
function testFileEntityTokens() {
$text_files = $this
->drupalGetTestFiles('text');
foreach ($text_files as &$file) {
$files = file_save($file);
}
$tokens = array(
'type' => 'Text',
'type:name' => 'Text',
'type:machine-name' => 'text',
'type:count' => count($text_files),
);
$this
->assertTokens('file', array(
'file' => $text_files[0],
), $tokens);
$image_files = $this
->drupalGetTestFiles('image');
foreach ($image_files as &$file) {
$files = file_save($file);
}
$tokens = array(
'type' => 'Image',
'type:name' => 'Image',
'type:machine-name' => 'image',
'type:count' => count($image_files),
);
$this
->assertTokens('file', array(
'file' => $image_files[0],
), $tokens);
}
function assertTokens($type, array $data, array $tokens, array $options = array()) {
$token_input = drupal_map_assoc(array_keys($tokens));
$values = token_generate($type, $token_input, $data, $options);
foreach ($tokens as $token => $expected) {
if (!isset($expected)) {
$this
->assertTrue(!isset($values[$token]), t("Token value for [@type:@token] was not generated.", array(
'@type' => $type,
'@token' => $token,
)));
}
elseif (!isset($values[$token])) {
$this
->fail(t("Token value for [@type:@token] was not generated.", array(
'@type' => $type,
'@token' => $token,
)));
}
elseif (!empty($options['regex'])) {
$this
->assertTrue(preg_match('/^' . $expected . '$/', $values[$token]), t("Token value for [@type:@token] was '@actual', matching regular expression pattern '@expected'.", array(
'@type' => $type,
'@token' => $token,
'@actual' => $values[$token],
'@expected' => $expected,
)));
}
else {
$this
->assertIdentical($values[$token], $expected, t("Token value for [@type:@token] was '@actual', expected value '@expected'.", array(
'@type' => $type,
'@token' => $token,
'@actual' => $values[$token],
'@expected' => $expected,
)));
}
}
return $values;
}
}
Classes
Name | Description |
---|---|
FileEntityTokenTestCase | |
FileEntityUnitTestCase | @file Test integration for the file_entity module. |