From e2b90d8cd7b269fea46056d94a0beea38c2c42c8 Mon Sep 17 00:00:00 2001
From: Bastien DUMONT <bdumont@grandlyon.com>
Date: Tue, 14 Nov 2023 08:11:28 +0000
Subject: [PATCH] test(rtl): navbar

---
 src/components/Navbar/Navbar.spec.tsx | 17 +++++++++--------
 1 file changed, 9 insertions(+), 8 deletions(-)

diff --git a/src/components/Navbar/Navbar.spec.tsx b/src/components/Navbar/Navbar.spec.tsx
index b457828e3..d4d426391 100644
--- a/src/components/Navbar/Navbar.spec.tsx
+++ b/src/components/Navbar/Navbar.spec.tsx
@@ -1,5 +1,5 @@
+import { render, screen } from '@testing-library/react'
 import Navbar from 'components/Navbar/Navbar'
-import { mount } from 'enzyme'
 import React from 'react'
 import { Provider } from 'react-redux'
 import { BrowserRouter } from 'react-router-dom'
@@ -8,14 +8,14 @@ import { createMockEcolyoStore } from 'tests/__mocks__/store'
 describe('Navbar component', () => {
   it('should be rendered correctly with 5 navlink', () => {
     const store = createMockEcolyoStore()
-    const wrapper = mount(
+    render(
       <Provider store={store}>
         <BrowserRouter>
           <Navbar />
         </BrowserRouter>
       </Provider>
     )
-    expect(wrapper.find('NavLink')).toHaveLength(5)
+    expect(screen.getAllByRole('link').length).toBe(5)
   })
 
   it('should be rendered correctly with notifications', () => {
@@ -27,15 +27,15 @@ describe('Navbar component', () => {
         analysisNotification: true,
       },
     })
-    const wrapper = mount(
+    const { container } = render(
       <Provider store={store}>
         <BrowserRouter>
           <Navbar />
         </BrowserRouter>
       </Provider>
     )
-    expect(wrapper.find('.nb-notif').first().text()).toEqual('1')
-    expect(wrapper.find('.nb-notif').last().text()).toEqual('1')
+    const notifElements = container.getElementsByClassName('nb-notif')
+    expect(notifElements.length).toBe(2)
   })
 
   it('should be rendered correctly without notifications', () => {
@@ -47,13 +47,14 @@ describe('Navbar component', () => {
         analysisNotification: false,
       },
     })
-    const wrapper = mount(
+    const { container } = render(
       <Provider store={store}>
         <BrowserRouter>
           <Navbar />
         </BrowserRouter>
       </Provider>
     )
-    expect(wrapper.find('.nb-notif').exists()).toBeFalsy()
+    const notifElements = container.getElementsByClassName('nb-notif')
+    expect(notifElements.length).toBe(0)
   })
 })
-- 
GitLab