Files
DomFramework/Tests/ConvertTest.php

167 lines
4.0 KiB
PHP

<?php
/**
* DomFramework - Tests
* @package domframework
* @author Dominique Fournier <dominique@fournier38.fr>
* @license BSD
*/
namespace Domframework\Tests;
use Domframework\Convert;
/**
* Test the Conversion of format
*/
class ConvertTest extends \PHPUnit_Framework_TestCase
{
public function testConvertDate1()
{
$res = Convert::convertDate("2017-04-13", "Y-m-d", "d/m/Y");
$this->assertSame($res, "13/04/2017");
}
public function testConvertDate2()
{
$this->setExpectedException("Exception");
$res = Convert::convertDate("2017-13-33", "Y-m-d", "d/m/Y");
}
public function testConvertDate3()
{
$res = Convert::convertDate("2017-13-33", "Y-m-d", "d/m/Y", false);
$this->assertSame($res, "2017-13-33");
}
public function testUcwords1()
{
$res = Convert::ucwords(" test yuyu ");
$this->assertSame($res, " Test Yuyu ");
}
public function testUcwords2()
{
$res = Convert::ucwords("");
$this->assertSame($res, "");
}
public function testUcwords3()
{
$res = Convert::ucwords("test");
$this->assertSame($res, "Test");
}
public function testUcwords4()
{
$res = Convert::ucwords("TEST");
$this->assertSame($res, "Test");
}
public function testUcwords5()
{
$res = Convert::ucwords("édouard étienne");
$this->assertSame($res, "Édouard Étienne");
}
public function testUcwords6()
{
$res = Convert::ucwords("édou-ard d'étienne", " -'");
$this->assertSame($res, "Édou-Ard D'Étienne");
}
/////////////////////
// humanSize //
/////////////////////
public function testHumanSize1()
{
$res = "";
for ($i = -8; $i <= 8; $i++) {
$res .= Convert::humanSize(1.441234 * pow(1000, $i), 2, 1000) . "\n";
}
$this->assertSame($res, "1.44yB\n1.44zB\n1.44aB\n1.44fB\n1.44pB\n1.44nB\n" .
"1.44uB\n1.44mB\n1.44B\n1.44kB\n1.44MB\n1.44GB\n1.44TB\n1.44PB\n1.44EB\n" .
"1.44ZB\n1.44YB\n");
}
public function testHumanSize2()
{
$res = Convert::humanSize(1441234);
$this->assertSame($res, "1.44MB");
}
public function testHumanSize3()
{
$res = Convert::humanSize(10441234);
$this->assertSame($res, "10.44MB");
}
public function testHumanSize4()
{
$res = Convert::humanSize(0.123, 0);
$this->assertSame($res, "123mB");
}
public function testHumanSize5()
{
$res = Convert::humanSize(0.12345, 2);
$this->assertSame($res, "123.45mB");
}
public function testHumanSize6()
{
$res = Convert::humanSize(-0.12345, 2);
$this->assertSame($res, "-123.45mB");
}
public function testHumanSize7()
{
$res = Convert::humanSize(-12345, 2);
$this->assertSame($res, "-12.35kB");
}
public function testHumanSize8()
{
$res = Convert::humanSize(0, 2);
$this->assertSame($res, "0.00B");
}
public function testHumanSizeError1()
{
$this->expectException(
"Exception",
"convert::humanSize value not numerical : string",
500
);
$res = Convert::humanSize("1441234");
}
public function testHumanSizeError2()
{
$this->expectException(
"Exception",
"convert::humanSize decimal not integer : double",
500
);
$res = Convert::humanSize(1441234, 0.1);
}
public function testHumanSizeError3()
{
$this->expectException(
"Exception",
"convert::humanSize decimal value negative",
500
);
$res = Convert::humanSize(1441234, -1);
}
public function testHumanSizeError4()
{
$this->expectException(
"Exception",
"convert::humanSize power value !== 1000 and 1024 : 2000",
500
);
$res = Convert::humanSize(1441234, 2, 2000);
}
}