From 24efd7ba8710fc6b4749636bd89b1f16931d8a46 Mon Sep 17 00:00:00 2001 From: Duncan McClean Date: Mon, 19 Jan 2026 12:06:02 +0000 Subject: [PATCH 1/2] Handle situation where structure doesn't exist yet --- src/StaticCaching/DefaultInvalidator.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/StaticCaching/DefaultInvalidator.php b/src/StaticCaching/DefaultInvalidator.php index 4425a88f3cb..fd0317cdf38 100644 --- a/src/StaticCaching/DefaultInvalidator.php +++ b/src/StaticCaching/DefaultInvalidator.php @@ -161,7 +161,7 @@ protected function invalidateNavUrls($nav) protected function invalidateNavTreeUrls($tree) { - $rules = collect(Arr::get($this->rules, "navigation.{$tree->structure()->handle()}.urls")); + $rules = collect(Arr::get($this->rules, "navigation.{$tree->handle()}.urls")); $absoluteUrls = $rules->filter(fn (string $rule) => $this->isAbsoluteUrl($rule))->all(); From 9ca73aa70abe45637568e1be4d0931735cf38b3a Mon Sep 17 00:00:00 2001 From: Duncan McClean Date: Mon, 19 Jan 2026 17:00:42 +0000 Subject: [PATCH 2/2] fix tests --- tests/StaticCaching/DefaultInvalidatorTest.php | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) diff --git a/tests/StaticCaching/DefaultInvalidatorTest.php b/tests/StaticCaching/DefaultInvalidatorTest.php index 5e794fbdd24..2af12facf78 100644 --- a/tests/StaticCaching/DefaultInvalidatorTest.php +++ b/tests/StaticCaching/DefaultInvalidatorTest.php @@ -559,12 +559,8 @@ public function navigation_urls_can_be_invalidated_by_a_tree() ])->once(); }); - $nav = tap(Mockery::mock(Nav::class), function ($m) { + $tree = tap(Mockery::mock(NavTree::class), function ($m) { $m->shouldReceive('handle')->andReturn('links'); - }); - - $tree = tap(Mockery::mock(NavTree::class), function ($m) use ($nav) { - $m->shouldReceive('structure')->andReturn($nav); $m->shouldReceive('site')->andReturn(Site::default()); }); @@ -599,12 +595,8 @@ public function navigation_urls_can_be_invalidated_by_a_tree_in_a_multisite() ])->once(); }); - $nav = tap(Mockery::mock(Nav::class), function ($m) { + $tree = tap(Mockery::mock(NavTree::class), function ($m) { $m->shouldReceive('handle')->andReturn('links'); - }); - - $tree = tap(Mockery::mock(NavTree::class), function ($m) use ($nav) { - $m->shouldReceive('structure')->andReturn($nav); $m->shouldReceive('site')->andReturn(Site::get('fr')); });