Add basic breadcrumbs test
This commit is contained in:
@@ -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();
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user