Skip to content

Commit 79b82d5

Browse files
committed
Copilot generate tests
1 parent 6064b5d commit 79b82d5

File tree

1 file changed

+36
-2
lines changed

1 file changed

+36
-2
lines changed

packages/framework/tests/Feature/NavigationManagerTest.php

Lines changed: 36 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,20 +4,54 @@
44

55
namespace Hyde\Framework\Testing\Feature;
66

7+
use Hyde\Framework\Features\Navigation\NavigationManager;
8+
use Hyde\Framework\Features\Navigation\BaseNavigationMenu;
79
use Hyde\Testing\TestCase;
810

911
/**
1012
* @covers \Hyde\Framework\Features\Navigation\NavigationManager
1113
*/
1214
class NavigationManagerTest extends TestCase
1315
{
16+
protected NavigationManager $navigationManager;
17+
18+
protected function setUp(): void
19+
{
20+
parent::setUp();
21+
$this->navigationManager = new NavigationManager();
22+
}
23+
24+
/** @author Copilot */
1425
public function testRegisterMenu()
1526
{
16-
// Todo
27+
$menu = $this->createMock(BaseNavigationMenu::class);
28+
$this->navigationManager->registerMenu('test', $menu);
29+
30+
$reflection = new \ReflectionClass($this->navigationManager);
31+
$property = $reflection->getProperty('menus');
32+
$property->setAccessible(true);
33+
34+
$menus = $property->getValue($this->navigationManager);
35+
36+
$this->assertArrayHasKey('test', $menus);
37+
$this->assertSame($menu, $menus['test']);
1738
}
1839

40+
/** @author Copilot */
1941
public function testGetMenu()
2042
{
21-
// Todo
43+
$menu = $this->createMock(BaseNavigationMenu::class);
44+
$this->navigationManager->registerMenu('test', $menu);
45+
46+
$retrievedMenu = $this->navigationManager->getMenu('test');
47+
48+
$this->assertSame($menu, $retrievedMenu);
49+
}
50+
51+
/** @author Copilot */
52+
public function testGetMenuThrowsExceptionForNonExistentMenu()
53+
{
54+
$this->expectException(\Exception::class);
55+
$this->navigationManager->getMenu('nonexistent');
2256
}
2357
}

0 commit comments

Comments
 (0)