✅ test(home): update unit tests
This commit is contained in:
@@ -1,60 +1,22 @@
|
|||||||
import { describe, it, expect, afterEach } from 'vitest'
|
import { screen } from '@testing-library/react'
|
||||||
import { render, screen, cleanup } from '@testing-library/react'
|
|
||||||
import userEvent from '@testing-library/user-event'
|
import { renderWithRouter as render } from 'components/utils/tests'
|
||||||
|
|
||||||
import MainPage from './MainPage'
|
import MainPage from './MainPage'
|
||||||
|
|
||||||
// Tests
|
// Tests
|
||||||
describe('Renders main page correctly', async () => {
|
describe('Main page', async () => {
|
||||||
/**
|
|
||||||
* Resets all renders after each test
|
|
||||||
*/
|
|
||||||
afterEach(() => {
|
|
||||||
cleanup()
|
|
||||||
})
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Passes - shows title correctly
|
|
||||||
*/
|
|
||||||
it('Should render the page correctly', async () => {
|
it('Should render the page correctly', async () => {
|
||||||
// Setup
|
// Setup
|
||||||
await render(<MainPage />)
|
await render(<MainPage />)
|
||||||
const h1 = await screen.queryByText('Vite + React')
|
|
||||||
|
|
||||||
// Post Expectations
|
// Make sure the page title is correct
|
||||||
expect(h1).toBeInTheDocument()
|
expect(screen.getByText('Robotics Engineer')).toBeInTheDocument()
|
||||||
})
|
|
||||||
|
|
||||||
/**
|
// Make sure the project spotlights are present
|
||||||
* Passes - shows the button count correctly present
|
expect(screen.getByText('LINFA: An Intuitive Block-Programming Interface for Reconfigurable Robots')).toBeInTheDocument()
|
||||||
*/
|
expect(screen.getByText("Revamping HHCM's Modular: Swift Generation of Modular Robot Models")).toBeInTheDocument()
|
||||||
it('Should show the button count set to 0', async () => {
|
expect(screen.getByText('Automated Actuators and Robotic Modules Calibration')).toBeInTheDocument()
|
||||||
// Setup
|
expect(screen.getByText('Voice Controlled Mobile Robot for Indoor Applications')).toBeInTheDocument()
|
||||||
await render(<MainPage />)
|
|
||||||
const button = await screen.queryByText('count is 0')
|
|
||||||
|
|
||||||
// Expectations
|
|
||||||
expect(button).toBeInTheDocument()
|
|
||||||
})
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Passes - clicks the button 3 times and shows the correct count
|
|
||||||
*/
|
|
||||||
it('Should show the button count set to 3', async () => {
|
|
||||||
// Setup
|
|
||||||
const user = userEvent.setup()
|
|
||||||
await render(<MainPage />)
|
|
||||||
const button = await screen.queryByText('count is 0')
|
|
||||||
|
|
||||||
// Pre Expectations
|
|
||||||
expect(button).toBeInTheDocument()
|
|
||||||
|
|
||||||
// Actions
|
|
||||||
await user.click(button as HTMLElement)
|
|
||||||
await user.click(button as HTMLElement)
|
|
||||||
await user.click(button as HTMLElement)
|
|
||||||
|
|
||||||
// Post Expectations
|
|
||||||
expect(button?.innerHTML).toBe('count is 3')
|
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|||||||
Reference in New Issue
Block a user