Sha256: 9d365f7a8fe5e43429945319151909d8d0efc2ecdafd7ca5f1c5c3316b5788c9

Contents?: true

Size: 1.06 KB

Versions: 9

Compression:

Stored size: 1.06 KB

Contents

require_relative '../../helper'

describe Tk::CheckButton do
  it 'initializes' do
    cb = Tk::CheckButton.new
    cb.class.should == Tk::CheckButton
    cb.tk_parent.should == Tk.root
    cb.destroy
  end

  it 'associates a variable with the value' do
    value = Tk::Variable.new('checkbutton_value')
    cb = Tk::CheckButton.new(variable: value)
    value.to_boolean.should == false
    cb.select
    value.to_boolean.should == true
    cb.deselect
    value.to_boolean.should == false
  end

  it 'assigns a command block on initialize' do
    toggled = false
    value = Tk::Variable.new('checkbutton_value')
    cb = Tk::CheckButton.new(variable: value){ toggled = !toggled }
    cb.pack
    cb.focus

    toggled.should == false

    Tk::Wait.visibility(cb)

    Tk::Event.generate(cb, '<1>')
    Tk.interp.do_events_until{ toggled }
    toggled.should == true

    Tk::Event.generate(cb, '<1>')
    Tk.interp.do_events_until{ !toggled }
    toggled.should == false

    Tk::Event.generate(cb, '<1>')
    Tk.interp.do_events_until{ toggled }
    toggled.should == true
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
ffi-tk-2010.08.23 spec/ffi-tk/widget/checkbutton.rb
ffi-tk-2010.08 spec/ffi-tk/widget/checkbutton.rb
ffi-tk-2010.06 spec/ffi-tk/widget/checkbutton.rb
ffi-tk-2010.03 spec/ffi-tk/widget/checkbutton.rb
ffi-tk-2010.02 spec/ffi-tk/widget/checkbutton.rb
ffi-tk-2010.01 spec/ffi-tk/widget/checkbutton.rb
ffi-tk-2010.01.02 spec/ffi-tk/widget/checkbutton.rb
ffi-tk-2009.12.14 spec/ffi-tk/widget/checkbutton.rb
ffi-tk-2009.11.29 spec/ffi-tk/widget/checkbutton.rb