build electron app
implement new fetch api calls use typescript
This commit is contained in:
@ -1,6 +1,7 @@
|
||||
import {shallow} from 'enzyme';
|
||||
import React from 'react';
|
||||
import AddActorPopup from './AddActorPopup';
|
||||
import {callAPI} from '../../../utils/Api';
|
||||
|
||||
describe('<AddActorPopup/>', function () {
|
||||
it('renders without crashing ', function () {
|
||||
@ -8,12 +9,63 @@ describe('<AddActorPopup/>', function () {
|
||||
wrapper.unmount();
|
||||
});
|
||||
|
||||
// it('simulate change to other page', function () {
|
||||
// const wrapper = shallow(<AddActorPopup/>);
|
||||
//
|
||||
// console.log(wrapper.find('PopupBase').dive().debug());
|
||||
//
|
||||
//
|
||||
// console.log(wrapper.debug());
|
||||
// });
|
||||
it('simulate change to other page', function () {
|
||||
const wrapper = shallow(<AddActorPopup/>);
|
||||
|
||||
expect(wrapper.find('NewActorPopupContent')).toHaveLength(0);
|
||||
wrapper.find('PopupBase').props().banner.props.onClick();
|
||||
|
||||
// check if new content is showing
|
||||
expect(wrapper.find('NewActorPopupContent')).toHaveLength(1);
|
||||
});
|
||||
|
||||
it('hide new actor page', function () {
|
||||
const wrapper = shallow(<AddActorPopup/>);
|
||||
wrapper.find('PopupBase').props().banner.props.onClick();
|
||||
|
||||
// call onhide event listener manually
|
||||
wrapper.find('NewActorPopupContent').props().onHide();
|
||||
|
||||
// expect other page to be hidden again
|
||||
expect(wrapper.find('NewActorPopupContent')).toHaveLength(0);
|
||||
});
|
||||
|
||||
it('test api call and insertion of actor tiles', function () {
|
||||
global.callAPIMock([{id: 1, actorname: 'test'}, {id: 2, actorname: 'test2'}]);
|
||||
|
||||
const wrapper = shallow(<AddActorPopup/>);
|
||||
|
||||
expect(wrapper.find('ActorTile')).toHaveLength(2);
|
||||
});
|
||||
|
||||
it('simulate actortile click', function () {
|
||||
const func = jest.fn();
|
||||
const wrapper = shallow(<AddActorPopup onHide={() => {func()}}/>);
|
||||
|
||||
global.callAPIMock({result: 'success'});
|
||||
|
||||
wrapper.setState({actors: [{id: 1, actorname: 'test'}]}, () => {
|
||||
wrapper.find('ActorTile').props().onClick();
|
||||
|
||||
expect(callAPI).toHaveBeenCalledTimes(1);
|
||||
|
||||
expect(func).toHaveBeenCalledTimes(1);
|
||||
});
|
||||
});
|
||||
|
||||
it('test failing actortile click', function () {
|
||||
const func = jest.fn();
|
||||
const wrapper = shallow(<AddActorPopup onHide={() => {func()}}/>);
|
||||
|
||||
global.callAPIMock({result: 'nosuccess'});
|
||||
|
||||
wrapper.setState({actors: [{id: 1, actorname: 'test'}]}, () => {
|
||||
wrapper.find('ActorTile').props().onClick();
|
||||
|
||||
expect(callAPI).toHaveBeenCalledTimes(1);
|
||||
|
||||
// hide funtion should not have been called on error!
|
||||
expect(func).toHaveBeenCalledTimes(0);
|
||||
});
|
||||
});
|
||||
});
|
||||
|
Reference in New Issue
Block a user