1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
#!/www/server/bin/php
<?php
$obj = (object)[];
$obj->x = "attr";
$obj->y = (object)[];
$obj->y->z = "attr";
is(it_text::transmogrify(""), "");
is(it_text::transmogrify("foo"), "foo");
is(it_text::transmogrify("{foo}"), "");
is(it_text::transmogrify("{foo}", array('foo' => 1)), "1");
is(it_text::transmogrify("{foo}{foo}", array('foo' => 1)), "11");
is(it_text::transmogrify("{foo}X", array('foo' => 1)), "1X");
is(it_text::transmogrify("{foo}X{foo}", array('foo' => 1)), "1X1");
is(it_text::transmogrify("X{foo}", array('foo' => 1)), "X1");
is(it_text::transmogrify("X{foo}{bar}", array('foo' => 1, 'bar' => 2)), "X12");
is(it_text::transmogrify("X{foo}", array('foo' => "&")), "X&");
is(it_text::transmogrify("X{x}", $obj), "Xattr");
is(it_text::transmogrify("X{y.z}", $obj), "Xattr");
is(it_text::transmogrify("{mb_strlen(xxx)}", null, null, ['mb_strlen' => 1]), "3");
is(it_text::transmogrify("{it::ucfirst(xxx)}", null, null, ['it::ucfirst' => 1]), "Xxx");
is(it_text::transmogrify("{format violation}"), '{format violation}');
|