Skip to content

Commit 774ca63

Browse files
committed
fix: parse includes
1 parent 9049537 commit 774ca63

File tree

2 files changed

+23
-2
lines changed

2 files changed

+23
-2
lines changed

src/Support/Includes.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ public static function includes(Request $request): array
7878
*/
7979
public static function parse(string $include): array
8080
{
81-
return self::cache("parse:$include", static fn() => Arr::undot(
81+
return self::cache("parse:$include", static fn() => empty($include) ? [] : Arr::undot(
8282
array_fill_keys(explode(',', $include), []))
8383
);
8484
}
@@ -91,7 +91,7 @@ public static function parse(string $include): array
9191
private static function currentStack(Request $request): array
9292
{
9393
return Arr::get(
94-
self::parse($request->input('include', '')),
94+
self::parse($request->input('include') ?? ''),
9595
implode('.', self::$stack) ?: null,
9696
[]
9797
);

tests/Unit/Support/IncludesTest.php

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,8 @@ public function assert($expected, $actual, $message = '')
7575

7676
public function testParse()
7777
{
78+
$this->assertEquals([], Includes::parse(''));
79+
7880
$parsed = Includes::parse(implode(',', [
7981
'user',
8082
'posts',
@@ -98,6 +100,25 @@ public function testParse()
98100
], $parsed);
99101
}
100102

103+
public function testGet()
104+
{
105+
$request = new Request();
106+
107+
$this->assertEquals([], Includes::get($request));
108+
109+
$request = new Request(['include' => null]);
110+
111+
$this->assertEquals([], Includes::get($request));
112+
113+
$request = new Request(['include' => '']);
114+
115+
$this->assertEquals([], Includes::get($request));
116+
117+
$request = new Request(['include' => 'foo.bar,baz']);
118+
119+
$this->assertEquals(['foo', 'baz'], Includes::get($request));
120+
}
121+
101122
public function testIncludes()
102123
{
103124
$request = new Request([

0 commit comments

Comments
 (0)