Add basic breadcrumbs test

This commit is contained in:
tudi2d
2021-02-12 11:49:16 +01:00
parent fa3f1b2f46
commit 75cd8ac6c5
@@ -13,3 +13,42 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { renderInTestApp } from '@backstage/test-utils';
import { Typography } from '@material-ui/core';
import { fireEvent } from '@testing-library/react';
import React from 'react';
import { Link } from '../..';
import { Breadcrumbs } from './Breadcrumbs';
describe('<Breadcrumbs/>', () => {
it('should render', async () => {
const rendered = await renderInTestApp(
<Breadcrumbs>
<Link to="/">General Page</Link>
<Typography>Current Page</Typography>
</Breadcrumbs>,
);
expect(rendered.getByLabelText('breadcrumb')).toBeVisible();
expect(rendered.getByText('General Page')).toBeVisible();
expect(rendered.getByText('Current Page')).toBeVisible();
});
it('should render hidden breadcrumbs', async () => {
const rendered = await renderInTestApp(
<Breadcrumbs>
<Link to="/">General Page</Link>
<Link to="/">Second Page</Link>
<Link to="/">Third Page</Link>
<Link to="/">Fourth Page</Link>
<Typography>Current page</Typography>
</Breadcrumbs>,
);
expect(rendered.getByText('...')).toBeVisible();
expect(rendered.queryByText('Third Page')).not.toBeInTheDocument();
expect(rendered.queryByText('Fourth Page')).not.toBeInTheDocument();
fireEvent.click(rendered.getByText('...'));
expect(rendered.getByText('Third Page')).toBeVisible();
expect(rendered.getByText('Fourth Page')).toBeVisible();
});
});