UNPKG

ldx-widgets

Version:

widgets

72 lines (46 loc) 2.12 kB
describe 'ConfirmUserAction', -> React = require 'react' ConfirmUserAction = React.createFactory require('../../src/components/confirm_user_action') _ = require 'lodash' TestUtils = require 'react-dom/test-utils' ReactDOM = require 'react-dom' #--------------------------------------------------------------------- Default Props it 'Should have default props', -> confirmUserAction = TestUtils.renderIntoDocument ConfirmUserAction { onOkay: -> close: -> } defaultProps = confirmUserAction.props expect(defaultProps.confirmText).to.equal('Are you sure?') expect(defaultProps.confirmBtnLabel).to.equal('OK') expect(defaultProps.cancelBtnLabel).to.equal('Cancel') #--------------------------------------------------------------------- Click handling it 'Should call the onOkay when okay button is clicked', -> onOkay = sinon.spy() confirmBox = TestUtils.renderIntoDocument ConfirmUserAction { close: -> onOkay: onOkay } okayBtn = TestUtils.findRenderedDOMComponentWithClass confirmBox, 'okay-btn' TestUtils.Simulate.click okayBtn expect(onOkay.called).to.equal(true) it 'Should not call the onOkay when cancel button is clicked', -> onOkay = sinon.spy() confirmBox = TestUtils.renderIntoDocument ConfirmUserAction { close: -> onOkay: onOkay } cancelBtn = TestUtils.findRenderedDOMComponentWithClass confirmBox, 'cancel-btn' TestUtils.Simulate.click cancelBtn expect(onOkay.called).to.equal(false) #--------------------------------------------------------------------- Text and Button Labels it 'Should set the text and button labels to the props passed in', -> message = TestUtils.renderIntoDocument ConfirmUserAction { close: -> onOkay: -> confirmText: "This is a test message" confirmBtnLabel: "ConfirmTest" cancelBtnLabel: "CancelTest" } messageText = TestUtils.scryRenderedDOMComponentsWithTag(message, 'div')[0].innerText expect(messageText).to.equal('This is a test messageConfirmTestCancelTest')