<?xml version="1.0" encoding="utf-8" ?>

<!-- This XML file is used to define your "rules" and messages and/or
     actions to take based on the result of each rule. In addition you
     can specify optional configuration such as renaming columns in
     the pass/fail table and relabeling what is shown for Pass, Fail,
     etc (for example, displaying "Please fix" instead of "Fail" in
     the status column.
     
     See http://www.cyscape.com/download/RETUsersGuide.pdf for details
     on all features this XML is capable of and how to construct new rules
     you may wish to add.
-->

<tests>
  <config>
    <headers>
      <!-- These are the default labels for the column names shown in the pass/fail table -->
      <name>Description</name>
      <answer>Status</answer>
      <message>Details</message>
    </headers>
    <answers>
      <!-- These are the default labels for the status shown in the pass/fail table -->
      <pass>Good</pass>
      <fail>Critical</fail>
      <warn>Caution</warn>
      <info>Info</info>
    </answers>

    <!-- We can customize the labels if we want... -->
    <!-- 
    <answers>
      <pass>Great!</pass>
      <fail>Oops!</fail>
      <warn>Careful...</warn>
      <info>FYI</info>
    </answers>
    -->

    <extended-options>
      <!-- We can set ExtendedOptions here if we want (optional) -->
      <page-title>Please wait...</page-title>
      <page-message>
             <div class="pagetitle">Detailed Browser Test</div>
             <div class="pleasewait">Please wait while we test your browser...
               <img src="/bhtg/ret/images/loader.gif" width="24" height="24" valign="bottom"/>
             </div>
      </page-message>
      <body-tag></body-tag>
    </extended-options>
  </config>


  <!-- TODO: Add, remove, or change the rules defined below to match the requirements for your site -->

  <!-- The actual tests to enforce are defined here -->
  <test id="browser" name="Browser type">
    <info>
      <message>%browser% %fullversion%</message>
    </info>
  </test>

  <test id="platform" name="Platform">
    <info>
      <message>%platform%</message>
    </info>
  </test>

  <test id="browserbuild" name="Browser build">
    <suppress><javascriptenabled>False</javascriptenabled></suppress>
    <info>
      <browser>IE</browser>
      <message>%browserbuild%</message>
    </info>
  </test>

  <test id="servicepack" name="Browser service pack">
    <suppress><javascriptenabled>False</javascriptenabled></suppress>
    <info>
      <browser>IE</browser>
      <message>%servicepack%</message>
    </info>
  </test>

  <test id="gecko" name="Gecko">
    <info>
      <message>%gecko%</message>
    </info>
  </test>

  <test id="geckobuilddate" name="Gecko build date">
    <info>
      <gecko>True</gecko>
      <message>%geckobuilddate%</message>
    </info>
  </test>

  <test id="cookiesess" name="Session cookies">
    <info>
      <message>%sessioncookies%</message>
    </info>
  </test>

  <test id="jsenabled" name="JavaScript enabled">
    <info>
      <message>%javascriptenabled%</message>
    </info>
  </test>

  <test id="jsversion" name="JavaScript version">
    <info>
      <message>%javascriptver%</message>
    </info>
  </test>


  <test id="Activexenabled" name="ActiveX enabled">
    <suppress><javascriptenabled>False</javascriptenabled></suppress>
    <info>
      <browser>IE</browser>
      <message>%activexenabled%</message>
    </info>
  </test>

  <test id="sslkeysize" name="SSL key size">
    <suppress><javascriptenabled>False</javascriptenabled></suppress>
    <info>
      <message>%sslkeysize%</message>
    </info>
  </test>

  <test id="popupsblocked" name="Blocked pop-ups">
    <suppress><javascriptenabled>False</javascriptenabled></suppress>
    <info>
      <message>%popupsblocked%</message>
    </info>
  </test>

  <test id="highsecurity" name="High security">
    <info>
      <browser>IE</browser>
      <message>%highsecurity%</message>
    </info>
  </test>

  <test id="screensize" name="Screen size">
    <suppress><javascriptenabled>False</javascriptenabled></suppress>
    <info>
      <message>%width% x %height%</message>
    </info>
  </test>

  <test id="fontsmoothing" name="Font smoothing">
    <suppress><javascriptenabled>False</javascriptenabled></suppress>
    <info>
      <browser>IE</browser>
      <message>%fontsmoothing%</message>
    </info>
  </test>

  <test id="textsize" name="Text size">
    <suppress><javascriptenabled>False</javascriptenabled></suppress>
    <suppress>
      <browser>!IE</browser>
    </suppress>
    <info><textsize>5</textsize><message>Smallest</message></info>
    <info><textsize>6</textsize><message>Smaller</message></info>
    <info><textsize>7</textsize><message>Medium</message></info>
    <info><textsize>8</textsize><message>Larger</message></info>
    <info><textsize>9</textsize><message>Largest</message></info>
  </test>

  <test id="colordepth" name="Color depth">
    <suppress><javascriptenabled>False</javascriptenabled></suppress>
    <info>
      <message>%colordepth% bits</message>
    </info>
  </test>

  <test id="flashplugin" name="Flash plug-in">
    <suppress><javascriptenabled>False</javascriptenabled></suppress>
    <info>
      <plugin_flash>1+</plugin_flash>      
      <message>%plugin_flashverex%</message>
    </info>
    <info>
      <plugin_flash>0</plugin_flash>
      <message>Not installed</message>
    </info>
  </test>

  <test id="acrobatplugin" name="Acrobat plug-in">
    <suppress>
      <javascriptenabled>False</javascriptenabled>
    </suppress>
    <info>
      <platform>Mac*</platform>
      <plugin_acrobatverex></plugin_acrobatverex>
      <message>Installed</message>
    </info>
    <info>
      <plugin_acrobat>1+</plugin_acrobat>
      <plugin_acrobatverex></plugin_acrobatverex>
      <message>Installed</message>
    </info>
    <info>
      <plugin_acrobat>1+</plugin_acrobat>
      <message>%plugin_acrobatverex%</message>
    </info>
    <info>
      <plugin_acrobat>0</plugin_acrobat>
      <message>Not installed</message>
    </info>
  </test>

  <test id="shockwaveplugin" name="Shockwave plug-in">
    <suppress><javascriptenabled>False</javascriptenabled></suppress>
    <info>
      <plugin_director>1+</plugin_director>
      <message>%plugin_directorverex%</message>
    </info>
    <info>
      <plugin_director>0</plugin_director>
      <message>Not installed</message>
    </info>
  </test>

  <test id="mediaplayer" name="Windows Media Player">
    <suppress><javascriptenabled>False</javascriptenabled></suppress>
    <info>
      <plugin_mediaplayer>1+</plugin_mediaplayer>
      <plugin_mediaplayerverex></plugin_mediaplayerverex>
      <message>Installed</message>
    </info>
    <info>
      <plugin_mediaplayer>1+</plugin_mediaplayer>
      <message>%plugin_mediaplayerverex%</message>
    </info>
    <info>
      <plugin_mediaplayer>0</plugin_mediaplayer>
      <message>Not installed</message>
    </info>
  </test>

  <!-- Quicktime testing causes a Infobar message in IE - only test if really needed -->
  <!--  
  <test id="quicktimeplugin" name="Quicktime plug-in">
    <suppress><javascriptenabled>False</javascriptenabled></suppress>
    <info>
      <plugin_quicktime>1+</plugin_quicktime>
      <message>%plugin_quicktimeverex%</message>
    </info>
    <info>
      <plugin_quicktime>0</plugin_quicktime>
      <message>Not installed</message>
    </info>
  </test>
  -->

  <test id="silverlightplugin" name="Sliverlight plug-in">
    <suppress>
      <javascriptenabled>False</javascriptenabled>
    </suppress>
    <info>
      <plugin_silverlight>1+</plugin_silverlight>
      <message>%plugin_silverlight%</message>
    </info>
    <info>
      <plugin_silverlight>0</plugin_silverlight>
      <message>Not installed</message>
    </info>
  </test>

  <!-- RealPlayer test can take a couple of seconds on IE, so by default we do not include it -->
  <!--
  <test id="realplayer" name="Realplayer build">
    <suppress><javascriptenabled>False</javascriptenabled></suppress>
    <info>
      <plugin_realplayer>1+</plugin_realplayer>
      <message>%plugin_realplayerbuild%</message>
    </info>
    <info>
      <plugin_realplayer>0</plugin_realplayer>
      <message>Not installed</message>
    </info>
  </test>
  -->

  <test id="flip4macplugin" name="Flip4Mac plug-in">
    <suppress><javascriptenabled>False</javascriptenabled></suppress>
    <suppress><platform>!Mac*</platform></suppress>
    <info>
      <plugin_flip4mac></plugin_flip4mac>
      <message>Not installed</message>
    </info>
    <info>
      <message>Installed</message>
    </info>
  </test>

  <test id="authorwareplugin" name="Authorware plug-in">
    <suppress><javascriptenabled>False</javascriptenabled></suppress>
    <info>
      <plugin_authorware>0</plugin_authorware>
      <message>Not installed</message>
    </info>
    <info>
      <message>Installed</message>
    </info>
  </test>

  <test id="javaenabled" name="Java enabled">
    <suppress>
      <javascriptenabled>False</javascriptenabled>
    </suppress>
    <info>
      <message>%javaenabled%</message>
    </info>
  </test>

  <!-- Note: There are several additional plug-ins that are not as popular which 
       are also detectable.  These can be added by following the other entries above. -->

  <!-- The following properties can take a few seconds (and in some cases longer) to test
       and therefore are not included by default. If you need any of these properties 
       remove the comment markers below. -->

  <test id="javaplugin" name="Java plug-in">
    <suppress><javascriptenabled>False</javascriptenabled></suppress>
    <info>
      <plugin_javaver></plugin_javaver>
      <message>Not installed</message>
    </info>
    <info>
      <message>%plugin_javaver%</message>
    </info>
  </test>

  <test id="javavendor" name="Java vendor">
    <suppress><javascriptenabled>False</javascriptenabled></suppress>
    <info>
      <javavendor matcher="regex">(|-1|-2|-3)</javavendor>
      <message>Java n/a</message>
    </info>
    <info>
      <message>%javavendor%</message>
    </info>
  </test>

  <test id="javaversion" name="Java version">
    <suppress><javascriptenabled>False</javascriptenabled></suppress>
    <info>
      <javaversion matcher="regex">(|-1|-2|-3)</javaversion>
      <message>Java n/a (%javaversion%)</message>
    </info>
    <info>
      <message>%javaversion%</message>
    </info>
  </test>

  <test id="msjvmbuild" name="Microsoft JVM">
    <suppress><javascriptenabled>False</javascriptenabled></suppress>
    <info>
      <msjvmbuild></msjvmbuild>
      <message>Not available</message>
    </info>
    <info>
      <message>%msjvmbuild%</message>
    </info>
  </test>
  
  <test id="broadband" name="Broadband">
    <suppress><javascriptenabled>False</javascriptenabled></suppress>
    <info>
      <message>%broadband%</message>
    </info>
  </test>

  <test id="connectionspeed" name="Connection speed">
    <suppress><javascriptenabled>False</javascriptenabled></suppress>
    <info>
      <connectionspeed>1+</connectionspeed>
      <message>%connectionspeed% bps</message>
    </info>
    <info>
      <message>Unable to determine</message>
    </info>
  </test>

  <test id="country" name="Country">
    <info>
      <message>%country%</message>
    </info>
  </test>

  <test id="ipaddr" name="IP address">
    <suppress><javascriptenabled>False</javascriptenabled></suppress>
    <info>
      <message>%ipaddr%</message>
    </info>
  </test>

  <test id="language" name="Language">
    <info>
      <message>%language%</message>
    </info>
  </test>

  <test id="languser" name="OS user language">
    <suppress><javascriptenabled>False</javascriptenabled></suppress>
    <info>
      <message>%languser%</message>
    </info>
  </test>

  <test id="langsystem" name="OS system language">
    <suppress><javascriptenabled>False</javascriptenabled></suppress>
    <suppress><browser>!IE</browser></suppress>
    <info>
      <message>%langsystem%</message>
    </info>
  </test>

  <test id="timezonediff" name="Time zone difference">
    <suppress><javascriptenabled>False</javascriptenabled></suppress>
    <info>
      <timezonediff>1</timezonediff>
      <message>%timezonediff% hour</message>
    </info>
    <info>
      <message>%timezonediff% hours</message>
    </info>
  </test>

  <test id="browserdatetime" name="User system time">
    <suppress><javascriptenabled>False</javascriptenabled></suppress>
    <info>
      <message>%browserdatetime%</message>
    </info>
  </test>

  <test id="browserdatetimems" name="User system time (ms)">
    <suppress><javascriptenabled>False</javascriptenabled></suppress>
    <info>
      <message>%browserdatetimems% ms</message>
    </info>
  </test>


  <test id="proxy" name="Proxy">
    <info>
      <proxystring></proxystring>
      <proxy>False</proxy>
      <message>False</message>
    </info>
    <info>
      <message>True</message>
    </info>    
  </test>

  <test id="proxystring" name="Proxy string">
    <suppress><javascriptenabled>False</javascriptenabled></suppress>
    <info>
      <proxystring></proxystring>
      <message>[none]</message>
    </info>
    <info>
      <message>%proxystring%</message>
    </info>
  </test>

  <test id="referrer" name="Referrer">
    <suppress><javascriptenabled>False</javascriptenabled></suppress>
    <info>
      <referrer></referrer>
      <message>[none]</message>
    </info>
    <info>
      <message>%referrer%</message>
    </info>
  </test>

  <test id="compressgzip" name="CompressGZip">
    <info>
      <message>%compressgzip%</message>
    </info>
  </test>

  <test id="aol" name="AOL">
    <info>
      <message>%aol%</message>
    </info>
  </test>

  <test id="aolversion" name="AOL version">
    <info>
      <aol>True</aol>
      <message>%aolversion%</message>
    </info>
  </test>

  <!-- The following properties can take a few seconds (and in some cases longer) to test
       and therefore are not included by default. If you need any of these properties 
       remove the comment markers below. -->


  <test id="osname" name="OS Name">
    <suppress><javascriptenabled>False</javascriptenabled></suppress>
    <info>
      <osname matcher="regex">(|-1|-2|-3)</osname>
      <message>Not available w/o Java</message>
    </info>
    <info>
      <message>%osname%</message>
    </info>
  </test>
  
  <test id="osversion" name="OS version">
    <suppress><javascriptenabled>False</javascriptenabled></suppress>
    <info>
      <osversion matcher="regex">(|-1|-2|-3)</osversion>
      <message>Not available w/o Java</message>
    </info>
    <info>
      <message>%osversion%</message>
    </info>
  </test>

  <test id="osarch" name="OS architecture">
    <suppress><javascriptenabled>False</javascriptenabled></suppress>
    <info>
      <osarch matcher="regex">(|-1|-2|-3)</osarch>
      <message>Not available w/o Java</message>
    </info>
    <info>
      <message>%osarch%</message>
    </info>
  </test>

  
  <test id="netclrinstalled" name=".NET CLR installed">
    <suppress><browser>!IE</browser></suppress>
    <info>
      <netclrinstalled>False</netclrinstalled>
      <message>None</message>
    </info>
    <info>
      <message>%netclrversion%</message>
    </info>
  </test>

  <test id="wininstallerminver" name="Windows Installer">
    <suppress><platform>!Win*</platform></suppress>
    <info>
      <message>%WinInstallerMinVer% or higher</message>
    </info>
  </test>

  <test id="netmeetingbuild" name="NetMeeting">
    <suppress><javascriptenabled>False</javascriptenabled></suppress>
    <info>
      <netmeetingbuild></netmeetingbuild>
      <message>Not installed</message>
    </info>
    <info>
      <message>%netmeetingbuild%</message>
    </info>    
  </test>

  <test id="msxml" name="MS XML version">
    <suppress><javascriptenabled>False</javascriptenabled></suppress>
    <suppress><browser>!IE</browser></suppress>
    <info>
      <message>%msxml% or higher</message>
    </info>
  </test>

</tests>
