Sha256: f062a1d4f28d027de229f783d17997b7a0a4ee9363c79cd9804a6f566778304c

Contents?: true

Size: 1.48 KB

Versions: 2

Compression:

Stored size: 1.48 KB

Contents

describe "Mercury.dialogHandlers.foreColor", ->

  template 'mercury/dialogs/forecolor.html'

  beforeEach ->
    @dialog = {element: $('#test'), button: $('#button')}
    Mercury.dialogHandlers.foreColor.call(@dialog)

  describe "when a .picker or .last-picked element is clicked", ->

    it "sets the last picked color to whatever was selected", ->
      $('.last-picked').css({background: '#0000FF'})
      jasmine.simulate.click($('#white').get(0))
      expect($('.last-picked').css('backgroundColor')).toEqual('rgb(255, 255, 255)')
      jasmine.simulate.click($('#red').get(0))
      expect($('.last-picked').css('backgroundColor')).toEqual('rgb(255, 0, 0)')

    it "sets the background color of the button", ->
      $('#button').css({background: '#0000FF'})
      jasmine.simulate.click($('#white').get(0))
      expect($('#button').css('backgroundColor')).toEqual('rgb(255, 255, 255)')
      jasmine.simulate.click($('#red').get(0))
      expect($('#button').css('backgroundColor')).toEqual('rgb(255, 0, 0)')

    it "triggers an action", ->
      spy = spyOn(Mercury, 'trigger').andCallFake(=>)
      jasmine.simulate.click($('#white').get(0))
      expect(spy.callCount).toEqual(1)
      expect(spy.argsForCall[0]).toEqual(['action', {action: 'foreColor', value: '#FFFFFF'}])


  describe "when any other element is clicked", ->

    it "does nothing", ->
      spy = spyOn(Mercury, 'trigger').andCallFake(=>)
      jasmine.simulate.click($('#green').get(0))
      expect(spy.callCount).toEqual(0)

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
mercury-rails-0.9.0 spec/javascripts/mercury/dialogs/forecolor_spec.js.coffee
mercury-rails-0.8.0 spec/javascripts/mercury/dialogs/forecolor_spec.js.coffee