Fixes test failure

This commit is contained in:
Alex Corey
2022-04-04 21:28:18 -04:00
parent 4190cf126c
commit ffb46fec52
2 changed files with 132 additions and 131 deletions

View File

@@ -1,133 +1,133 @@
// These tests have been turned off because they fail due to a console wanring coming from patternfly.
// These tests have been turned off because they fail due to a console wanring coming from patternfly.
// The warning is that the onDrag api has been deprecated. It's replacement is a DragDrop component,
// however that component is not keyboard accessible. Therefore we have elected to turn off these tests.
// https://github.com/patternfly/patternfly-react/issues/6317s
//github.com/patternfly/patternfly-react/issues/6317s
// import React from 'react';
// import { act } from 'react-dom/test-utils';
// import { mountWithContexts } from '../../../testUtils/enzymeHelpers';
// import DraggableSelectedList from './DraggableSelectedList';
import React from 'react';
import { act } from 'react-dom/test-utils';
import { mountWithContexts } from '../../../testUtils/enzymeHelpers';
import DraggableSelectedList from './DraggableSelectedList';
// describe('<DraggableSelectedList />', () => {
// let wrapper;
// afterEach(() => {
// jest.clearAllMocks();
// });
describe.skip('<DraggableSelectedList />', () => {
let wrapper;
afterEach(() => {
jest.clearAllMocks();
});
// test('should render expected rows', () => {
// const mockSelected = [
// {
// id: 1,
// name: 'foo',
// },
// {
// id: 2,
// name: 'bar',
// },
// ];
// wrapper = mountWithContexts(
// <DraggableSelectedList
// selected={mockSelected}
// onRemove={() => {}}
// onRowDrag={() => {}}
// />
// );
// expect(wrapper.find('DraggableSelectedList').length).toBe(1);
// expect(wrapper.find('DataListItem').length).toBe(2);
// expect(
// wrapper
// .find('DataListItem DataListCell')
// .first()
// .containsMatchingElement(<span>1. foo</span>)
// ).toEqual(true);
// expect(
// wrapper
// .find('DataListItem DataListCell')
// .last()
// .containsMatchingElement(<span>2. bar</span>)
// ).toEqual(true);
// });
test('should render expected rows', () => {
const mockSelected = [
{
id: 1,
name: 'foo',
},
{
id: 2,
name: 'bar',
},
];
wrapper = mountWithContexts(
<DraggableSelectedList
selected={mockSelected}
onRemove={() => {}}
onRowDrag={() => {}}
/>
);
expect(wrapper.find('DraggableSelectedList').length).toBe(1);
expect(wrapper.find('DataListItem').length).toBe(2);
expect(
wrapper
.find('DataListItem DataListCell')
.first()
.containsMatchingElement(<span>1. foo</span>)
).toEqual(true);
expect(
wrapper
.find('DataListItem DataListCell')
.last()
.containsMatchingElement(<span>2. bar</span>)
).toEqual(true);
});
// test('should not render when selected list is empty', () => {
// wrapper = mountWithContexts(
// <DraggableSelectedList
// selected={[]}
// onRemove={() => {}}
// onRowDrag={() => {}}
// />
// );
// expect(wrapper.find('DataList').length).toBe(0);
// });
test('should not render when selected list is empty', () => {
wrapper = mountWithContexts(
<DraggableSelectedList
selected={[]}
onRemove={() => {}}
onRowDrag={() => {}}
/>
);
expect(wrapper.find('DataList').length).toBe(0);
});
// test('should call onRemove callback prop on remove button click', () => {
// const onRemove = jest.fn();
// const mockSelected = [
// {
// id: 1,
// name: 'foo',
// },
// ];
// wrapper = mountWithContexts(
// <DraggableSelectedList selected={mockSelected} onRemove={onRemove} />
// );
// expect(
// wrapper
// .find('DataListDragButton[aria-label="Reorder"]')
// .prop('isDisabled')
// ).toBe(true);
// wrapper
// .find('DataListItem[id="foo"] Button[aria-label="Remove"]')
// .simulate('click');
// expect(onRemove).toBeCalledWith({
// id: 1,
// name: 'foo',
// });
// });
test('should call onRemove callback prop on remove button click', () => {
const onRemove = jest.fn();
const mockSelected = [
{
id: 1,
name: 'foo',
},
];
wrapper = mountWithContexts(
<DraggableSelectedList selected={mockSelected} onRemove={onRemove} />
);
expect(
wrapper
.find('DataListDragButton[aria-label="Reorder"]')
.prop('isDisabled')
).toBe(true);
wrapper
.find('DataListItem[id="foo"] Button[aria-label="Remove"]')
.simulate('click');
expect(onRemove).toBeCalledWith({
id: 1,
name: 'foo',
});
});
// test('should disable remove button when dragging item', () => {
// const mockSelected = [
// {
// id: 1,
// name: 'foo',
// },
// {
// id: 2,
// name: 'bar',
// },
// ];
// wrapper = mountWithContexts(
// <DraggableSelectedList
// selected={mockSelected}
// onRemove={() => {}}
// onRowDrag={() => {}}
// />
// );
test('should disable remove button when dragging item', () => {
const mockSelected = [
{
id: 1,
name: 'foo',
},
{
id: 2,
name: 'bar',
},
];
wrapper = mountWithContexts(
<DraggableSelectedList
selected={mockSelected}
onRemove={() => {}}
onRowDrag={() => {}}
/>
);
// expect(
// wrapper.find('Button[aria-label="Remove"]').at(0).prop('isDisabled')
// ).toBe(false);
// expect(
// wrapper.find('Button[aria-label="Remove"]').at(1).prop('isDisabled')
// ).toBe(false);
// act(() => {
// wrapper.find('DataList').prop('onDragStart')();
// });
// wrapper.update();
// expect(
// wrapper.find('Button[aria-label="Remove"]').at(0).prop('isDisabled')
// ).toBe(true);
// expect(
// wrapper.find('Button[aria-label="Remove"]').at(1).prop('isDisabled')
// ).toBe(true);
// act(() => {
// wrapper.find('DataList').prop('onDragCancel')();
// });
// wrapper.update();
// expect(
// wrapper.find('Button[aria-label="Remove"]').at(0).prop('isDisabled')
// ).toBe(false);
// expect(
// wrapper.find('Button[aria-label="Remove"]').at(1).prop('isDisabled')
// ).toBe(false);
// });
// });
expect(
wrapper.find('Button[aria-label="Remove"]').at(0).prop('isDisabled')
).toBe(false);
expect(
wrapper.find('Button[aria-label="Remove"]').at(1).prop('isDisabled')
).toBe(false);
act(() => {
wrapper.find('DataList').prop('onDragStart')();
});
wrapper.update();
expect(
wrapper.find('Button[aria-label="Remove"]').at(0).prop('isDisabled')
).toBe(true);
expect(
wrapper.find('Button[aria-label="Remove"]').at(1).prop('isDisabled')
).toBe(true);
act(() => {
wrapper.find('DataList').prop('onDragCancel')();
});
wrapper.update();
expect(
wrapper.find('Button[aria-label="Remove"]').at(0).prop('isDisabled')
).toBe(false);
expect(
wrapper.find('Button[aria-label="Remove"]').at(1).prop('isDisabled')
).toBe(false);
});
});

