diff --git a/app/src/ViewFunctions/Breadcrumbs.php b/app/src/ViewFunctions/Breadcrumbs.php index 1077b9a..d4f123c 100644 --- a/app/src/ViewFunctions/Breadcrumbs.php +++ b/app/src/ViewFunctions/Breadcrumbs.php @@ -29,7 +29,7 @@ class Breadcrumbs extends ViewFunction /** Build a collection of breadcrumbs for a given path. */ public function __invoke(string $path): Collection { - return Str::explode($path, $this->directorySeparator)->diff( + return Str::explode($path, $this->directorySeparator)->diffAssoc( explode($this->directorySeparator, $this->config->get('base_path')) )->filter(static function (string $crumb): bool { return ! in_array($crumb, [null, '.']); diff --git a/tests/ViewFunctions/BreadcrumbsTest.php b/tests/ViewFunctions/BreadcrumbsTest.php index 7f0b169..ed2d35b 100644 --- a/tests/ViewFunctions/BreadcrumbsTest.php +++ b/tests/ViewFunctions/BreadcrumbsTest.php @@ -17,7 +17,8 @@ class BreadcrumbsTest extends TestCase 'foo' => '?dir=foo', 'bar' => '?dir=foo/bar', 'baz' => '?dir=foo/bar/baz', - ]), $breadcrumbs('foo/bar/baz')); + 'tests' => '?dir=foo/bar/baz/tests', + ]), $breadcrumbs('foo/bar/baz/tests')); } public function test_it_can_parse_breadcrumbs_for_dot_path(): void