# feature tests for Input Hidden elements $LOAD_PATH.unshift File.join(File.dirname(__FILE__), '..') unless $SETUP_LOADED require 'unittests/setup' class TC_Hidden_Fields < Test::Unit::TestCase def setup goto_page("forms3.html") end def test_hidden # test using index assert( browser.hidden(:index,1).exists? ) assert( browser.hidden(:index,2).exists? ) assert_false( browser.hidden(:index,3).exists? ) browser.hidden(:index,1).value = 44 browser.hidden(:index,2).value = 55 browser.button(:value , "Show Hidden").click assert_equal("44" , browser.text_field(:name , "vis1").value ) assert_equal("55" , browser.text_field(:name , "vis2").value ) # test using name and ID assert( browser.hidden(:name ,"hid1").exists? ) assert( browser.hidden(:id,"hidden_1").exists? ) assert_false( browser.hidden(:name,"hidden_44").exists? ) assert_false( browser.hidden(:id,"hidden_55").exists? ) browser.hidden(:name ,"hid1").value = 444 browser.hidden(:id,"hidden_1").value = 555 browser.button(:value , "Show Hidden").click assert_equal("444" , browser.text_field(:name , "vis1").value ) assert_equal("555" , browser.text_field(:name ,"vis2").value ) # test the over-ridden append method browser.hidden(:name ,"hid1").append("a") browser.button(:value , "Show Hidden").click assert_equal("444a" , browser.text_field(:name , "vis1").value ) assert_equal("555" , browser.text_field(:name ,"vis2").value ) # test the over-ridden clear method browser.hidden(:name ,"hid1").clear browser.button(:value , "Show Hidden").click assert_equal("" , browser.text_field(:name , "vis1").value ) assert_equal("555" , browser.text_field(:name ,"vis2").value ) # test using a form assert( browser.form(:name , "has_a_hidden").hidden(:name ,"hid1").exists? ) assert( browser.form(:name , "has_a_hidden").hidden(:id,"hidden_1").exists? ) assert_false( browser.form(:name , "has_a_hidden").hidden(:name,"hidden_44").exists? ) assert_false( browser.form(:name , "has_a_hidden").hidden(:id,"hidden_55").exists? ) browser.form(:name , "has_a_hidden").hidden(:name ,"hid1").value = 222 browser.form(:name , "has_a_hidden").hidden(:id,"hidden_1").value = 333 browser.button(:value , "Show Hidden").click assert_equal("222" , browser.text_field(:name , "vis1").value ) assert_equal("333" , browser.text_field(:name ,"vis2").value ) # iterators assert_equal(2, browser.hiddens.length) count =1 browser.hiddens.each do |h| case count when 1 assert_equal( "", h.id) assert_equal( "hid1", h.name) when 2 assert_equal( "", h.name) assert_equal( "hidden_1", h.id) end count+=1 end assert_equal("hid1" , browser.hiddens[1].name ) assert_equal("hidden_1" , browser.hiddens[2].id ) end end