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 Player from './Player';
|
||||
import {callAPI} from '../../utils/Api';
|
||||
|
||||
describe('<Player/>', function () {
|
||||
it('renders without crashing ', function () {
|
||||
@ -81,7 +82,7 @@ describe('<Player/>', function () {
|
||||
const wrapper = shallow(<Player/>);
|
||||
|
||||
const func = jest.fn();
|
||||
prepareViewBinding(func)
|
||||
prepareViewBinding(func);
|
||||
|
||||
global.fetch = prepareFetchApi({result: 'success'});
|
||||
|
||||
@ -163,6 +164,58 @@ describe('<Player/>', function () {
|
||||
});
|
||||
});
|
||||
|
||||
it('showspopups correctly', function () {
|
||||
const wrapper = shallow(<Player/>);
|
||||
|
||||
wrapper.setState({popupvisible: true}, () => {
|
||||
// is the AddTagpopu rendered?
|
||||
expect(wrapper.find('AddTagPopup')).toHaveLength(1);
|
||||
wrapper.setState({popupvisible: false, actorpopupvisible: true}, () => {
|
||||
// actorpopup rendred and tagpopup hidden?
|
||||
expect(wrapper.find('AddTagPopup')).toHaveLength(0);
|
||||
expect(wrapper.find('AddActorPopup')).toHaveLength(1);
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
it('quickadd tag correctly', function () {
|
||||
const wrapper = shallow(<Player/>);
|
||||
global.callAPIMock({result: 'success'});
|
||||
|
||||
wrapper.setState({suggesttag: [{tag_name: 'test', tag_id: 1}]}, () => {
|
||||
// mock funtion should have not been called
|
||||
expect(callAPI).toBeCalledTimes(0);
|
||||
wrapper.find('Tag').findWhere(p => p.text() === 'test').parent().dive().simulate('click');
|
||||
// mock function should have been called once
|
||||
expect(callAPI).toBeCalledTimes(1);
|
||||
|
||||
// expect tag added to video tags
|
||||
expect(wrapper.state().tags).toMatchObject([{tag_name: 'test'}]);
|
||||
// expect tag to be removed from tag suggestions
|
||||
expect(wrapper.state().suggesttag).toHaveLength(0);
|
||||
});
|
||||
});
|
||||
|
||||
it('test adding of already existing tag', function () {
|
||||
const wrapper = shallow(<Player/>);
|
||||
global.callAPIMock({result: 'success'});
|
||||
|
||||
wrapper.setState({suggesttag: [{tag_name: 'test', tag_id: 1}], tags: [{tag_name: 'test', tag_id: 1}]}, () => {
|
||||
// mock funtion should have not been called
|
||||
expect(callAPI).toBeCalledTimes(0);
|
||||
wrapper.find('Tag').findWhere(p => p.text() === 'test').last().parent().dive().simulate('click');
|
||||
// mock function should have been called once
|
||||
expect(callAPI).toBeCalledTimes(1);
|
||||
|
||||
// there should not been added a duplicate of tag so object stays same...
|
||||
expect(wrapper.state().tags).toMatchObject([{tag_name: 'test'}]);
|
||||
// the suggestion tag shouldn't be removed (this can't actually happen in rl
|
||||
// because backennd doesn't give dupliacate suggestiontags)
|
||||
expect(wrapper.state().suggesttag).toHaveLength(1);
|
||||
});
|
||||
});
|
||||
|
||||
function generatetag() {
|
||||
const wrapper = shallow(<Player/>);
|
||||
|
||||
@ -178,4 +231,26 @@ describe('<Player/>', function () {
|
||||
|
||||
return wrapper;
|
||||
}
|
||||
|
||||
it('test addactor popup showing', function () {
|
||||
const wrapper = shallow(<Player/>);
|
||||
|
||||
expect(wrapper.find('AddActorPopup')).toHaveLength(0);
|
||||
|
||||
wrapper.instance().addActor();
|
||||
|
||||
// check if popup is visible
|
||||
expect(wrapper.find('AddActorPopup')).toHaveLength(1);
|
||||
});
|
||||
|
||||
it('test hiding of addactor popup', function () {
|
||||
const wrapper = shallow(<Player/>);
|
||||
wrapper.instance().addActor();
|
||||
|
||||
expect(wrapper.find('AddActorPopup')).toHaveLength(1);
|
||||
|
||||
wrapper.find('AddActorPopup').props().onHide();
|
||||
|
||||
expect(wrapper.find('AddActorPopup')).toHaveLength(0);
|
||||
});
|
||||
});
|
||||
|
Reference in New Issue
Block a user