11import { render , screen } from "@testing-library/react" ;
2- import ' @testing-library/jest-dom' ;
2+ import " @testing-library/jest-dom" ;
33import Newss from "./News.component" ;
44import { MemoryRouter } from "react-router-dom" ;
55
66jest . mock ( "@stores/root-store" , ( ) => ( {
77 __esModule : true ,
88 default : ( ) => ( {
99 newsStore : {
10+ fetchSortedNews : jest . fn ( ) . mockResolvedValue ( [ ] ) ,
1011 fetchNewsAllSortedByCreationDate : jest . fn ( ) . mockResolvedValue ( [ ] ) ,
1112 NewsMap : new Map ( ) ,
1213 getNewsArray : [ ] ,
1314 deleteNews : jest . fn ( ) ,
1415 setInternalMap : jest . fn ( ) ,
1516 } ,
17+ imagesStore : {
18+ fetchImages : jest . fn ( ) ,
19+ } ,
1620 } ) ,
1721 useModalContext : jest . fn ( ( ) => ( {
1822 modalStore : {
@@ -49,9 +53,17 @@ jest.mock("antd/es/table", () => ({ columns, dataSource }: any) => {
4953 < tr key = { news . id } >
5054 { columns . map ( ( column : any ) => (
5155 < td key = { `${ news . id } -${ column . key } ` } >
52- { column . render
53- ? column . render ( news [ column . dataIndex ] , news , 0 )
54- : news [ column . dataIndex ] }
56+ { column . dataIndex === "image" ? (
57+ < img
58+ className = "partners-table-logo"
59+ src = { `data:${ news . image . mimeType } ;base64,${ news . image . base64 } ` }
60+ alt = { news . image . alt }
61+ />
62+ ) : column . render ? (
63+ column . render ( news [ column . dataIndex ] , news , 0 )
64+ ) : (
65+ news [ column . dataIndex ]
66+ ) }
5567 </ td >
5668 ) ) }
5769 </ tr >
@@ -73,12 +85,11 @@ describe("News", () => {
7385 const createNewsButton = screen . getByText ( "Створити новину" ) ;
7486
7587 const titleCell = screen . getByText ( "Mock News 1" ) . closest ( "td" ) ;
76- const imageCell = screen . getByRole ( "img" , { name : / M o c k N e w s 1 I m a g e / i } ) . closest ( "td ") ;
88+ const imageCell = screen . getByAltText ( " Mock News 1 Image") ;
7789 const creationDateCell = screen . getByText ( "2022-01-01" ) . closest ( "td" ) ;
7890
7991 expect ( createNewsButton ) . toBeInTheDocument ( ) ;
8092 expect ( columnHeaders ) . toHaveLength ( 4 ) ;
81-
8293 expect ( titleCell ) . toBeInTheDocument ( ) ;
8394 expect ( imageCell ) . toBeInTheDocument ( ) ;
8495 expect ( creationDateCell ) . toBeInTheDocument ( ) ;
0 commit comments