@@ -26,6 +26,7 @@ import {
2626 initClientWithChannels ,
2727} from '../../../mock-builders' ;
2828import { generatePoll } from '../../../mock-builders/generator/poll' ;
29+ import { QuotedMessagePreview } from '../QuotedMessagePreview' ;
2930
3031expect . extend ( toHaveNoViolations ) ;
3132
@@ -1520,8 +1521,10 @@ describe(`MessageInputFlat only`, () => {
15201521 } ) ;
15211522 } ;
15221523
1523- const initQuotedMessagePreview = async ( message ) => {
1524- await waitFor ( ( ) => expect ( screen . queryByText ( message . text ) ) . not . toBeInTheDocument ( ) ) ;
1524+ const initQuotedMessagePreview = async ( ) => {
1525+ await waitFor ( ( ) =>
1526+ expect ( screen . queryByTestId ( 'quoted-message-preview' ) ) . not . toBeInTheDocument ( ) ,
1527+ ) ;
15251528
15261529 const quoteButton = await screen . findByText ( / ^ r e p l y $ / i) ;
15271530 await waitFor ( ( ) => expect ( quoteButton ) . toBeInTheDocument ( ) ) ;
@@ -1550,6 +1553,38 @@ describe(`MessageInputFlat only`, () => {
15501553 await quotedMessagePreviewIsDisplayedCorrectly ( mainListMessage ) ;
15511554 } ) ;
15521555
1556+ it ( 'renders proper markdown (through default renderText fn)' , async ( ) => {
1557+ const m = generateMessage ( {
1558+ mentioned_users : [ { id : 'john' , name : 'John Cena' } ] ,
1559+ text : 'hey @John Cena' ,
1560+ user,
1561+ } ) ;
1562+ await renderComponent ( { messageContextOverrides : { message : m } } ) ;
1563+ await initQuotedMessagePreview ( m ) ;
1564+
1565+ expect ( await screen . findByText ( '@John Cena' ) ) . toHaveAttribute ( 'data-user-id' ) ;
1566+ } ) ;
1567+
1568+ it ( 'uses custom renderText fn if provided' , async ( ) => {
1569+ const m = generateMessage ( {
1570+ text : nanoid ( ) ,
1571+ user,
1572+ } ) ;
1573+ const fn = jest . fn ( ) . mockReturnValue ( < div data-testid = { m . text } > { m . text } </ div > ) ;
1574+ await renderComponent ( {
1575+ channelProps : {
1576+ QuotedMessagePreview : ( props ) => (
1577+ < QuotedMessagePreview { ...props } renderText = { fn } />
1578+ ) ,
1579+ } ,
1580+ messageContextOverrides : { message : m } ,
1581+ } ) ;
1582+ await initQuotedMessagePreview ( m ) ;
1583+
1584+ expect ( fn ) . toHaveBeenCalled ( ) ;
1585+ expect ( await screen . findByTestId ( m . text ) ) . toBeInTheDocument ( ) ;
1586+ } ) ;
1587+
15531588 it ( 'is updated on original message update' , async ( ) => {
15541589 const { channel, client } = await renderComponent ( ) ;
15551590 await initQuotedMessagePreview ( mainListMessage ) ;
0 commit comments