import React from 'react';
import { render } from 'enzyme';
import { renderToJson } from 'enzyme-to-json';
import TestGenerator from '../src/TestGenerator';
import fnTemplate from '../src/redux/mocha';
import strTemplate from '../src/redux/mocha/template';
import fnVanillaTemplate from '../src/vanilla/mocha';
import strVanillaTemplate from '../src/vanilla/mocha/template';
const actions = {
0: { type: 'PERFORM_ACTION', action: { type: '@@INIT' } },
1: { type: 'PERFORM_ACTION', action: { type: 'INCREMENT_COUNTER' } }
};
const computedStates = [
{ state: { counter: 0 } },
{ state: { counter: 1 } }
];
describe('TestGenerator component', () => {
it('should show warning message when no params provided', () => {
const component = render();
expect(renderToJson(component)).toMatchSnapshot();
});
it('should be empty when no actions provided', () => {
const component = render(
);
expect(renderToJson(component)).toMatchSnapshot();
});
it('should match function template\'s test for first action', () => {
const component = render(
);
expect(renderToJson(component)).toMatchSnapshot();
});
it('should match string template\'s test for first action', () => {
const component = render(
);
expect(renderToJson(component)).toMatchSnapshot();
});
it('should generate test for the last action when selectedActionId not specified', () => {
const component = render(
);
expect(renderToJson(component)).toMatchSnapshot();
});
it('should generate test for vanilla js class', () => {
const component = render(
);
expect(renderToJson(component)).toMatchSnapshot();
});
it('should generate test for vanilla js class with string template', () => {
const component = render(
);
expect(renderToJson(component)).toMatchSnapshot();
});
});