--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/client/src/components/__tests__/NoteInput.test.js Tue May 23 13:15:34 2017 +0200
@@ -0,0 +1,40 @@
+import React from 'react';
+import { shallow, mount } from 'enzyme';
+import NoteInput from '../NoteInput';
+
+const setup = (propOverrides, doMount=false) => {
+ const props = Object.assign({
+ addNote: jest.fn()
+ }, propOverrides);
+
+ const renderFn = doMount?mount:shallow;
+ const wrapper = renderFn(<NoteInput {...props} />);
+
+ return {
+ props,
+ wrapper,
+ }
+};
+
+describe('Notes container Component', () => {
+ test('render', () => {
+ const { wrapper } = setup();
+ expect(wrapper.exists()).toBe(true)
+ });
+
+ test('click button', () => {
+ const { props, wrapper } = setup({}, true);
+ wrapper.find('button').simulate('click');
+ expect(props.addNote.mock.calls.length).toBe(1);
+ });
+
+ test('note value on clickbutton', () => {
+ const { props, wrapper } = setup({}, true);
+ wrapper.find('textarea').simulate('change', {target: {value: 'note text'}});
+ wrapper.find('button').simulate('click');
+ expect(props.addNote.mock.calls.length).toBe(1);
+ expect(props.addNote.mock.calls[0]).toEqual(['note text']);
+ });
+
+});
+