diff --git a/tests/Button.test.tsx b/tests/Button.test.tsx
new file mode 100644
index 0000000..8ad4685
--- /dev/null
+++ b/tests/Button.test.tsx
@@ -0,0 +1,19 @@
+import { expect, test } from 'vitest'
+import { render, screen, cleanup } from '@testing-library/react'
+import { Button } from '@/components/Button'
+
+test('button', () => {
+ render()
+
+ expect(screen.getByText('Hello')).toBeDefined()
+
+ cleanup()
+})
+
+test('button-with-link', () => {
+ render()
+
+ expect(screen.getByText('Hello').getAttribute('href')).toBe('/country-road')
+
+ cleanup()
+})
diff --git a/tests/Home.test.tsx b/tests/Home.test.tsx
new file mode 100644
index 0000000..36a46a6
--- /dev/null
+++ b/tests/Home.test.tsx
@@ -0,0 +1,19 @@
+import { expect, test } from 'vitest'
+import { render, screen, within } from '@testing-library/react'
+import Home from '../pages'
+
+test('home', () => {
+ render()
+ const main = within(screen.getByRole('main'))
+ expect(main.getByRole('heading', { level: 1, name: /DevOps jednoduše pro všechny./i })).toBeDefined()
+
+ const meets = screen.getAllByText(/Domluvme si schůzku/i)
+ meets.map(
+ (m) => expect(m.getAttribute('href'))
+ .toBe('https://calendly.com/vojtechmares/30min')
+ )
+
+ // const footer = within(screen.getByRole('contentinfo'))
+ // const link = within(footer.getByRole('link'))
+ // expect(link.getByRole('img', { name: /vercel logo/i })).toBeDefined()
+})