all files / src/events/__tests__/ createOnDragStart.spec.js

100% Statements 15/15
100% Branches 4/4
100% Functions 4/4
100% Lines 12/12
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24                          
import expect, {createSpy} from 'expect';
import createOnDragStart, {dataKey} from '../createOnDragStart';
 
describe('createOnDragStart', () => {
  it('should return a function', () => {
    expect(createOnDragStart())
      .toExist()
      .toBeA('function');
  });
 
  it('should return a function that calls dataTransfer.setData with key and result from getValue', () => {
    const getValue = createSpy().andReturn('bar');
    const setData = createSpy();
    createOnDragStart('foo', getValue)({
      dataTransfer: {setData}
    });
    expect(getValue).toHaveBeenCalled();
    expect(setData)
      .toHaveBeenCalled()
      .toHaveBeenCalledWith(dataKey, 'bar');
  });
 
});