update v 1.0.7.5
This commit is contained in:
39
vendor/davejamesmiller/laravel-breadcrumbs/tests/TestCase.php
vendored
Normal file
39
vendor/davejamesmiller/laravel-breadcrumbs/tests/TestCase.php
vendored
Normal file
@@ -0,0 +1,39 @@
|
||||
<?php
|
||||
|
||||
abstract class TestCase extends Orchestra\Testbench\TestCase {
|
||||
|
||||
protected function getPackageProviders()
|
||||
{
|
||||
return [
|
||||
'DaveJamesMiller\Breadcrumbs\ServiceProvider',
|
||||
];
|
||||
}
|
||||
|
||||
protected function getPackageAliases()
|
||||
{
|
||||
return [
|
||||
'Breadcrumbs' => 'DaveJamesMiller\Breadcrumbs\Facade'
|
||||
];
|
||||
}
|
||||
|
||||
public function setUp()
|
||||
{
|
||||
parent::setUp();
|
||||
|
||||
$this->loadServiceProvider();
|
||||
}
|
||||
|
||||
protected function loadServiceProvider()
|
||||
{
|
||||
// Need to trigger register() to test the views
|
||||
$this->app->make('breadcrumbs');
|
||||
}
|
||||
|
||||
public function tearDown()
|
||||
{
|
||||
$this->addToAssertionCount(Mockery::getContainer()->mockery_getExpectationCount());
|
||||
|
||||
Mockery::close();
|
||||
}
|
||||
|
||||
}
|
3
vendor/davejamesmiller/laravel-breadcrumbs/tests/fixtures/CustomServiceProvider.html
vendored
Normal file
3
vendor/davejamesmiller/laravel-breadcrumbs/tests/fixtures/CustomServiceProvider.html
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
<ol class="breadcrumb">
|
||||
<li class="active">Home</li>
|
||||
</ol>
|
3
vendor/davejamesmiller/laravel-breadcrumbs/tests/fixtures/DependantServiceProvider.html
vendored
Normal file
3
vendor/davejamesmiller/laravel-breadcrumbs/tests/fixtures/DependantServiceProvider.html
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
<ol class="breadcrumb">
|
||||
<li class="active">Home</li>
|
||||
</ol>
|
17
vendor/davejamesmiller/laravel-breadcrumbs/tests/fixtures/bootstrap2.html
vendored
Normal file
17
vendor/davejamesmiller/laravel-breadcrumbs/tests/fixtures/bootstrap2.html
vendored
Normal file
@@ -0,0 +1,17 @@
|
||||
<ul class="breadcrumb">
|
||||
<li>
|
||||
<a href="/">Home</a>
|
||||
<span class="divider">/</span>
|
||||
</li>
|
||||
<li class="active">
|
||||
Not a link
|
||||
<span class="divider">/</span>
|
||||
</li>
|
||||
<li>
|
||||
<a href="/blog">Blog & < ></a>
|
||||
<span class="divider">/</span>
|
||||
</li>
|
||||
<li class="active">
|
||||
Sample Post
|
||||
</li>
|
||||
</ul>
|
6
vendor/davejamesmiller/laravel-breadcrumbs/tests/fixtures/bootstrap3.html
vendored
Normal file
6
vendor/davejamesmiller/laravel-breadcrumbs/tests/fixtures/bootstrap3.html
vendored
Normal file
@@ -0,0 +1,6 @@
|
||||
<ol class="breadcrumb">
|
||||
<li><a href="/">Home</a></li>
|
||||
<li class="active">Not a link</li>
|
||||
<li><a href="/blog">Blog & < ></a></li>
|
||||
<li class="active">Sample Post</li>
|
||||
</ol>
|
5
vendor/davejamesmiller/laravel-breadcrumbs/tests/fixtures/integration.html
vendored
Normal file
5
vendor/davejamesmiller/laravel-breadcrumbs/tests/fixtures/integration.html
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
<ol class="breadcrumb">
|
||||
<li><a href="/">Home</a></li>
|
||||
<li><a href="/category/456">Sample Category</a></li>
|
||||
<li class="active">Sample Post</li>
|
||||
</ol>
|
29
vendor/davejamesmiller/laravel-breadcrumbs/tests/integration/CustomServiceProviderTest.php
vendored
Normal file
29
vendor/davejamesmiller/laravel-breadcrumbs/tests/integration/CustomServiceProviderTest.php
vendored
Normal file
@@ -0,0 +1,29 @@
|
||||
<?php
|
||||
|
||||
class CustomServiceProviderTest extends TestCase {
|
||||
|
||||
protected function getPackageProviders()
|
||||
{
|
||||
return [
|
||||
'CustomServiceProvider',
|
||||
];
|
||||
}
|
||||
|
||||
public function testRender()
|
||||
{
|
||||
$html = Breadcrumbs::render('home');
|
||||
$this->assertXmlStringEqualsXmlFile(__DIR__ . '/../fixtures/CustomServiceProvider.html', $html);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
class CustomServiceProvider extends DaveJamesMiller\Breadcrumbs\ServiceProvider {
|
||||
|
||||
public function registerBreadcrumbs()
|
||||
{
|
||||
Breadcrumbs::register('home', function($breadcrumbs) {
|
||||
$breadcrumbs->push('Home', '/');
|
||||
});
|
||||
}
|
||||
|
||||
}
|
@@ -0,0 +1,43 @@
|
||||
<?php
|
||||
|
||||
class DependantServiceProviderErrorTest extends TestCase {
|
||||
|
||||
protected function getPackageProviders()
|
||||
{
|
||||
return [
|
||||
// These are in the wrong order
|
||||
'DependantServiceProviderError',
|
||||
'DaveJamesMiller\Breadcrumbs\ServiceProvider',
|
||||
];
|
||||
}
|
||||
|
||||
protected function loadServiceProvider()
|
||||
{
|
||||
// Disabled - we want to test the automatic loading instead
|
||||
}
|
||||
|
||||
/**
|
||||
* @expectedException DaveJamesMiller\Breadcrumbs\Exception
|
||||
* @expectedExceptionMessage Breadcrumbs view not specified
|
||||
*/
|
||||
public function testRender()
|
||||
{
|
||||
Breadcrumbs::render('home');
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
class DependantServiceProviderError extends Illuminate\Support\ServiceProvider {
|
||||
|
||||
public function register()
|
||||
{
|
||||
}
|
||||
|
||||
public function boot()
|
||||
{
|
||||
Breadcrumbs::register('home', function($breadcrumbs) {
|
||||
$breadcrumbs->push('Home', '/');
|
||||
});
|
||||
}
|
||||
|
||||
}
|
39
vendor/davejamesmiller/laravel-breadcrumbs/tests/integration/DependantServiceProviderTest.php
vendored
Normal file
39
vendor/davejamesmiller/laravel-breadcrumbs/tests/integration/DependantServiceProviderTest.php
vendored
Normal file
@@ -0,0 +1,39 @@
|
||||
<?php
|
||||
|
||||
class DependantServiceProviderTest extends TestCase {
|
||||
|
||||
protected function getPackageProviders()
|
||||
{
|
||||
return [
|
||||
'DaveJamesMiller\Breadcrumbs\ServiceProvider',
|
||||
'DependantServiceProvider',
|
||||
];
|
||||
}
|
||||
|
||||
protected function loadServiceProvider()
|
||||
{
|
||||
// Disabled - we want to test the automatic loading instead
|
||||
}
|
||||
|
||||
public function testRender()
|
||||
{
|
||||
$html = Breadcrumbs::render('home');
|
||||
$this->assertXmlStringEqualsXmlFile(__DIR__ . '/../fixtures/DependantServiceProvider.html', $html);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
class DependantServiceProvider extends Illuminate\Support\ServiceProvider {
|
||||
|
||||
public function register()
|
||||
{
|
||||
}
|
||||
|
||||
public function boot()
|
||||
{
|
||||
Breadcrumbs::register('home', function($breadcrumbs) {
|
||||
$breadcrumbs->push('Home', '/');
|
||||
});
|
||||
}
|
||||
|
||||
}
|
61
vendor/davejamesmiller/laravel-breadcrumbs/tests/integration/IntegrationTest.php
vendored
Normal file
61
vendor/davejamesmiller/laravel-breadcrumbs/tests/integration/IntegrationTest.php
vendored
Normal file
@@ -0,0 +1,61 @@
|
||||
<?php
|
||||
|
||||
class IntegrationTest extends TestCase {
|
||||
|
||||
public function setUp()
|
||||
{
|
||||
parent::setUp();
|
||||
|
||||
Breadcrumbs::register('home', function($breadcrumbs) {
|
||||
$breadcrumbs->push('Home', '/');
|
||||
});
|
||||
|
||||
Breadcrumbs::register('category', function($breadcrumbs, $category) {
|
||||
$breadcrumbs->parent('home');
|
||||
$breadcrumbs->push($category->title, '/category/' . $category->id);
|
||||
});
|
||||
|
||||
Breadcrumbs::register('post', function($breadcrumbs, $post) {
|
||||
$breadcrumbs->parent('category', $post->category);
|
||||
$breadcrumbs->push($post->title, '/blog/' . $post->id);
|
||||
});
|
||||
|
||||
$this->post = (object) [
|
||||
'id' => 123,
|
||||
'title' => 'Sample Post',
|
||||
'category' => (object) [
|
||||
'id' => 456,
|
||||
'title' => 'Sample Category',
|
||||
],
|
||||
];
|
||||
}
|
||||
|
||||
public function testGenerate()
|
||||
{
|
||||
$breadcrumbs = Breadcrumbs::generate('post', $this->post);
|
||||
|
||||
$this->assertCount(3, $breadcrumbs);
|
||||
|
||||
$this->assertSame('Home', $breadcrumbs[0]->title);
|
||||
$this->assertSame('/', $breadcrumbs[0]->url);
|
||||
$this->assertTrue($breadcrumbs[0]->first);
|
||||
$this->assertFalse($breadcrumbs[0]->last);
|
||||
|
||||
$this->assertSame('Sample Category', $breadcrumbs[1]->title);
|
||||
$this->assertSame('/category/456', $breadcrumbs[1]->url);
|
||||
$this->assertFalse($breadcrumbs[1]->first);
|
||||
$this->assertFalse($breadcrumbs[1]->last);
|
||||
|
||||
$this->assertSame('Sample Post', $breadcrumbs[2]->title);
|
||||
$this->assertSame('/blog/123', $breadcrumbs[2]->url);
|
||||
$this->assertFalse($breadcrumbs[2]->first);
|
||||
$this->assertTrue($breadcrumbs[2]->last);
|
||||
}
|
||||
|
||||
public function testRender()
|
||||
{
|
||||
$html = Breadcrumbs::render('post', $this->post);
|
||||
$this->assertXmlStringEqualsXmlFile(__DIR__ . '/../fixtures/integration.html', $html);
|
||||
}
|
||||
|
||||
}
|
80
vendor/davejamesmiller/laravel-breadcrumbs/tests/unit/CurrentRouteTest.php
vendored
Normal file
80
vendor/davejamesmiller/laravel-breadcrumbs/tests/unit/CurrentRouteTest.php
vendored
Normal file
@@ -0,0 +1,80 @@
|
||||
<?php
|
||||
|
||||
use DaveJamesMiller\Breadcrumbs\CurrentRoute;
|
||||
use Mockery as m;
|
||||
|
||||
class CurrentRouteTest extends TestCase {
|
||||
|
||||
public function setUp()
|
||||
{
|
||||
parent::setUp();
|
||||
|
||||
$this->currentRoute = app('DaveJamesMiller\Breadcrumbs\CurrentRoute');
|
||||
}
|
||||
|
||||
public function testNamedRoute()
|
||||
{
|
||||
Route::get('/sample', ['as' => 'sampleroute', function()
|
||||
{
|
||||
$this->assertSame(['sampleroute', []], $this->currentRoute->get());
|
||||
}]);
|
||||
|
||||
$this->call('GET', '/sample');
|
||||
}
|
||||
|
||||
public function testNamedRouteWithParameters()
|
||||
{
|
||||
$object = new stdClass;
|
||||
|
||||
Route::bind('object', function() use ($object) {
|
||||
return $object;
|
||||
});
|
||||
|
||||
Route::get('/sample/{text}/{object}', ['as' => 'sampleroute', function() use ($object)
|
||||
{
|
||||
$this->assertSame(['sampleroute', ['blah', $object]], $this->currentRoute->get());
|
||||
}]);
|
||||
|
||||
$this->call('GET', '/sample/blah/object');
|
||||
}
|
||||
|
||||
/**
|
||||
* @expectedException DaveJamesMiller\Breadcrumbs\Exception
|
||||
* @expectedExceptionMessage The current route (GET /sample/unnamed) is not named - please check routes.php for an "as" parameter
|
||||
*/
|
||||
public function testUnnamedRoute()
|
||||
{
|
||||
Route::get('/sample/unnamed', function()
|
||||
{
|
||||
$this->assertSame(['sample', []], $this->currentRoute->get());
|
||||
});
|
||||
|
||||
$this->call('GET', '/sample/unnamed');
|
||||
}
|
||||
|
||||
public function testSet()
|
||||
{
|
||||
$this->currentRoute->set('custom', [1, 'blah']);
|
||||
|
||||
Route::get('/sample', ['as' => 'sampleroute', function()
|
||||
{
|
||||
$this->assertSame(['custom', [1, 'blah']], $this->currentRoute->get());
|
||||
}]);
|
||||
|
||||
$this->call('GET', '/sample');
|
||||
}
|
||||
|
||||
public function testClear()
|
||||
{
|
||||
$this->currentRoute->set('custom', [1, 'blah']);
|
||||
$this->currentRoute->clear();
|
||||
|
||||
Route::get('/sample', ['as' => 'sampleroute', function()
|
||||
{
|
||||
$this->assertSame(['sampleroute', []], $this->currentRoute->get());
|
||||
}]);
|
||||
|
||||
$this->call('GET', '/sample');
|
||||
}
|
||||
|
||||
}
|
11
vendor/davejamesmiller/laravel-breadcrumbs/tests/unit/FacadeTest.php
vendored
Normal file
11
vendor/davejamesmiller/laravel-breadcrumbs/tests/unit/FacadeTest.php
vendored
Normal file
@@ -0,0 +1,11 @@
|
||||
<?php
|
||||
|
||||
class FacadeTest extends TestCase {
|
||||
|
||||
public function testFacade()
|
||||
{
|
||||
$this->assertInstanceOf('DaveJamesMiller\Breadcrumbs\Manager', Breadcrumbs::getFacadeRoot());
|
||||
$this->assertSame($this->app['breadcrumbs'], Breadcrumbs::getFacadeRoot());
|
||||
}
|
||||
|
||||
}
|
189
vendor/davejamesmiller/laravel-breadcrumbs/tests/unit/GeneratorTest.php
vendored
Normal file
189
vendor/davejamesmiller/laravel-breadcrumbs/tests/unit/GeneratorTest.php
vendored
Normal file
@@ -0,0 +1,189 @@
|
||||
<?php
|
||||
|
||||
use DaveJamesMiller\Breadcrumbs\Generator;
|
||||
use Mockery as m;
|
||||
|
||||
class GeneratorTest extends TestCase {
|
||||
|
||||
public function setUp()
|
||||
{
|
||||
parent::setUp();
|
||||
|
||||
$this->generator = new Generator;
|
||||
}
|
||||
|
||||
public function testCallbacks()
|
||||
{
|
||||
$this->generator->generate([
|
||||
'sample' => function($breadcrumbs)
|
||||
{
|
||||
$this->assertSame($this->generator, $breadcrumbs);
|
||||
},
|
||||
], 'sample', []);
|
||||
}
|
||||
|
||||
public function testCallbackParameters()
|
||||
{
|
||||
$this->generator->generate([
|
||||
'sample' => function($breadcrumbs, $num, $text)
|
||||
{
|
||||
$this->assertSame(1, $num);
|
||||
$this->assertSame('blah', $text);
|
||||
},
|
||||
], 'sample', [1, 'blah']);
|
||||
}
|
||||
|
||||
// $breadcrumbs->push($title)
|
||||
// $breadcrumb->title
|
||||
public function testPush_title()
|
||||
{
|
||||
$breadcrumbs = $this->generator->generate([
|
||||
'sample' => function($breadcrumbs)
|
||||
{
|
||||
$breadcrumbs->push('Home');
|
||||
},
|
||||
], 'sample', []);
|
||||
|
||||
$this->assertCount(1, $breadcrumbs);
|
||||
$this->assertSame('Home', $breadcrumbs[0]->title);
|
||||
$this->assertNull($breadcrumbs[0]->url);
|
||||
}
|
||||
|
||||
// $breadcrumbs->push($title, $url)
|
||||
// $breadcrumb->url
|
||||
public function testPush_title_url()
|
||||
{
|
||||
$breadcrumbs = $this->generator->generate([
|
||||
'sample' => function($breadcrumbs)
|
||||
{
|
||||
$breadcrumbs->push('Home', '/');
|
||||
},
|
||||
], 'sample', []);
|
||||
|
||||
$this->assertCount(1, $breadcrumbs);
|
||||
$this->assertSame('Home', $breadcrumbs[0]->title);
|
||||
$this->assertSame('/', $breadcrumbs[0]->url);
|
||||
}
|
||||
|
||||
// $breadcrumbs->push($title, $url, $data)
|
||||
// $breadcrumb->custom_attribute_name
|
||||
public function testPush_title_url_data()
|
||||
{
|
||||
$data = [
|
||||
'foo' => 'bar',
|
||||
'baz' => 'qux',
|
||||
'title' => 'should not be overwritten by custom data',
|
||||
];
|
||||
|
||||
$breadcrumbs = $this->generator->generate([
|
||||
'sample' => function($breadcrumbs)
|
||||
{
|
||||
$breadcrumbs->push('Home', '/', ['foo' => 'bar', 'title' => 'ignored']);
|
||||
},
|
||||
], 'sample', []);
|
||||
|
||||
$this->assertCount(1, $breadcrumbs);
|
||||
$this->assertSame('Home', $breadcrumbs[0]->title);
|
||||
$this->assertSame('/', $breadcrumbs[0]->url);
|
||||
$this->assertSame('bar', $breadcrumbs[0]->foo);
|
||||
}
|
||||
|
||||
public function testPushMultipleTimes()
|
||||
{
|
||||
$breadcrumbs = $this->generator->generate([
|
||||
'sample' => function($breadcrumbs)
|
||||
{
|
||||
$breadcrumbs->push('Level 1', '/1');
|
||||
$breadcrumbs->push('Level 2', '/2');
|
||||
$breadcrumbs->push('Level 3', '/3');
|
||||
},
|
||||
], 'sample', []);
|
||||
|
||||
$this->assertCount(3, $breadcrumbs);
|
||||
$this->assertSame('Level 1', $breadcrumbs[0]->title);
|
||||
$this->assertSame('Level 2', $breadcrumbs[1]->title);
|
||||
$this->assertSame('Level 3', $breadcrumbs[2]->title);
|
||||
$this->assertSame('/1', $breadcrumbs[0]->url);
|
||||
$this->assertSame('/2', $breadcrumbs[1]->url);
|
||||
$this->assertSame('/3', $breadcrumbs[2]->url);
|
||||
}
|
||||
|
||||
// $breadcrumbs->parent($name)
|
||||
public function testParent_name()
|
||||
{
|
||||
$breadcrumbs = $this->generator->generate([
|
||||
'home' => function($breadcrumbs)
|
||||
{
|
||||
$breadcrumbs->push('Home', '/');
|
||||
},
|
||||
'sample' => function($breadcrumbs)
|
||||
{
|
||||
$breadcrumbs->parent('home');
|
||||
$breadcrumbs->push('Page', '/page');
|
||||
},
|
||||
], 'sample', []);
|
||||
|
||||
$this->assertCount(2, $breadcrumbs);
|
||||
$this->assertSame('Home', $breadcrumbs[0]->title);
|
||||
$this->assertSame('/', $breadcrumbs[0]->url);
|
||||
$this->assertSame('Page', $breadcrumbs[1]->title);
|
||||
$this->assertSame('/page', $breadcrumbs[1]->url);
|
||||
}
|
||||
|
||||
// $breadcrumbs->parent($name, $param1, ...)
|
||||
public function testParent_name_params()
|
||||
{
|
||||
$breadcrumbs = $this->generator->generate([
|
||||
'parent' => function($breadcrumbs, $num, $text)
|
||||
{
|
||||
$this->assertSame(1, $num);
|
||||
$this->assertSame('blah', $text);
|
||||
},
|
||||
'sample' => function($breadcrumbs)
|
||||
{
|
||||
$breadcrumbs->parent('parent', 1, 'blah');
|
||||
},
|
||||
], 'sample', []);
|
||||
}
|
||||
|
||||
// $breadcrumbs->parentArray($name, $params)
|
||||
public function testParentArray_name_params()
|
||||
{
|
||||
$breadcrumbs = $this->generator->generate([
|
||||
'parent' => function($breadcrumbs, $num, $text)
|
||||
{
|
||||
$this->assertSame(1, $num);
|
||||
$this->assertSame('blah', $text);
|
||||
},
|
||||
'sample' => function($breadcrumbs)
|
||||
{
|
||||
$breadcrumbs->parentArray('parent', [1, 'blah']);
|
||||
},
|
||||
], 'sample', []);
|
||||
}
|
||||
|
||||
// $breadcrumb->first
|
||||
// $breadcrumb->last
|
||||
public function testFirstLast()
|
||||
{
|
||||
$breadcrumbs = $this->generator->generate([
|
||||
'sample' => function($breadcrumbs)
|
||||
{
|
||||
$breadcrumbs->push('Level 1', '/1');
|
||||
$breadcrumbs->push('Level 2', '/2');
|
||||
$breadcrumbs->push('Level 3', '/3');
|
||||
},
|
||||
], 'sample', []);
|
||||
|
||||
$this->assertCount(3, $breadcrumbs);
|
||||
|
||||
$this->assertTrue($breadcrumbs[0]->first, '$breadcrumbs[0]->first');
|
||||
$this->assertFalse($breadcrumbs[1]->first, '$breadcrumbs[1]->first');
|
||||
$this->assertFalse($breadcrumbs[2]->first, '$breadcrumbs[2]->first');
|
||||
|
||||
$this->assertFalse($breadcrumbs[0]->last, '$breadcrumbs[0]->last');
|
||||
$this->assertFalse($breadcrumbs[1]->last, '$breadcrumbs[1]->last');
|
||||
$this->assertTrue($breadcrumbs[2]->last, '$breadcrumbs[2]->last');
|
||||
}
|
||||
|
||||
}
|
329
vendor/davejamesmiller/laravel-breadcrumbs/tests/unit/ManagerTest.php
vendored
Normal file
329
vendor/davejamesmiller/laravel-breadcrumbs/tests/unit/ManagerTest.php
vendored
Normal file
@@ -0,0 +1,329 @@
|
||||
<?php
|
||||
|
||||
use DaveJamesMiller\Breadcrumbs\Manager;
|
||||
use Mockery as m;
|
||||
|
||||
class ManagerTest extends TestCase {
|
||||
|
||||
public function setUp()
|
||||
{
|
||||
parent::setUp();
|
||||
|
||||
$this->currentRoute = m::mock('DaveJamesMiller\Breadcrumbs\CurrentRoute');
|
||||
$this->generator = m::mock('DaveJamesMiller\Breadcrumbs\Generator');
|
||||
$this->view = m::mock('DaveJamesMiller\Breadcrumbs\View');
|
||||
$this->manager = new Manager($this->currentRoute, $this->generator, $this->view);
|
||||
|
||||
$this->manager->setView('view');
|
||||
}
|
||||
|
||||
// Breadcrumbs::register($name, $callback) is tested by other methods
|
||||
protected function register($name)
|
||||
{
|
||||
$this->manager->register($name, $fn = function() {
|
||||
// We're not testing whether the callbacks are executed - see GeneratorTest
|
||||
throw new Exception('Callback executed');
|
||||
});
|
||||
|
||||
return $fn;
|
||||
}
|
||||
|
||||
// Breadcrumbs::exists() -> boolean
|
||||
public function testExists()
|
||||
{
|
||||
$this->currentRoute->shouldReceive('get')->andReturn(['sample', [1, 'blah']]);
|
||||
|
||||
$this->assertFalse($this->manager->exists());
|
||||
|
||||
$this->register('sample');
|
||||
$this->assertTrue($this->manager->exists());
|
||||
}
|
||||
|
||||
// Breadcrumbs::exists($name) -> boolean
|
||||
public function testExists_name()
|
||||
{
|
||||
$this->assertFalse($this->manager->exists('sample'));
|
||||
|
||||
$this->register('sample');
|
||||
$this->assertTrue($this->manager->exists('sample'));
|
||||
}
|
||||
|
||||
// Breadcrumbs::generate() -> array
|
||||
public function testGenerate()
|
||||
{
|
||||
$fn = $this->register('sample');
|
||||
|
||||
$this->currentRoute->shouldReceive('get')->andReturn(['sample', [1, 'blah']]);
|
||||
$this->generator->shouldReceive('generate')->with(['sample' => $fn], 'sample', [1, 'blah'])->once()->andReturn('generated');;
|
||||
|
||||
$this->assertSame('generated', $this->manager->generate());
|
||||
}
|
||||
|
||||
// Breadcrumbs::generate($name) -> array
|
||||
public function testGenerate_name()
|
||||
{
|
||||
$fn = $this->register('sample');
|
||||
|
||||
$this->generator->shouldReceive('generate')->with(['sample' => $fn], 'sample', [])->once()->andReturn('generated');;
|
||||
|
||||
$this->assertSame('generated', $this->manager->generate('sample'));
|
||||
}
|
||||
|
||||
// Breadcrumbs::generate($name, $param1, ...) -> array
|
||||
public function testGenerate_name_params()
|
||||
{
|
||||
$fn = $this->register('sample');
|
||||
|
||||
$this->generator->shouldReceive('generate')->with(['sample' => $fn], 'sample', [1, 'blah'])->once()->andReturn('generated');;
|
||||
|
||||
$this->assertSame('generated', $this->manager->generate('sample', 1, 'blah'));
|
||||
}
|
||||
|
||||
// Breadcrumbs::generateArray($name, $params) -> array
|
||||
public function testGenerateArray_name_params()
|
||||
{
|
||||
$fn = $this->register('sample');
|
||||
|
||||
$this->generator->shouldReceive('generate')->with(['sample' => $fn], 'sample', [1, 'blah'])->once()->andReturn('generated');;
|
||||
|
||||
$this->assertSame('generated', $this->manager->generateArray('sample', [1, 'blah']));
|
||||
}
|
||||
|
||||
// Breadcrumbs::generateIfExists() -> array
|
||||
public function testGenerateIfExists_existing()
|
||||
{
|
||||
$fn = $this->register('sample');
|
||||
|
||||
$this->currentRoute->shouldReceive('get')->andReturn(['sample', [1, 'blah']]);
|
||||
$this->generator->shouldReceive('generate')->with(['sample' => $fn], 'sample', [1, 'blah'])->once()->andReturn('generated');
|
||||
|
||||
$this->assertSame('generated', $this->manager->generateIfExists());
|
||||
}
|
||||
|
||||
public function testGenerateIfExists_nonexistant()
|
||||
{
|
||||
$this->currentRoute->shouldReceive('get')->andReturn(['sample', [1, 'blah']]);
|
||||
$this->generator->shouldReceive('generate')->never();
|
||||
|
||||
$this->assertSame([], $this->manager->generateIfExists());
|
||||
}
|
||||
|
||||
// Breadcrumbs::generateIfExists($name) -> array
|
||||
public function testGenerateIfExists_name_existing()
|
||||
{
|
||||
$fn = $this->register('sample');
|
||||
|
||||
$this->generator->shouldReceive('generate')->with(['sample' => $fn], 'sample', [])->once()->andReturn('generated');
|
||||
|
||||
$this->assertSame('generated', $this->manager->generateIfExists('sample'));
|
||||
}
|
||||
|
||||
public function testGenerateIfExists_name_nonexistant()
|
||||
{
|
||||
$this->generator->shouldReceive('generate')->never();
|
||||
|
||||
$this->assertSame([], $this->manager->generateIfExists('sample'));
|
||||
}
|
||||
|
||||
// Breadcrumbs::generateIfExists($name, $param1, ...) -> array
|
||||
public function testGenerateIfExists_name_params_existing()
|
||||
{
|
||||
$fn = $this->register('sample');
|
||||
|
||||
$this->generator->shouldReceive('generate')->with(['sample' => $fn], 'sample', [1, 'blah'])->once()->andReturn('generated');
|
||||
|
||||
$this->assertSame('generated', $this->manager->generateIfExists('sample', 1, 'blah'));
|
||||
}
|
||||
|
||||
public function testGenerateIfExists_name_params_nonexistant()
|
||||
{
|
||||
$this->generator->shouldReceive('generate')->never();
|
||||
|
||||
$this->assertSame([], $this->manager->generateIfExists('sample', 1, 'blah'));
|
||||
}
|
||||
|
||||
// Breadcrumbs::generateArrayIfExists($name, $params) -> array
|
||||
public function testGenerateArrayIfExists_name_params_existing()
|
||||
{
|
||||
$fn = $this->register('sample');
|
||||
|
||||
$this->generator->shouldReceive('generate')->with(['sample' => $fn], 'sample', [1, 'blah'])->once()->andReturn('generated');
|
||||
|
||||
$this->assertSame('generated', $this->manager->generateArrayIfExists('sample', [1, 'blah']));
|
||||
}
|
||||
|
||||
public function testGenerateArrayIfExists_name_params_nonexistant()
|
||||
{
|
||||
$this->generator->shouldReceive('generate')->never();
|
||||
|
||||
$this->assertSame([], $this->manager->generateArrayIfExists('sample', [1, 'blah']));
|
||||
}
|
||||
|
||||
// Breadcrumbs::render() -> array
|
||||
public function testRender()
|
||||
{
|
||||
$fn = $this->register('sample');
|
||||
|
||||
$this->currentRoute->shouldReceive('get')->andReturn(['sample', [1, 'blah']]);
|
||||
$this->generator->shouldReceive('generate')->with(['sample' => $fn], 'sample', [1, 'blah'])->once()->andReturn('generated');;
|
||||
$this->view->shouldReceive('render')->with('view', 'generated')->once()->andReturn('rendered');
|
||||
|
||||
$this->assertSame('rendered', $this->manager->render());
|
||||
}
|
||||
|
||||
// Breadcrumbs::render($name) -> array
|
||||
public function testRender_name()
|
||||
{
|
||||
$fn = $this->register('sample');
|
||||
|
||||
$this->generator->shouldReceive('generate')->with(['sample' => $fn], 'sample', [])->once()->andReturn('generated');;
|
||||
$this->view->shouldReceive('render')->with('view', 'generated')->once()->andReturn('rendered');
|
||||
|
||||
$this->assertSame('rendered', $this->manager->render('sample'));
|
||||
}
|
||||
|
||||
// Breadcrumbs::render($name, $param1, ...) -> array
|
||||
public function testRender_name_params()
|
||||
{
|
||||
$fn = $this->register('sample');
|
||||
|
||||
$this->generator->shouldReceive('generate')->with(['sample' => $fn], 'sample', [1, 'blah'])->once()->andReturn('generated');;
|
||||
$this->view->shouldReceive('render')->with('view', 'generated')->once()->andReturn('rendered');
|
||||
|
||||
$this->assertSame('rendered', $this->manager->render('sample', 1, 'blah'));
|
||||
}
|
||||
|
||||
// Breadcrumbs::renderArray($name, $params) -> array
|
||||
public function testRenderArray_name_params()
|
||||
{
|
||||
$fn = $this->register('sample');
|
||||
|
||||
$this->generator->shouldReceive('generate')->with(['sample' => $fn], 'sample', [1, 'blah'])->once()->andReturn('generated');;
|
||||
$this->view->shouldReceive('render')->with('view', 'generated')->once()->andReturn('rendered');
|
||||
|
||||
$this->assertSame('rendered', $this->manager->renderArray('sample', [1, 'blah']));
|
||||
}
|
||||
|
||||
// Breadcrumbs::renderIfExists() -> array
|
||||
public function testRenderIfExists_existing()
|
||||
{
|
||||
$fn = $this->register('sample');
|
||||
|
||||
$this->currentRoute->shouldReceive('get')->andReturn(['sample', [1, 'blah']]);
|
||||
$this->generator->shouldReceive('generate')->with(['sample' => $fn], 'sample', [1, 'blah'])->once()->andReturn('generated');
|
||||
$this->view->shouldReceive('render')->with('view', 'generated')->once()->andReturn('rendered');
|
||||
|
||||
$this->assertSame('rendered', $this->manager->renderIfExists());
|
||||
}
|
||||
|
||||
public function testRenderIfExists_nonexistant()
|
||||
{
|
||||
$this->currentRoute->shouldReceive('get')->andReturn(['sample', [1, 'blah']]);
|
||||
$this->generator->shouldReceive('generate')->never();
|
||||
$this->view->shouldReceive('render')->never();
|
||||
|
||||
$this->assertSame('', $this->manager->renderIfExists());
|
||||
}
|
||||
|
||||
// Breadcrumbs::renderIfExists($name) -> array
|
||||
public function testRenderIfExists_name_existing()
|
||||
{
|
||||
$fn = $this->register('sample');
|
||||
|
||||
$this->generator->shouldReceive('generate')->with(['sample' => $fn], 'sample', [])->once()->andReturn('generated');
|
||||
$this->view->shouldReceive('render')->with('view', 'generated')->once()->andReturn('rendered');
|
||||
|
||||
$this->assertSame('rendered', $this->manager->renderIfExists('sample'));
|
||||
}
|
||||
|
||||
public function testRenderIfExists_name_nonexistant()
|
||||
{
|
||||
$this->generator->shouldReceive('generate')->never();
|
||||
$this->view->shouldReceive('render')->never();
|
||||
|
||||
$this->assertSame('', $this->manager->renderIfExists('sample'));
|
||||
}
|
||||
|
||||
// Breadcrumbs::renderIfExists($name, $param1, ...) -> array
|
||||
public function testRenderIfExists_name_params_existing()
|
||||
{
|
||||
$fn = $this->register('sample');
|
||||
|
||||
$this->generator->shouldReceive('generate')->with(['sample' => $fn], 'sample', [1, 'blah'])->once()->andReturn('generated');
|
||||
$this->view->shouldReceive('render')->with('view', 'generated')->once()->andReturn('rendered');
|
||||
|
||||
$this->assertSame('rendered', $this->manager->renderIfExists('sample', 1, 'blah'));
|
||||
}
|
||||
|
||||
public function testRenderIfExists_name_params_nonexistant()
|
||||
{
|
||||
$this->generator->shouldReceive('generate')->never();
|
||||
$this->view->shouldReceive('render')->never();
|
||||
|
||||
$this->assertSame('', $this->manager->renderIfExists('sample', 1, 'blah'));
|
||||
}
|
||||
|
||||
// Breadcrumbs::renderArrayIfExists($name, $params) -> array
|
||||
public function testRenderArrayIfExists_name_params_existing()
|
||||
{
|
||||
$fn = $this->register('sample');
|
||||
|
||||
$this->generator->shouldReceive('generate')->with(['sample' => $fn], 'sample', [1, 'blah'])->once()->andReturn('generated');
|
||||
$this->view->shouldReceive('render')->with('view', 'generated')->once()->andReturn('rendered');
|
||||
|
||||
$this->assertSame('rendered', $this->manager->renderArrayIfExists('sample', [1, 'blah']));
|
||||
}
|
||||
|
||||
public function testRenderArrayIfExists_name_params_nonexistant()
|
||||
{
|
||||
$this->generator->shouldReceive('generate')->never();
|
||||
$this->view->shouldReceive('render')->never();
|
||||
|
||||
$this->assertSame('', $this->manager->renderArrayIfExists('sample', [1, 'blah']));
|
||||
}
|
||||
|
||||
// Breadcrumbs::setCurrentRoute($name)
|
||||
public function testSetCurrentRoute_name()
|
||||
{
|
||||
$this->currentRoute->shouldReceive('set')->with('sample', [])->once();
|
||||
|
||||
$this->manager->setCurrentRoute('sample');
|
||||
}
|
||||
|
||||
// Breadcrumbs::setCurrentRoute($name, $param1, ...)
|
||||
public function testSetCurrentRoute_name_params()
|
||||
{
|
||||
$this->currentRoute->shouldReceive('set')->with('sample', [1, 'blah'])->once();
|
||||
|
||||
$this->manager->setCurrentRoute('sample', 1, 'blah');
|
||||
}
|
||||
|
||||
// Breadcrumbs::setCurrentRouteArray($name, $params)
|
||||
public function testSetCurrentRouteArray_name_params()
|
||||
{
|
||||
$this->currentRoute->shouldReceive('set')->with('sample', [1, 'blah'])->once();
|
||||
|
||||
$this->manager->setCurrentRouteArray('sample', [1, 'blah']);
|
||||
}
|
||||
|
||||
// Breadcrumbs::clearCurrentRoute()
|
||||
public function testClearCurrentRoute()
|
||||
{
|
||||
$this->currentRoute->shouldReceive('clear')->withNoArgs()->once();
|
||||
|
||||
$this->manager->clearCurrentRoute();
|
||||
}
|
||||
|
||||
// Breadcrumbs::setView($view)
|
||||
public function testSetView()
|
||||
{
|
||||
$fn = $this->register('sample');
|
||||
|
||||
$this->generator->shouldReceive('generate')->with(['sample' => $fn], 'sample', [1, 'blah'])->once()->andReturn('generated');;
|
||||
$this->view->shouldReceive('render')->with('custom.view', 'generated')->once()->andReturn('rendered');
|
||||
|
||||
$this->manager->setView($view = 'custom.view');
|
||||
$this->assertSame('rendered', $this->manager->render('sample', 1, 'blah'));
|
||||
}
|
||||
|
||||
}
|
51
vendor/davejamesmiller/laravel-breadcrumbs/tests/unit/ViewTest.php
vendored
Normal file
51
vendor/davejamesmiller/laravel-breadcrumbs/tests/unit/ViewTest.php
vendored
Normal file
@@ -0,0 +1,51 @@
|
||||
<?php
|
||||
|
||||
class ViewTest extends TestCase {
|
||||
|
||||
public function setUp()
|
||||
{
|
||||
parent::setUp();
|
||||
|
||||
$this->view = app('DaveJamesMiller\Breadcrumbs\View');
|
||||
|
||||
$this->breadcrumbs = [
|
||||
(object) [
|
||||
'title' => 'Home',
|
||||
'url' => '/',
|
||||
'first' => true,
|
||||
'last' => false,
|
||||
],
|
||||
(object) [
|
||||
'title' => 'Not a link',
|
||||
'url' => null, // Test non-links
|
||||
'first' => false,
|
||||
'last' => false,
|
||||
],
|
||||
(object) [
|
||||
'title' => 'Blog & < >', // Test HTML escaping
|
||||
'url' => '/blog',
|
||||
'first' => false,
|
||||
'last' => false,
|
||||
],
|
||||
(object) [
|
||||
'title' => 'Sample Post',
|
||||
'url' => '/blog/123',
|
||||
'first' => false,
|
||||
'last' => true,
|
||||
],
|
||||
];
|
||||
}
|
||||
|
||||
public function testBootstrap2()
|
||||
{
|
||||
$html = $this->view->render('breadcrumbs::bootstrap2', $this->breadcrumbs);
|
||||
$this->assertXmlStringEqualsXmlFile(__DIR__ . '/../fixtures/bootstrap2.html', $html);
|
||||
}
|
||||
|
||||
public function testBootstrap3()
|
||||
{
|
||||
$html = $this->view->render('breadcrumbs::bootstrap3', $this->breadcrumbs);
|
||||
$this->assertXmlStringEqualsXmlFile(__DIR__ . '/../fixtures/bootstrap3.html', $html);
|
||||
}
|
||||
|
||||
}
|
Reference in New Issue
Block a user