| <?php |
| |
| class String_helper_test extends CI_TestCase { |
| |
| public function set_up() |
| { |
| $this->helper('string'); |
| } |
| |
| public function test_strip_slashes() |
| { |
| $expected = array( |
| "Is your name O'reilly?", |
| "No, my name is O'connor." |
| ); |
| |
| $str = array( |
| "Is your name O\'reilly?", |
| "No, my name is O\'connor." |
| ); |
| |
| $this->assertEquals($expected, strip_slashes($str)); |
| } |
| |
| public function test_trim_slashes() |
| { |
| $strs = array( |
| '//Slashes//\/' => 'Slashes//\\', |
| '/var/www/html/' => 'var/www/html' |
| ); |
| |
| foreach ($strs as $str => $expect) |
| { |
| $this->assertEquals($expect, trim_slashes($str)); |
| } |
| } |
| |
| // -------------------------------------------------------------------- |
| |
| public function test_strip_quotes() |
| { |
| $strs = array( |
| '"me oh my!"' => 'me oh my!', |
| "it's a winner!" => 'its a winner!', |
| ); |
| |
| foreach ($strs as $str => $expect) |
| { |
| $this->assertEquals($expect, strip_quotes($str)); |
| } |
| } |
| |
| // -------------------------------------------------------------------- |
| |
| public function test_quotes_to_entities() |
| { |
| $strs = array( |
| '"me oh my!"' => '"me oh my!"', |
| "it's a winner!" => 'it's a winner!', |
| ); |
| |
| foreach ($strs as $str => $expect) |
| { |
| $this->assertEquals($expect, quotes_to_entities($str)); |
| } |
| } |
| |
| // -------------------------------------------------------------------- |
| |
| public function test_reduce_double_slashes() |
| { |
| $strs = array( |
| 'http://codeigniter.com' => 'http://codeigniter.com', |
| '//var/www/html/example.com/' => '/var/www/html/example.com/', |
| '/var/www/html//index.php' => '/var/www/html/index.php' |
| ); |
| |
| foreach ($strs as $str => $expect) |
| { |
| $this->assertEquals($expect, reduce_double_slashes($str)); |
| } |
| } |
| |
| // -------------------------------------------------------------------- |
| |
| public function test_reduce_multiples() |
| { |
| $strs = array( |
| 'Fred, Bill,, Joe, Jimmy' => 'Fred, Bill, Joe, Jimmy', |
| 'Ringo, John, Paul,,' => 'Ringo, John, Paul,' |
| ); |
| |
| foreach ($strs as $str => $expect) |
| { |
| $this->assertEquals($expect, reduce_multiples($str)); |
| } |
| |
| $strs = array( |
| 'Fred, Bill,, Joe, Jimmy' => 'Fred, Bill, Joe, Jimmy', |
| 'Ringo, John, Paul,,' => 'Ringo, John, Paul' |
| ); |
| |
| foreach ($strs as $str => $expect) |
| { |
| $this->assertEquals($expect, reduce_multiples($str, ',', TRUE)); |
| } |
| } |
| |
| // -------------------------------------------------------------------- |
| |
| public function test_repeater() |
| { |
| $strs = array( |
| 'a' => 'aaaaaaaaaa', |
| ' ' => ' ', |
| '<br>' => '<br><br><br><br><br><br><br><br><br><br>' |
| |
| ); |
| |
| foreach ($strs as $str => $expect) |
| { |
| $this->assertEquals($expect, repeater($str, 10)); |
| } |
| } |
| |
| // -------------------------------------------------------------------- |
| |
| public function test_random_string() |
| { |
| $this->assertEquals(16, strlen(random_string('alnum', 16))); |
| $this->assertEquals(32, strlen(random_string('unique', 16))); |
| $this->assertInternalType('string', random_string('numeric', 16)); |
| } |
| |
| // -------------------------------------------------------------------- |
| |
| public function test_increment_string() |
| { |
| $this->assertEquals('my-test_1', increment_string('my-test')); |
| $this->assertEquals('my-test-1', increment_string('my-test', '-')); |
| $this->assertEquals('file_5', increment_string('file_4')); |
| $this->assertEquals('file-5', increment_string('file-4', '-')); |
| $this->assertEquals('file-5', increment_string('file-4', '-')); |
| $this->assertEquals('file-1', increment_string('file', '-', '1')); |
| $this->assertEquals(124, increment_string('123', '')); |
| } |
| |
| } |