From a047801014d73efbbaff4b418477c32bebc1e01e Mon Sep 17 00:00:00 2001 From: Sanjib Kumar Sah <35219515+s4nju@users.noreply.github.com> Date: Fri, 19 May 2023 13:42:14 +0530 Subject: [PATCH] Test: added few test cases for MessageTip (#2715) * test: added few test cases for MessageTip * chore: test is fixed --------- Co-authored-by: Palash Gupta --- .../components/MessageTip/MessageTip.test.tsx | 47 ++++++++++++++++ .../__snapshots__/MessageTip.test.tsx.snap | 54 +++++++++++++++++++ 2 files changed, 101 insertions(+) create mode 100644 frontend/src/components/MessageTip/MessageTip.test.tsx create mode 100644 frontend/src/components/MessageTip/__snapshots__/MessageTip.test.tsx.snap diff --git a/frontend/src/components/MessageTip/MessageTip.test.tsx b/frontend/src/components/MessageTip/MessageTip.test.tsx new file mode 100644 index 0000000000..1c050c01f6 --- /dev/null +++ b/frontend/src/components/MessageTip/MessageTip.test.tsx @@ -0,0 +1,47 @@ +import { render, screen } from '@testing-library/react'; + +import MessageTip from './index'; + +describe('MessageTip', () => { + it('should not render when show prop is false', () => { + render( + Close} + />, + ); + + const messageTip = screen.queryByRole('alert'); + + expect(messageTip).toBeNull(); + }); + + it('should render with the provided message and action', () => { + const message = 'Test Message'; + const action = ; + + render(); + + const messageTip = screen.getByRole('alert'); + const messageText = screen.getByText(message); + const actionButton = screen.getByRole('button', { name: 'Close' }); + + expect(messageTip).toBeInTheDocument(); + expect(messageText).toBeInTheDocument(); + expect(actionButton).toBeInTheDocument(); + }); + + // taken from antd docs + // https://github.com/ant-design/ant-design/blob/master/components/alert/__tests__/index.test.tsx + it('custom action', () => { + const { container } = render( + Close} + />, + ); + expect(container.firstChild).toMatchSnapshot(); + }); +}); diff --git a/frontend/src/components/MessageTip/__snapshots__/MessageTip.test.tsx.snap b/frontend/src/components/MessageTip/__snapshots__/MessageTip.test.tsx.snap new file mode 100644 index 0000000000..044b288468 --- /dev/null +++ b/frontend/src/components/MessageTip/__snapshots__/MessageTip.test.tsx.snap @@ -0,0 +1,54 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`MessageTip custom action 1`] = ` +.c0 { + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; +} + + +`;