UNPKG

@zohodesk/dot

Version:

In this Library, we Provide Some Basic Components to Build Your Application

86 lines 2.52 kB
import React from 'react'; import { render } from '@testing-library/react'; import ExternalLink from "../ExternalLink"; describe('ExternalLink', () => { const target = ['_blank', '_self']; test('renders with default props', () => { const { asFragment } = render( /*#__PURE__*/React.createElement(ExternalLink, null)); expect(asFragment()).toMatchSnapshot(); }); test('render the herf', () => { const { asFragment } = render( /*#__PURE__*/React.createElement(ExternalLink, { href: "www.google.com" })); expect(asFragment()).toMatchSnapshot(); }); test('render the herf as bool value', () => { const { asFragment } = render( /*#__PURE__*/React.createElement(ExternalLink, { href: true }, "Boolean Href")); expect(asFragment()).toMatchSnapshot(); }); test.each(target)('renders with target is - %s', target => { const { asFragment } = render( /*#__PURE__*/React.createElement(ExternalLink, { target: target })); expect(asFragment()).toMatchSnapshot(); }); test('renders with title prop', () => { const { asFragment } = render( /*#__PURE__*/React.createElement(ExternalLink, { title: "Example Title" })); expect(asFragment()).toMatchSnapshot(); }); test('renders with custom className', () => { const { asFragment } = render( /*#__PURE__*/React.createElement(ExternalLink, { className: "custom-link" })); expect(asFragment()).toMatchSnapshot(); }); test('renders with rel attribute', () => { const { asFragment } = render( /*#__PURE__*/React.createElement(ExternalLink, { rel: "noopener noreferrer" })); expect(asFragment()).toMatchSnapshot(); }); test('renders with dataId prop', () => { const { asFragment } = render( /*#__PURE__*/React.createElement(ExternalLink, { dataId: "test-id" })); expect(asFragment()).toMatchSnapshot(); }); test('renders with customProps', () => { const customProps = { 'aria-label': 'Custom Link', 'data-custom': 'customValue' }; const { asFragment } = render( /*#__PURE__*/React.createElement(ExternalLink, { customProps: customProps })); expect(asFragment()).toMatchSnapshot(); }); test('renders with children content', () => { const { asFragment } = render( /*#__PURE__*/React.createElement(ExternalLink, null, "Click Here")); expect(asFragment()).toMatchSnapshot(); }); });