1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78
|
<?php
namespace Roundcube\Tests\Framework;
use PHPUnit\Framework\Attributes\DataProvider;
use PHPUnit\Framework\TestCase;
/**
* Test class to test rcube_enriched class
*/
class Framework_Enriched extends TestCase
{
/**
* Class constructor
*/
function test_class()
{
$object = new \rcube_enriched();
$this->assertInstanceOf(\rcube_enriched::class, $object, "Class constructor");
}
/**
* Test to_html()
*/
function test_to_html()
{
$enriched = '<bold><italic>the-text</italic></bold>';
$expected = '<b><i>the-text</i></b>';
$result = \rcube_enriched::to_html($enriched);
$this->assertSame($expected, $result);
}
/**
* Data for test_formatting()
*/
static function data_formatting()
{
return [
['<bold>', '<b>'],
['</bold>', '</b>'],
['<italic>', '<i>'],
['</italic>', '</i>'],
['<fixed>', '<tt>'],
['</fixed>', '</tt>'],
['<smaller>', '<font size=-1>'],
['</smaller>', '</font>'],
['<bigger>', '<font size=+1>'],
['</bigger>', '</font>'],
['<underline>', '<span style="text-decoration: underline">'],
['</underline>', '</span>'],
['<flushleft>', '<span style="text-align: left">'],
['</flushleft>', '</span>'],
['<flushright>', '<span style="text-align: right">'],
['</flushright>', '</span>'],
['<flushboth>', '<span style="text-align: justified">'],
['</flushboth>', '</span>'],
['<indent>', '<span style="padding-left: 20px">'],
['</indent>', '</span>'],
['<indentright>', '<span style="padding-right: 20px">'],
['</indentright>', '</span>'],
];
}
/**
* Test formatting conversion
* @dataProvider data_formatting
*/
#[DataProvider('data_formatting')]
function test_formatting($enriched, $expected)
{
$result = \rcube_enriched::to_html($enriched);
$this->assertSame($expected, $result);
}
}
|