ldx-widgets
Version:
widgets
79 lines (40 loc) • 2.26 kB
text/coffeescript
describe 'GridFormCheckbox', ->
React = require 'react'
GridFormCheckbox = React.createFactory require('../../src/components/grid_form/grid_form_checkbox')
TestUtils = require 'react-addons-test-utils'
ReactDOM = require 'react-dom'
#--------------------------------------------------------------------- Default Props
it 'Should have default props', ->
gridFormCheckbox = TestUtils.renderIntoDocument GridFormCheckbox {}
defaultProps = gridFormCheckbox.props
expect(defaultProps.labelColumnClass).to.equal('col-3-12')
expect(defaultProps.checkboxColumnClass).to.equal('col-9-12')
expect(defaultProps.className).to.equal('grid grid-pad')
expect(defaultProps.formLabel).to.equal(null)
#--------------------------------------------------------------------- Display
it 'Should display a form label for the input field if formLabel has value', ->
gridFormCheckbox = TestUtils.renderIntoDocument GridFormCheckbox {
formLabel: 'Test Label'
}
label = TestUtils.scryRenderedDOMComponentsWithClass gridFormCheckbox, 'form-label'
expect(label.length).to.equal(1)
it 'Should not display a form label for the input field if formLabel has no value', ->
gridFormCheckbox = TestUtils.renderIntoDocument GridFormCheckbox {}
label = TestUtils.scryRenderedDOMComponentsWithClass gridFormCheckbox, 'form-label'
expect(label.length).to.equal(0)
it 'Should display a red asterick next to the form label if formLabel has value and isFieldRequired is true', ->
gridFormCheckbox = TestUtils.renderIntoDocument GridFormCheckbox {
formLabel: 'Test Label'
isFieldRequired: true
}
isRequired = TestUtils.scryRenderedDOMComponentsWithClass gridFormCheckbox, 'form-label is-required'
expect(isRequired.length).to.equal(1)
it 'Should display input field with type equal to checkbox', ->
onChange = sinon.spy()
gridFormCheckbox = TestUtils.renderIntoDocument GridFormCheckbox {
onChange: onChange
}
input = TestUtils.findRenderedDOMComponentWithTag gridFormCheckbox, 'input'
inputField = ReactDOM.findDOMNode(input)
expect(inputField.type).to.equal('checkbox')
#