<?php
/**
* @version $Id: utf8_str_pad.test.php,v 1.1 2006/09/03 09:25:13 harryf Exp $
* @package utf8
* @subpackage Tests
*/
//--------------------------------------------------------------------
/**
* Includes
* @package utf8
* @subpackage Tests
*/
require_once(dirname(__FILE__).'/../config.php');
require_once UTF8 . '/str_pad.php';
//--------------------------------------------------------------------
/**
* @author Oliver Saunders <oliver (a) osinternetservices.com>
* @package utf8
* @subpackage Tests
*/
class test_utf8_str_pad extends UnitTestCase {
public function test(){
$toPad = '<IñtërnëT>'; // 10 characters
$padding = 'ø__'; // 4 characters
$this->assertEqual(utf8_str_pad($toPad, 20), $toPad . ' ');
$this->assertEqual(utf8_str_pad($toPad, 20, ' ', STR_PAD_LEFT), ' ' . $toPad);
$this->assertEqual(utf8_str_pad($toPad, 20, ' ', STR_PAD_BOTH), ' ' . $toPad . ' ');
$this->assertEqual(utf8_str_pad($toPad, 10), $toPad);
$this->assertEqual(str_pad('5char', 4), '5char'); // str_pos won't truncate input string
$this->assertEqual(utf8_str_pad($toPad, 8), $toPad);
$this->assertEqual(utf8_str_pad($toPad, 20, $padding, STR_PAD_RIGHT), $toPad . 'ø__ø__ø__ø');
$this->assertEqual(utf8_str_pad($toPad, 20, $padding, STR_PAD_LEFT), 'ø__ø__ø__ø' . $toPad);
$this->assertEqual(utf8_str_pad($toPad, 20, $padding, STR_PAD_BOTH), 'ø__ø_' . $toPad . 'ø__ø_');
}
}
//--------------------------------------------------------------------
/**
* @package utf8
* @subpackage Tests
*/
if (!defined('TEST_RUNNING')) {
define('TEST_RUNNING', true);
$test = &new test_utf8_str_pad ();
$reporter = & getTestReporter();
$test->run($reporter);
}