* @license http://www.apache.org/licenses/LICENSE-2.0 * @link http://phpsx.org */ class InflectionTest extends TestCase { /** * @param string $expect * @param string $route * @dataProvider convertPlaceholderToCurlyProvider */ public function testConvertPlaceholderToCurly($expect, $route) { $this->assertEquals($expect, Inflection::convertPlaceholderToCurly($route)); } public function convertPlaceholderToCurlyProvider() { return [ ['/foo', '/foo'], ['/foo/{bar}', '/foo/:bar'], ['/foo/{bar}', '/foo/*bar'], ['/foo/{bar}', '/foo/$bar<[0-9]+>'], ['/foo/{bar}/foo', '/foo/:bar/foo'], ['/foo/{bar}/foo', '/foo/*bar/foo'], ['/foo/{bar}/foo', '/foo/$bar<[0-9]+>/foo'], ['/foo/{bar}/foo/{baz}', '/foo/:bar/foo/:baz'], ['/foo/{bar}/foo/{baz}', '/foo/*bar/foo/*baz'], ['/foo/{bar}/foo/{baz}', '/foo/$bar<[0-9]+>/foo/$baz<[0-9]+>'], ['/foo/{bar}/foo/{baz}/foo', '/foo/:bar/foo/:baz/foo'], ['/foo/{bar}/foo/{baz}/foo', '/foo/*bar/foo/*baz/foo'], ['/foo/{bar}/foo/{baz}/foo', '/foo/$bar<[0-9]+>/foo/$baz<[0-9]+>/foo'], ]; } /** * @param string $expect * @param string $route * @dataProvider convertPlaceholderToColonProvider */ public function testConvertPlaceholderToColon($expect, $route) { $this->assertEquals($expect, Inflection::convertPlaceholderToColon($route)); } public function convertPlaceholderToColonProvider() { return [ ['/foo', '/foo'], ['/foo/:bar', '/foo/{bar}'], ['/foo/:bar/foo', '/foo/{bar}/foo'], ['/foo/:bar/foo/:baz', '/foo/{bar}/foo/{baz}'], ]; } /** * @param string $expect * @param string $route * @dataProvider generateTitleFromRouteProvider */ public function testGenerateTitleFromRoute($expect, $route) { $this->assertEquals($expect, Inflection::generateTitleFromRoute($route)); } public function generateTitleFromRouteProvider() { return [ ['Foo', '/foo'], ['FooBar', '/foo/:bar'], ['FooBar', '/foo/*bar'], ['FooBar', '/foo/$bar<[0-9]+>'], ['FooBarFoo', '/foo/:bar/foo'], ['FooBarFoo', '/foo/*bar/foo'], ['FooBarFoo', '/foo/$bar<[0-9]+>/foo'], ['FooBarFooBaz', '/foo/:bar/foo/:baz'], ['FooBarFooBaz', '/foo/*bar/foo/*baz'], ['FooBarFooBaz', '/foo/$bar<[0-9]+>/foo/$baz<[0-9]+>'], ['FooBarFooBazFoo', '/foo/:bar/foo/:baz/foo'], ['FooBarFooBazFoo', '/foo/*bar/foo/*baz/foo'], ['FooBarFooBazFoo', '/foo/$bar<[0-9]+>/foo/$baz<[0-9]+>/foo'], ]; } } __halt_compiler();----SIGNATURE:----nD3g0/L0q08r7O/ehM2xjhLqAqZ9J8wMDCScDviP54PSXfiDvtDIL8JdNiOqhOFvQwkc7W4p8QcHR7Y7xaMFbV6t6wMSzmZNoz8gqcu55u/lSzu7jmnNU8G+I7F0H76Q/OI7wNjG1jUAoXhGuivMS4drLtbOLq0yz8yrP1BLT4024WyvaIEns0qNKWMkewp2GBBXosscl3VHjKetL8gjIKIaTa7Hnv73ct3HNp6z1V3ojev4fJis1xuTu7JZub5pgidmGmmUZAZlkzxUpCdnr5mfSvNLYbk6AbDVaSwl1rF+2tg2lSdite84sbOlu3Fwjx/uNANVkSfO5Ctp4FjzQP4cD23q/s71Vn+1p7/I+qHrOwuqn2wWyPeScSGj1coFTbR93LZHFE8ObUE5vrlU5b3MSTILJvQXpT+PHZgnEJT8IFdrl308LTirWKab3rqMZCSlAByKqU33tgD1tk9oW2c966NQzmJXDNbE3UnT7jAjUj23ZWq7oCfg0sXK5Gk7jQXTlAbgj6UJm/kfCyOsiKs8QgQE343XoDD1HUmhuUQEt0Wqu+hyIRvZyiNgBxILbVxGmZ41NErL9m39RgO0Jsxl+E9JtrRASsNgcCwkQuDGIwmpa7edjmHiA/aEkwSuL/Qgn55EPh8eFX3f7GzKkrGpv35YKcPhNnfUB3so/XM=----ATTACHMENT:----NDE5NTQyMDgwNzk2MDQwMiAzNTM0NjM3NzQ2NDI0ODY1IDU3MjczMzA0Mjc2MzY2NTQ=