View File

@@ -44,9 +44,9 @@ describe('JobOutputSearch', () => {
wrapper.find(searchBtn).simulate('click');
});
expect(wrapper.find('Search').prop('columns')).toHaveLength(3);
expect(wrapper.find('Search').prop('columns').at(0).name).toBe('Stdout');
expect(wrapper.find('Search').prop('columns').at(1).name).toBe('Event');
expect(wrapper.find('Search').prop('columns').at(2).name).toBe('Advanced');
expect(wrapper.find('Search').prop('columns')[0].name).toBe('Stdout');
expect(wrapper.find('Search').prop('columns')[1].name).toBe('Event');
expect(wrapper.find('Search').prop('columns')[2].name).toBe('Advanced');
expect(history.location.search).toEqual('?stdout__icontains=99');
});
test('Should not have Event key in search drop down for system job', () => {
@@ -70,8 +70,8 @@ describe('JobOutputSearch', () => {
}
);
expect(wrapper.find('Search').prop('columns')).toHaveLength(2);
expect(wrapper.find('Search').prop('columns').at(0).name).toBe('Stdout');
expect(wrapper.find('Search').prop('columns').at(1).name).toBe('Advanced');
expect(wrapper.find('Search').prop('columns')[0].name).toBe('Stdout');
expect(wrapper.find('Search').prop('columns')[1].name).toBe('Advanced');
});
test('Should not have Event key in search drop down for inventory update job', () => {
@@ -94,8 +94,9 @@ describe('JobOutputSearch', () => {
context: { router: { history } },
}
);
expect(wrapper.find('Search').prop('columns')).toHaveLength(2);
expect(wrapper.find('Search').prop('columns').at(0).name).toBe('Stdout');
expect(wrapper.find('Search').prop('columns').at(1).name).toBe('Advanced');
expect(wrapper.find('Search').prop('columns')[0].name).toBe('Stdout');
expect(wrapper.find('Search').prop('columns')[1].name).toBe('Advanced');
});
});