From d4045fbcbfa8208ec31539744417f315f1f6fad8 Mon Sep 17 00:00:00 2001
From: Armand Philippot <git@armandphilippot.com>
Date: Tue, 21 Nov 2023 19:01:18 +0100
Subject: refactor(components): split Layout component in smaller components

The previous component was too long and hardly readable. So I splitted
it in different part and added tests.
---
 .../layout/site-header/site-branding.test.tsx      | 23 ++++++++++++++++++++++
 1 file changed, 23 insertions(+)
 create mode 100644 src/components/templates/layout/site-header/site-branding.test.tsx

(limited to 'src/components/templates/layout/site-header/site-branding.test.tsx')

diff --git a/src/components/templates/layout/site-header/site-branding.test.tsx b/src/components/templates/layout/site-header/site-branding.test.tsx
new file mode 100644
index 0000000..db454e3
--- /dev/null
+++ b/src/components/templates/layout/site-header/site-branding.test.tsx
@@ -0,0 +1,23 @@
+import { describe, expect, it } from '@jest/globals';
+import { render, screen as rtlScreen } from '../../../../../tests/utils';
+import { SiteBranding } from './site-branding';
+import { CONFIG } from 'src/utils/config';
+import { ROUTES } from 'src/utils/constants';
+
+describe('SiteBranding', () => {
+  it('renders the website logo, name and baseline', () => {
+    render(<SiteBranding />);
+
+    expect(
+      rtlScreen.getByRole('img', { name: `${CONFIG.name} picture` })
+    ).toBeInTheDocument();
+    expect(
+      rtlScreen.getByRole('img', { name: `${CONFIG.name} logo` })
+    ).toBeInTheDocument();
+    expect(rtlScreen.getByRole('link', { name: CONFIG.name })).toHaveAttribute(
+      'href',
+      ROUTES.HOME
+    );
+    expect(rtlScreen.getByText(CONFIG.baseline)).toBeInTheDocument();
+  });
+});
-- 
cgit v1.2.3

