Skip to content

Commit 518df04

Browse files
authored
React/Jest tests for PeripheralsTable.js (#246)
1 parent 7ccf4a9 commit 518df04

File tree

1 file changed

+37
-0
lines changed

1 file changed

+37
-0
lines changed
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
import React from 'react';
2+
import { render, screen, waitF } from '@testing-library/react';
3+
import '@testing-library/jest-dom';
4+
import PeripheralsTable from '../../components/Tables/PeripheralsTable';
5+
import { GlobalStateProvider } from '../../GlobalStateProvider';
6+
import { SocTotalPowerProvider } from '../../SOCTotalPowerProvider';
7+
import * as server from '../../utils/serverAPI';
8+
9+
jest.mock('../../utils/serverAPI', () => ({
10+
GET: jest.fn(),
11+
PATCH: jest.fn(),
12+
peripheralPath: jest.fn(),
13+
}));
14+
15+
describe('PeripheralsTable Component', () => {
16+
const mockPeripheralsUrl = [
17+
{ href: 'mock-peripheral-href1', type: 'spi' },
18+
{ href: 'mock-peripheral-href2', type: 'jtag' },
19+
];
20+
21+
test('renders PeripheralsTable header correctly', () => {
22+
render(
23+
<GlobalStateProvider>
24+
<SocTotalPowerProvider>
25+
<PeripheralsTable device="mock-device" peripheralsUrl={mockPeripheralsUrl} update={false} notify={jest.fn()} />
26+
</SocTotalPowerProvider>
27+
</GlobalStateProvider>
28+
);
29+
30+
expect(screen.getByText('Peripherals')).toBeInTheDocument();
31+
expect(screen.getByText('Action')).toBeInTheDocument();
32+
expect(screen.getByText('Usage')).toBeInTheDocument();
33+
expect(screen.getByText('Performance')).toBeInTheDocument();
34+
expect(screen.getByText('IO used')).toBeInTheDocument();
35+
expect(screen.getByText('Block Power')).toBeInTheDocument();
36+
});
37+
});

0 commit comments

Comments
 (0)