Skip to content
Snippets Groups Projects
Select Git revision
  • 166be119cead439b32a87e4ad59d9920091a5103
  • main default protected
2 results

dash-leaflet.ipynb

Blame
  • WindowTopMenu.test.js 1.84 KiB
    import React from 'react';
    import { shallow } from 'enzyme';
    import ListItem from '@material-ui/core/ListItem';
    import Menu from '@material-ui/core/Menu';
    import Divider from '@material-ui/core/Divider';
    import WindowThumbnailSettings from '../../../src/containers/WindowThumbnailSettings';
    import WindowTopMenu from '../../../src/components/WindowTopMenu';
    
    /** create wrapper */
    function createWrapper(props) {
      return shallow(
        <WindowTopMenu
          windowId="xyz"
          handleClose={() => {}}
          anchorEl={null}
          {...props}
        />,
      );
    }
    
    describe('WindowTopMenu', () => {
      it('renders all needed elements', () => {
        const wrapper = createWrapper();
        expect(wrapper.find(Menu).length).toBe(1);
        expect(wrapper.find(ListItem).length).toBe(1);
        expect(wrapper.find(WindowThumbnailSettings).length).toBe(1);
        expect(wrapper.find(Divider).length).toBe(1);
      });
    
      it('passes windowId to <WindowThumbnailSettings/>', () => {
        const wrapper = createWrapper();
        expect(wrapper.find(WindowThumbnailSettings)
          .first().props().windowId).toBe('xyz');
      });
    
      it('passses correct props to <Menu/> when no achor element given', () => {
        const handleClose = jest.fn();
        const wrapper = createWrapper({ handleClose });
        expect(wrapper.find(Menu).first().props().anchorEl).toBe(null);
        expect(wrapper.find(Menu).first().props().open).toBe(false);
        expect(wrapper.find(Menu).first().props().onClose).toBe(handleClose);
      });
    
      it('passses correct props to <Menu/> when no achor element given', () => {
        const handleClose = jest.fn();
        const anchorEl = {};
        const wrapper = createWrapper({ anchorEl, handleClose });
        expect(wrapper.find(Menu).first().props().anchorEl).toBe(anchorEl);
        expect(wrapper.find(Menu).first().props().open).toBe(true);
        expect(wrapper.find(Menu).first().props().onClose).toBe(handleClose);
      });
    });