diff --git a/tests/SortableLinkTest.php b/tests/SortableLinkTest.php index cf150d6..5853f79 100644 --- a/tests/SortableLinkTest.php +++ b/tests/SortableLinkTest.php @@ -2,6 +2,7 @@ use Illuminate\Support\Facades\Config; use Illuminate\Support\Facades\Request; +use Illuminate\Support\HtmlString; use Kyslik\ColumnSortable\SortableLink; /** @@ -53,11 +54,51 @@ public function testInjectTitleInQueryStringsIsOff() } + public function testGeneratingTitle() + { + Config::set('columnsortable.formatting_function', 'ucfirst'); + Config::set('columnsortable.format_custom_titles', true); + $link = SortableLink::render(['column']); + + $this->assertSame('Column', $link); + } + + + public function testCustomTitle() + { + Config::set('columnsortable.formatting_function', 'ucfirst'); + Config::set('columnsortable.format_custom_titles', true); + $link = SortableLink::render(['column', 'columnTitle']); + + $this->assertSame('ColumnTitle', $link); + } + + + public function testCustomTitleWithoutFormatting() + { + Config::set('columnsortable.formatting_function', 'ucfirst'); + Config::set('columnsortable.format_custom_titles', false); + $link = SortableLink::render(['column', 'columnTitle']); + + $this->assertSame('columnTitle', $link); + } + + + public function testCustomTitleWithHTML() + { + Config::set('columnsortable.formatting_function', 'ucfirst'); + Config::set('columnsortable.format_custom_titles', true); + $link = SortableLink::render(['column', new HtmlString('columnTitle')]); + + $this->assertSame('columnTitle', $link); + } + + public function testParseParameters() { $parameters = ['column']; $resultArray = SortableLink::parseParameters($parameters); - $expected = ['column', 'column', 'column', [], []]; + $expected = ['column', 'column', null, [], []]; $this->assertEquals($expected, $resultArray); $parameters = ['column', 'ColumnTitle']; @@ -77,7 +118,7 @@ public function testParseParameters() $parameters = ['relation.column']; $resultArray = SortableLink::parseParameters($parameters); - $expected = ['column', 'relation.column', 'column', [], []]; + $expected = ['column', 'relation.column', null, [], []]; $this->assertEquals($expected, $resultArray); $parameters = ['relation.column', 'ColumnTitle'];