52 lines
1.8 KiB
PHP
52 lines
1.8 KiB
PHP
<?php
|
|
|
|
namespace nulib;
|
|
|
|
use nulib\tests\TestCase;
|
|
|
|
class strTest extends TestCase {
|
|
function test_replace() {
|
|
self::assertSame("premier deuxieme", str::replace("first second", [
|
|
"first" => "premier",
|
|
"second" => "deuxieme",
|
|
]));
|
|
self::assertSame("avant OK", str::replace("prefix prefixsuffix", [
|
|
"prefix" => "avant",
|
|
"prefixsuffix" => "OK",
|
|
]));
|
|
self::assertSame("avant avantsuffix", str::replace("prefix prefixsuffix", [
|
|
"prefix" => "avant",
|
|
"prefixsuffix" => "OK",
|
|
], false));
|
|
}
|
|
|
|
function test_split_tokens() {
|
|
self::assertNull(str::split_tokens(null));
|
|
self::assertSame([], str::split_tokens(""));
|
|
self::assertSame(["token"], str::split_tokens("token"));
|
|
self::assertSame(["t", "u", "v"], str::split_tokens(" t u v "));
|
|
self::assertSame(["t", "u", "v", "w"], str::split_tokens("\nt\n\nu\r\nv\rw"));
|
|
}
|
|
|
|
function test_camel2us() {
|
|
self::assertSame("a", str::camel2us("a"));
|
|
self::assertSame("aa", str::camel2us("aa"));
|
|
self::assertSame("aaa", str::camel2us("aaa"));
|
|
self::assertSame("a", str::camel2us("A"));
|
|
self::assertSame("aa", str::camel2us("Aa"));
|
|
self::assertSame("aa", str::camel2us("AA"));
|
|
self::assertSame("aaa", str::camel2us("Aaa"));
|
|
self::assertSame("aaa", str::camel2us("AAA"));
|
|
self::assertSame("a_aa", str::camel2us("AAa"));
|
|
self::assertSame("a_b", str::camel2us("aB"));
|
|
self::assertSame("aa_bb", str::camel2us("aaBb"));
|
|
self::assertSame("aaa_bbb", str::camel2us("aaaBbb"));
|
|
self::assertSame("aa_bb", str::camel2us("AaBb"));
|
|
self::assertSame("aaa_bbb", str::camel2us("AaaBbb"));
|
|
|
|
self::assertSame("_aaa", str::camel2us("_aaa"));
|
|
self::assertSame("__aaa_bbb", str::camel2us("__aaaBbb"));
|
|
self::assertSame("___aaa_bbb", str::camel2us("___AaaBbb"));
|
|
}
|
|
}
|