describe 'CircleX', ->
  React = require 'react'
  CircleX = React.createFactory require('../../src/components/circle_x_button')
  TestUtils = require 'react-addons-test-utils'
  ReactDOM = require 'react-dom'
   
  #--------------------------------------------------------------------- Default Props
  it 'Should have default props', ->
    circlex = TestUtils.renderIntoDocument CircleX({})
    
    defaultProps = circlex.props
    expect(defaultProps.positionClass).to.equal(null)
    expect(defaultProps.rotateOnClick).to.equal(no)
    expect(defaultProps.collapsed).to.equal(no)

  #--------------------------------------------------------------------- Click handling
  it 'Should call the onClick prop when svg is clicked', ->
    onClick = sinon.spy()

    circlex = TestUtils.renderIntoDocument CircleX {
      onClick: onClick
    }

    el = ReactDOM.findDOMNode(circlex)

    TestUtils.Simulate.click el, {}

    expect(onClick.calledOnce).to.equal(true)


  #--------------------------------------------------------------------- Position
  it 'Should Render with appropriate css class when positionClass is passed', ->

    pos = 'close'

    circlex = TestUtils.renderIntoDocument CircleX {
      positionClass: pos
    }

    el = ReactDOM.findDOMNode(circlex)
    
    expect(el.getAttribute('class')).to.contain(pos)


  #--------------------------------------------------------------------- Collapsed
  it 'Should Render with appropriate css class when collapsed and rotateOnClick are true', ->

    col = yes
    rot = yes

    isColl = 'is-collapsed'

    circlex = TestUtils.renderIntoDocument CircleX {
      collapsed: col
      rotateOnClick: rot
    }

    el = ReactDOM.findDOMNode(circlex)
    
    expect(el.getAttribute('class')).to.contain(isColl)




