From 7ecf54ceb05605c204548a0c33a80a3cc91abf4b Mon Sep 17 00:00:00 2001 From: Amit Haridas Date: Fri, 5 Jun 2026 11:48:26 +0530 Subject: [PATCH] feat(renderer): Toolbar skeleton with formatting buttons --- src/renderer/components/layout/Toolbar.tsx | 15 +++++++++++++++ tests/component/layout/Toolbar.test.tsx | 11 +++++++++++ 2 files changed, 26 insertions(+) create mode 100644 src/renderer/components/layout/Toolbar.tsx create mode 100644 tests/component/layout/Toolbar.test.tsx diff --git a/src/renderer/components/layout/Toolbar.tsx b/src/renderer/components/layout/Toolbar.tsx new file mode 100644 index 0000000..c9dc98c --- /dev/null +++ b/src/renderer/components/layout/Toolbar.tsx @@ -0,0 +1,15 @@ +import { Bold, Italic, List, ListOrdered, Code, Link as LinkIcon } from 'lucide-react'; +import { Button } from '@/components/ui/button'; + +export function Toolbar() { + return ( +
+ + + + + + +
+ ); +} \ No newline at end of file diff --git a/tests/component/layout/Toolbar.test.tsx b/tests/component/layout/Toolbar.test.tsx new file mode 100644 index 0000000..9c49cad --- /dev/null +++ b/tests/component/layout/Toolbar.test.tsx @@ -0,0 +1,11 @@ +import { describe, it, expect } from 'vitest'; +import { render, screen } from '@testing-library/react'; +import { Toolbar } from '@/components/layout/Toolbar'; + +describe('Toolbar', () => { + it('renders formatting buttons', () => { + render(); + expect(screen.getByRole('button', { name: /bold/i })).toBeInTheDocument(); + expect(screen.getByRole('button', { name: /italic/i })).toBeInTheDocument(); + }); +}); \ No newline at end of file