Below is the Csstest.rb

# feature tests for css
# revision: $Revision: 962 $

$LOAD_PATH.unshift File.join(File.dirname(__FILE__), '..') if $0 == __FILE__
require 'unittests/setup'

class TC_CSS < Test::Unit::TestCase
  include Watir
  
  def divTester( message )
    
    divs = $ie.getIE.document.getElementsByTagName("DIV")
    puts "Found #{divs.length} div tags"
    divs.each do |d|
      puts "Checking div #{d.id}"
      puts "div #{d.invoke("id") } class is #{d.invoke("className")     }"
    end
  end
  
  def isMessageDisplayed(message)
    
    s = false
    divs = $ie.getIE.document.getElementsByTagName("DIV")
    #puts "Found #{divs.length} div tags"
    divs.each do |d|
      #puts "----Checking div #{d.id} innertext is ( #{d.innerText}  )"
      
      if d.innerText.to_s.downcase.match( /#{message}/i )
        
        #puts "div #{d.invoke("id") } class is #{d.invoke("className")          
}"
        if d.invoke("className").to_s.downcase.match(/show/i)
          #puts "message is shown!!!"
          s = true
        end
        
      end
    end
    
    #puts "Not Shown " if s== false
    return s
  end
  
  def gotoCSSPage
    $ie.goto($htmlRoot + "cssTest.html")
  end
  
  def test_SuccessMessage
    gotoCSSPage
    sleep(5)
    $ie.button( :caption , "Success").click
    
    #isMessageDisplayed( "Success" )
    #divTester( "Success" )
    assert( isMessageDisplayed("Success") )
    
    $ie.button( :caption , "Failure").fire_event("onmouseover")
    
    assert(!isMessageDisplayed("Success") )
  end
end

=================================================================================
Below is the Code for Csstest.html

<html>
<head>
<title>Test Hidden Message</title>

<style type="text/css">
   div.hide { display: none; margin-left: auto; margin-right: auto; }
   div.show { display: block; margin-left: auto; margin-right: auto; }
   #Container { background: #f00; color: #fff; width: 300px; height: 300px; 
padding-top: 100px; text-align: center; font: bold 2em Verdana, Helvetica, 
sans-serif; }

</style>

<script type="text/javascript">
function show(divId)
{
   var divContainer = document.getElementById("Container");
   var divArr = divContainer.getElementsByTagName("div");
   for (var i = 0; i < divArr.length; i++)
   {
      if ( divArr[i].id == divId )
      {
         divArr[i].className = "show";
      }
      else
      {
         divArr[i].className = "hide";
      }
   }
}
</script>
</head>

<body>
<div id="Container">
   <div id="successError" class="hide">Success!</div><div id="failureError" 
class="hide">Failure!</div>
</div>
<form style="width: 300px; text-align: center;">
<p>Click on a button to display a message.</p>
   <input type="button" name="success" value="Success" onclick="show( this.name 
+ 'Error' );" />
   <input type="button" name="failure" value="Failure" onmouseover="show( 
this.name + 'Error' );" />
</form>
</body>
</html>
=========================================================================

When i Run Csstest.rb file , Last assertion is failing (Ie 
assert(!isMessageDisplayed("Success") )) Any reason why this failing?
_______________________________________________
Wtr-general mailing list
[email protected]
http://rubyforge.org/mailman/listinfo/wtr-general

Reply via email to