bauxite 0.6.13 → 0.6.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 7e9cd48c03b4573d1cc19ecd90831708edba8036
4
- data.tar.gz: bf1b2e38ecd6d1f7408113e79a69a698ba100c32
3
+ metadata.gz: afb5d6e70b52a3490f3074012638cc3f33e0e482
4
+ data.tar.gz: 7f6d6602ff84f49724bf6943563f54f0aa33ef86
5
5
  SHA512:
6
- metadata.gz: ab383aa0d909c8b95712336301a4c8dabeaea02acff3347de591f087b195a315cca037f42ec1bf5ddf978c31df0aa97343d4b145c362fa4020091bf7e6bce5ef
7
- data.tar.gz: e2135d1d941093e37962e200606e126fc956cca2f02dd31ae2c710686ec8a84a762ad97de2ab1246421e53ad918c6f2991bb12a790f22b7168cfd5efa94e3006
6
+ metadata.gz: 562a735c97fa3a6d5dcb59b02aaa3f11614e1410dde9beffa8ff74fdc4582e897fe1113ff01e65a44d8d07a6547d755088e4dce0da0736f7e9740ccc5b718542
7
+ data.tar.gz: e3bf62e0b68c980caf06c65d2c060ee23a5491ba63d11d597c0bc18e4b97b20eda3246bfc7ba626e36c0e978fbcf9e71b776fd438ccc8d11b864b1f80b8e8687
@@ -117,6 +117,8 @@
117
117
 
118
118
  <li ><a href="#method-i-doif">#doif</a>
119
119
 
120
+ <li ><a href="#method-i-dounless">#dounless</a>
121
+
120
122
  <li ><a href="#method-i-echo">#echo</a>
121
123
 
122
124
  <li ><a href="#method-i-exec">#exec</a>
@@ -904,6 +906,56 @@ href="Action.html#method-i-assertv">assertv</a>.</p>
904
906
 
905
907
 
906
908
 
909
+ </div>
910
+
911
+
912
+ <div id="method-i-dounless" class="method-detail ">
913
+
914
+ <div class="method-heading">
915
+ <span class="method-name">dounless</span><span
916
+ class="method-args">(expected, actual, action, *args)</span>
917
+
918
+ <span class="method-click-advice">click to toggle source</span>
919
+
920
+ </div>
921
+
922
+
923
+ <div class="method-description">
924
+
925
+ <p>Executes <code>action</code> only if <code>expected</code> does not match
926
+ <code>actual</code>.</p>
927
+
928
+ <p>The conditional check in this action is similar to <a
929
+ href="Action.html#method-i-assertv">assertv</a>.</p>
930
+
931
+ <p>For example:</p>
932
+
933
+ <pre class="ruby"><span class="ruby-identifier">set</span> <span class="ruby-identifier">first</span> <span class="ruby-identifier">john</span>
934
+ <span class="ruby-identifier">set</span> <span class="ruby-identifier">last</span> <span class="ruby-identifier">doe</span>
935
+ <span class="ruby-identifier">dounless</span> <span class="ruby-identifier">james</span> ${<span class="ruby-identifier">first</span>} <span class="ruby-identifier">assertv</span> <span class="ruby-identifier">doe</span> ${<span class="ruby-identifier">last</span>}
936
+ <span class="ruby-comment"># =&gt; this assertion would pass.</span>
937
+
938
+ <span class="ruby-identifier">dounless</span> <span class="ruby-keyword">false</span> ${<span class="ruby-identifier">load_captcha</span>} <span class="ruby-identifier">load</span> <span class="ruby-identifier">captcha</span>.<span class="ruby-identifier">bxt</span>
939
+ <span class="ruby-comment"># =&gt; this would only load captcha.bxt if the load_captcha</span>
940
+ <span class="ruby-comment"># variable is not &#39;false&#39;</span>
941
+ </pre>
942
+
943
+
944
+
945
+
946
+ <div class="method-source-code" id="dounless-source">
947
+ <pre><span class="ruby-comment"># File lib/bauxite/actions/dounless.rb, line 39</span>
948
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier">dounless</span>(<span class="ruby-identifier">expected</span>, <span class="ruby-identifier">actual</span>, <span class="ruby-identifier">action</span>, <span class="ruby-operator">*</span><span class="ruby-identifier">args</span>)
949
+ <span class="ruby-keyword">return</span> <span class="ruby-keyword">false</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">actual</span> <span class="ruby-operator">=~</span> <span class="ruby-identifier">_pattern</span>(<span class="ruby-identifier">expected</span>)
950
+ <span class="ruby-ivar">@ctx</span>.<span class="ruby-identifier">exec_action_object</span>(<span class="ruby-ivar">@ctx</span>.<span class="ruby-identifier">get_action</span>(<span class="ruby-identifier">action</span>, <span class="ruby-identifier">args</span>))
951
+ <span class="ruby-keyword">end</span></pre>
952
+ </div>
953
+
954
+ </div>
955
+
956
+
957
+
958
+
907
959
  </div>
908
960
 
909
961
 
data/doc/created.rid CHANGED
@@ -1,4 +1,4 @@
1
- Thu, 29 May 2014 14:50:33 -0300
1
+ Thu, 05 Jun 2014 16:43:04 -0300
2
2
  README.md Wed, 26 Mar 2014 13:39:30 -0300
3
3
  lib/bauxite/selectors/smart.rb Wed, 26 Mar 2014 13:39:30 -0300
4
4
  lib/bauxite/selectors/attr.rb Wed, 26 Mar 2014 13:39:30 -0300
@@ -21,6 +21,7 @@ lib/bauxite/actions/return.rb Wed, 26 Mar 2014 13:39:30 -0300
21
21
  lib/bauxite/actions/set.rb Wed, 26 Mar 2014 13:39:30 -0300
22
22
  lib/bauxite/actions/alias.rb Wed, 26 Mar 2014 13:39:30 -0300
23
23
  lib/bauxite/actions/write.rb Wed, 26 Mar 2014 13:39:30 -0300
24
+ lib/bauxite/actions/dounless.rb Thu, 05 Jun 2014 16:39:48 -0300
24
25
  lib/bauxite/actions/select.rb Wed, 26 Mar 2014 13:39:30 -0300
25
26
  lib/bauxite/actions/failif.rb Wed, 26 Mar 2014 13:39:30 -0300
26
27
  lib/bauxite/actions/doif.rb Wed, 26 Mar 2014 13:39:30 -0300
@@ -1 +1 @@
1
- var search_data = {"index":{"searchIndex":["bauxite","action","actionmodule","application","context","errors","assertionerror","filenotfounderror","formaterror","loggers","compositelogger","echologger","filelogger","htmllogger","nulllogger","reportlogger","terminallogger","xtermlogger","parser","parsermodule","selector","selectormodule","_block()","_cmd_color()","_fmt()","_fmt()","_restore_cursor()","_restore_cursor()","_save_cursor()","_save_cursor()","_screen_width()","_screen_width()","action_args()","actions()","add_alias()","alias_action()","args()","assert()","asserth()","assertm()","assertv()","assertw()","attr()","break_action()","capture()","click()","csv()","debug()","debug()","debug_prompt()","debug_prompt()","debug_prompt()","default()","doif()","driver()","echo()","exec()","exec_action()","exec_action_object()","exec_file()","exec_parsed_action()","execute()","exit_action()","expand()","failif()","finalize()","finalize()","finalize()","finalize()","finalize()","find()","find()","frame()","get_action()","get_value()","js()","load()","load_logger()","log()","log()","log()","log()","log_cmd()","log_cmd()","log_cmd()","log_cmd()","log_cmd()","log_cmd()","loggers()","max_action_name_size()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","open()","output_path()","params()","parse()","parse_action_default()","parsers()","print_error()","progress()","progress()","progress()","replace()","reset()","reset_driver()","return_action()","ruby()","select()","selectors()","selenium_find()","selenium_ide_html()","set()","setif()","sid()","smart()","source()","start()","stop()","store()","submit()","test()","tryload()","wait()","wait()","window()","with_driver_timeout()","with_timeout()","with_vars()","write()","readme"],"longSearchIndex":["bauxite","bauxite::action","bauxite::actionmodule","bauxite::application","bauxite::context","bauxite::errors","bauxite::errors::assertionerror","bauxite::errors::filenotfounderror","bauxite::errors::formaterror","bauxite::loggers","bauxite::loggers::compositelogger","bauxite::loggers::echologger","bauxite::loggers::filelogger","bauxite::loggers::htmllogger","bauxite::loggers::nulllogger","bauxite::loggers::reportlogger","bauxite::loggers::terminallogger","bauxite::loggers::xtermlogger","bauxite::parser","bauxite::parsermodule","bauxite::selector","bauxite::selectormodule","bauxite::loggers::terminallogger#_block()","bauxite::loggers::terminallogger#_cmd_color()","bauxite::loggers::terminallogger#_fmt()","bauxite::loggers::xtermlogger#_fmt()","bauxite::loggers::terminallogger#_restore_cursor()","bauxite::loggers::xtermlogger#_restore_cursor()","bauxite::loggers::terminallogger#_save_cursor()","bauxite::loggers::xtermlogger#_save_cursor()","bauxite::loggers::terminallogger#_screen_width()","bauxite::loggers::xtermlogger#_screen_width()","bauxite::context::action_args()","bauxite::context::actions()","bauxite::context#add_alias()","bauxite::action#alias_action()","bauxite::actionmodule#args()","bauxite::action#assert()","bauxite::action#asserth()","bauxite::action#assertm()","bauxite::action#assertv()","bauxite::action#assertw()","bauxite::selector#attr()","bauxite::action#break_action()","bauxite::action#capture()","bauxite::action#click()","bauxite::parser#csv()","bauxite::action#debug()","bauxite::context#debug()","bauxite::loggers::compositelogger#debug_prompt()","bauxite::loggers::nulllogger#debug_prompt()","bauxite::loggers::terminallogger#debug_prompt()","bauxite::parser#default()","bauxite::action#doif()","bauxite::context#driver()","bauxite::action#echo()","bauxite::action#exec()","bauxite::context#exec_action()","bauxite::context#exec_action_object()","bauxite::context#exec_file()","bauxite::context#exec_parsed_action()","bauxite::actionmodule#execute()","bauxite::action#exit_action()","bauxite::context#expand()","bauxite::action#failif()","bauxite::loggers::compositelogger#finalize()","bauxite::loggers::filelogger#finalize()","bauxite::loggers::htmllogger#finalize()","bauxite::loggers::nulllogger#finalize()","bauxite::loggers::reportlogger#finalize()","bauxite::context#find()","bauxite::selectormodule#find()","bauxite::selector#frame()","bauxite::context#get_action()","bauxite::context#get_value()","bauxite::action#js()","bauxite::action#load()","bauxite::context::load_logger()","bauxite::loggers::compositelogger#log()","bauxite::loggers::nulllogger#log()","bauxite::loggers::reportlogger#log()","bauxite::loggers::terminallogger#log()","bauxite::loggers::compositelogger#log_cmd()","bauxite::loggers::echologger#log_cmd()","bauxite::loggers::filelogger#log_cmd()","bauxite::loggers::nulllogger#log_cmd()","bauxite::loggers::reportlogger#log_cmd()","bauxite::loggers::terminallogger#log_cmd()","bauxite::context::loggers()","bauxite::context::max_action_name_size()","bauxite::actionmodule::new()","bauxite::context::new()","bauxite::loggers::compositelogger::new()","bauxite::loggers::filelogger::new()","bauxite::loggers::htmllogger::new()","bauxite::loggers::nulllogger::new()","bauxite::loggers::reportlogger::new()","bauxite::loggers::terminallogger::new()","bauxite::parsermodule::new()","bauxite::selectormodule::new()","bauxite::action#open()","bauxite::context#output_path()","bauxite::action#params()","bauxite::parsermodule#parse()","bauxite::context::parse_action_default()","bauxite::context::parsers()","bauxite::context#print_error()","bauxite::loggers::compositelogger#progress()","bauxite::loggers::nulllogger#progress()","bauxite::loggers::terminallogger#progress()","bauxite::action#replace()","bauxite::action#reset()","bauxite::context#reset_driver()","bauxite::action#return_action()","bauxite::action#ruby()","bauxite::action#select()","bauxite::context::selectors()","bauxite::selectormodule#selenium_find()","bauxite::parser#selenium_ide_html()","bauxite::action#set()","bauxite::action#setif()","bauxite::selector#sid()","bauxite::selector#smart()","bauxite::action#source()","bauxite::context#start()","bauxite::context#stop()","bauxite::action#store()","bauxite::action#submit()","bauxite::action#test()","bauxite::action#tryload()","bauxite::action#wait()","bauxite::context::wait()","bauxite::selector#window()","bauxite::context#with_driver_timeout()","bauxite::context#with_timeout()","bauxite::context#with_vars()","bauxite::action#write()",""],"info":[["Bauxite","","Bauxite.html","","<p>Bauxite Namespace\n"],["Bauxite::Action","","Bauxite/Action.html","","<p>Test action class.\n<p>Test actions are basic test operations that can be combined to create a\ntest case. …\n"],["Bauxite::ActionModule","","Bauxite/ActionModule.html","","<p>Action common state and behavior.\n"],["Bauxite::Application","","Bauxite/Application.html","","<p><code>bauxite</code> command-line program.\n<p>This program executes Bauxite tests and outputs the execution progress and\n…\n"],["Bauxite::Context","","Bauxite/Context.html","","<p>The Main test context. This class includes state and helper functions used\nby clients execute tests and …\n"],["Bauxite::Errors","","Bauxite/Errors.html","","<p>Errors Module\n"],["Bauxite::Errors::AssertionError","","Bauxite/Errors/AssertionError.html","","<p>Error raised when an assertion fails.\n"],["Bauxite::Errors::FileNotFoundError","","Bauxite/Errors/FileNotFoundError.html","","<p>Error raised when an invalid file tried to be loaded.\n"],["Bauxite::Errors::FormatError","","Bauxite/Errors/FormatError.html","","<p>Error raised when trying to process an invalid file format.\n"],["Bauxite::Loggers","","Bauxite/Loggers.html","","<p>Test loggers module\n<p>The default Logger class and all custom loggers must be included in this\nmodule.\n"],["Bauxite::Loggers::CompositeLogger","","Bauxite/Loggers/CompositeLogger.html","","<p>Composite logger.\n<p>This composite logger forwards logging calls to each of its children.\n<p>Composite logger …\n"],["Bauxite::Loggers::EchoLogger","","Bauxite/Loggers/EchoLogger.html","","<p>Echo logger.\n<p>This logger outputs the raw action text for every action executed.\n<p>Note that this logger does …\n"],["Bauxite::Loggers::FileLogger","","Bauxite/Loggers/FileLogger.html","","<p>File logger.\n<p>This logger outputs the raw action text for every action executed to the\nfile specified in …\n"],["Bauxite::Loggers::HtmlLogger","","Bauxite/Loggers/HtmlLogger.html","","<p>Html logger.\n<p>This logger creates an HTML report of the test execution, linking to the\ncaptures taken, …\n"],["Bauxite::Loggers::NullLogger","","Bauxite/Loggers/NullLogger.html","","<p>Test logger class.\n<p>Test loggers handle test output format.\n<p>The default logger does not provide any output …\n"],["Bauxite::Loggers::ReportLogger","","Bauxite/Loggers/ReportLogger.html","","<p>Report logger.\n<p>This base logger class can be inherited to create reporting loggers.\n<p>Descendent classes …\n"],["Bauxite::Loggers::TerminalLogger","","Bauxite/Loggers/TerminalLogger.html","","<p>Terminal logger.\n<p>This logger outputs text using basic text formatting for a terminal window.\n"],["Bauxite::Loggers::XtermLogger","","Bauxite/Loggers/XtermLogger.html","","<p>XTerm logger.\n<p>This logger outputs colorized lines using xterm (VT100/2) escape sequences.\n<p>XTerm logger …\n"],["Bauxite::Parser","","Bauxite/Parser.html","","<p>Parser class.\n<p>Parser represent different strategies for reading input files into lists of\nBauxite actions. …\n"],["Bauxite::ParserModule","","Bauxite/ParserModule.html","","<p>Parser common state and behavior.\n"],["Bauxite::Selector","","Bauxite/Selector.html","","<p>Selector class.\n<p>Selectors represent different strategies for finding elements. Selenium\nprovides a list …\n"],["Bauxite::SelectorModule","","Bauxite/SelectorModule.html","","<p>Selector common state and behavior.\n"],["_block","Bauxite::Loggers::TerminalLogger","Bauxite/Loggers/TerminalLogger.html#method-i-_block","(color, text, size)","<p>Prints <code>text</code> centered inside a square-bracketed block.\n"],["_cmd_color","Bauxite::Loggers::TerminalLogger","Bauxite/Loggers/TerminalLogger.html#method-i-_cmd_color","(cmd)","<p>Get the color of <code>cmd</code>.\n"],["_fmt","Bauxite::Loggers::TerminalLogger","Bauxite/Loggers/TerminalLogger.html#method-i-_fmt","(color, text, size = 0)","<p>Centers <code>text</code> to a fixed size with.\n"],["_fmt","Bauxite::Loggers::XtermLogger","Bauxite/Loggers/XtermLogger.html#method-i-_fmt","(color, text, size = 0)",""],["_restore_cursor","Bauxite::Loggers::TerminalLogger","Bauxite/Loggers/TerminalLogger.html#method-i-_restore_cursor","()","<p>Restores the cursor to the previously saved cursor position.\n"],["_restore_cursor","Bauxite::Loggers::XtermLogger","Bauxite/Loggers/XtermLogger.html#method-i-_restore_cursor","()",""],["_save_cursor","Bauxite::Loggers::TerminalLogger","Bauxite/Loggers/TerminalLogger.html#method-i-_save_cursor","()","<p>Save the current cursor position,\n"],["_save_cursor","Bauxite::Loggers::XtermLogger","Bauxite/Loggers/XtermLogger.html#method-i-_save_cursor","()",""],["_screen_width","Bauxite::Loggers::TerminalLogger","Bauxite/Loggers/TerminalLogger.html#method-i-_screen_width","()","<p>Returns the terminal screen width.\n"],["_screen_width","Bauxite::Loggers::XtermLogger","Bauxite/Loggers/XtermLogger.html#method-i-_screen_width","()",""],["action_args","Bauxite::Context","Bauxite/Context.html#method-c-action_args","(action)","<p>Returns an array with the names of the arguments of the specified action.\n<p>For example:\n\n<pre>Context::action_args ...</pre>\n"],["actions","Bauxite::Context","Bauxite/Context.html#method-c-actions","()","<p>Returns an array with the names of every action available.\n<p>For example:\n\n<pre class=\"ruby\"><span class=\"ruby-constant\">Context</span><span class=\"ruby-operator\">::</span><span class=\"ruby-identifier\">actions</span>\n<span class=\"ruby-comment\"># =&gt; [ &quot;assert&quot;, ...</span>\n</pre>\n"],["add_alias","Bauxite::Context","Bauxite/Context.html#method-i-add_alias","(name, action, args)","<p>Adds an alias named <code>name</code> to the specified <code>action</code>\nwith the arguments specified in <code>args</code>.\n"],["alias_action","Bauxite::Action","Bauxite/Action.html#method-i-alias_action","(name, action, *args)","<p>Aliases <code>name</code> to <code>action</code> with additional arguments.\n<p>In <code>args</code> the variables <code>${1}</code>..<code>${n}</code>\nwill be expanded to …\n"],["args","Bauxite::ActionModule","Bauxite/ActionModule.html#method-i-args","(quote = false)","<p>Returns the action arguments after applying variable expansion.\n<p>See Context#expand.\n<p>If <code>quote</code> is <code>true</code>, the …\n"],["assert","Bauxite::Action","Bauxite/Action.html#method-i-assert","(selector, text)","<p>Asserts that the value of the selected element matches <code>text</code>.\n<p><code>text</code> is a regular expression. <code>text</code> can be …\n"],["asserth","Bauxite::Action","Bauxite/Action.html#method-i-asserth","(*args)","<p>Replays the current GET request and asserts that the HTTP headers returned\nby that request match each …\n"],["assertm","Bauxite::Action","Bauxite/Action.html#method-i-assertm","(text, action = 'accept')","<p>Asserts that a native modal popup is present (e.g. alert, confirm, prompt,\netc.) and that its text matches …\n"],["assertv","Bauxite::Action","Bauxite/Action.html#method-i-assertv","(expected, actual)","<p>Asserts that the <code>actual</code> text matches the <code>expected</code>\ntext.\n<p><code>expected</code> can be a regular expression. See #assert …\n"],["assertw","Bauxite::Action","Bauxite/Action.html#method-i-assertw","(count = 1)","<p>Asserts that the number of currently open windows equals\n<code>count</code>.\n<p>For example:\n\n<pre class=\"ruby\"><span class=\"ruby-identifier\">assertw</span>\n<span class=\"ruby-comment\"># =&gt; this assertion ...</span>\n</pre>\n"],["attr","Bauxite::Selector","Bauxite/Selector.html#method-i-attr","(arg, &block)","<p>Select an element by attribute value.\n<p>The attribute selector syntax is:\n\n<pre>attr=name:value</pre>\n"],["break_action","Bauxite::Action","Bauxite/Action.html#method-i-break_action","()","<p>Prompts the user to press ENTER before resuming execution.\n<p>Note that this method provides an action named …\n"],["capture","Bauxite::Action","Bauxite/Action.html#method-i-capture","(file = nil)","<p>Captures a screenshot of the current browser window and saves it with\nspecified <code>file</code> name. If <code>file</code> is …\n"],["click","Bauxite::Action","Bauxite/Action.html#method-i-click","(selector)","<p>Triggers the <code>click</code> event on the selected element.\n<p>For example:\n\n<pre># assuming &lt;button type=&quot;button&quot; id=&quot;btn&quot;&gt;click ...</pre>\n"],["csv","Bauxite::Parser","Bauxite/Parser.html#method-i-csv","(file)","<p>Load CSV files.\n"],["debug","Bauxite::Action","Bauxite/Action.html#method-i-debug","()","<p>Breaks into the debug console.\n<p>In the debug console you can type action strings and test their result. …\n"],["debug","Bauxite::Context","Bauxite/Context.html#method-i-debug","()","<p>Breaks into the debug console.\n<p>For example:\n\n<pre class=\"ruby\"><span class=\"ruby-identifier\">ctx</span>.<span class=\"ruby-identifier\">debug</span>\n<span class=\"ruby-comment\"># =&gt; this breaks into the debug console</span>\n</pre>\n"],["debug_prompt","Bauxite::Loggers::CompositeLogger","Bauxite/Loggers/CompositeLogger.html#method-i-debug_prompt","()","<p>Returns a colorized debug prompt.\n<p>This implementation returns the debug_prompt of the first logger.\n"],["debug_prompt","Bauxite::Loggers::NullLogger","Bauxite/Loggers/NullLogger.html#method-i-debug_prompt","()","<p>Returns the prompt shown by the debug console (see Context#debug).\n<p>For example:\n\n<pre class=\"ruby\"><span class=\"ruby-identifier\">log</span>.<span class=\"ruby-identifier\">debug_prompt</span>\n<span class=\"ruby-comment\"># =&gt; returns ...</span>\n</pre>\n"],["debug_prompt","Bauxite::Loggers::TerminalLogger","Bauxite/Loggers/TerminalLogger.html#method-i-debug_prompt","()","<p>Returns a colorized debug prompt.\n"],["default","Bauxite::Parser","Bauxite/Parser.html#method-i-default","(file, io = nil)","<p>Load default Bauxite files.\n"],["doif","Bauxite::Action","Bauxite/Action.html#method-i-doif","(expected, actual, action, *args)","<p>Executes <code>action</code> only if <code>expected</code> matches\n<code>actual</code>.\n<p>The conditional check in this action is similar to #assertv …\n"],["driver","Bauxite::Context","Bauxite/Context.html#method-i-driver","()","<p>Test engine driver instance (Selenium WebDriver).\n"],["echo","Bauxite::Action","Bauxite/Action.html#method-i-echo","(text)","<p>Prints the value of the specified <code>text</code>.\n<p><code>text</code> is subject to variable expansion (see Context#expand).\n<p>For …\n"],["exec","Bauxite::Action","Bauxite/Action.html#method-i-exec","(*command)","<p>Executes <code>command</code>, optionally storing the results in a\nvariable.\n<p>If the first argument of <code>command</code> is <code>name=...</code> …\n"],["exec_action","Bauxite::Context","Bauxite/Context.html#method-i-exec_action","(text)","<p>Executes the specified action string handling errors, logging and debug\nhistory.\n<p>If <code>log</code> is <code>true</code>, log the …\n"],["exec_action_object","Bauxite::Context","Bauxite/Context.html#method-i-exec_action_object","(action)","<p>Executes the specified action object injecting built-in variables. Note\nthat the result returned by this …\n"],["exec_file","Bauxite::Context","Bauxite/Context.html#method-i-exec_file","(file)","<p>Executes the specified <code>file</code>.\n<p>For example:\n\n<pre class=\"ruby\"><span class=\"ruby-identifier\">ctx</span>.<span class=\"ruby-identifier\">exec_file</span>(<span class=\"ruby-string\">&#39;file&#39;</span>)\n<span class=\"ruby-comment\"># =&gt; executes every action defined in &#39;file&#39;</span>\n</pre>\n"],["exec_parsed_action","Bauxite::Context","Bauxite/Context.html#method-i-exec_parsed_action","(action, args, log = true, text = nil)","<p>Executes the specified action handling errors, logging and debug history.\n<p>If <code>log</code> is <code>true</code>, log the action …\n"],["execute","Bauxite::ActionModule","Bauxite/ActionModule.html#method-i-execute","()","<p>Executes the action evaluating the arguments in the current context.\n<p>Note that #execute calls #args to …\n"],["exit_action","Bauxite::Action","Bauxite/Action.html#method-i-exit_action","()","<p>Aborts the execution of the current context.\n<p>For example:\n\n<pre class=\"ruby\"><span class=\"ruby-identifier\">exit</span>\n<span class=\"ruby-identifier\">assertv</span> <span class=\"ruby-keyword\">true</span> <span class=\"ruby-keyword\">false</span>\n<span class=\"ruby-comment\"># =&gt; the assertv will ...</span>\n</pre>\n"],["expand","Bauxite::Context","Bauxite/Context.html#method-i-expand","(s)","<p>Recursively replaces occurencies of variable expansions in <code>s</code>\nwith the corresponding variable value.\n<p>The …\n"],["failif","Bauxite::Action","Bauxite/Action.html#method-i-failif","(action, *args)","<p>Executes the specified <code>action</code> expected to fail. If\n<code>action</code> succeeds the #failif action fails. If\n<code>action</code> …\n"],["finalize","Bauxite::Loggers::CompositeLogger","Bauxite/Loggers/CompositeLogger.html#method-i-finalize","(ctx)","<p>Completes the log execution.\n"],["finalize","Bauxite::Loggers::FileLogger","Bauxite/Loggers/FileLogger.html#method-i-finalize","(ctx)","<p>Completes the log execution.\n"],["finalize","Bauxite::Loggers::HtmlLogger","Bauxite/Loggers/HtmlLogger.html#method-i-finalize","(ctx)","<p>Completes the log execution.\n"],["finalize","Bauxite::Loggers::NullLogger","Bauxite/Loggers/NullLogger.html#method-i-finalize","(ctx)","<p>Completes the log execution.\n"],["finalize","Bauxite::Loggers::ReportLogger","Bauxite/Loggers/ReportLogger.html#method-i-finalize","(ctx)","<p>Completes the log execution.\n"],["find","Bauxite::Context","Bauxite/Context.html#method-i-find","(selector)","<p>Finds an element by <code>selector</code>.\n<p>The element found is yielded to the given <code>block</code> (if any) and\nreturned.\n<p>Note …\n"],["find","Bauxite::SelectorModule","Bauxite/SelectorModule.html#method-i-find","(selector, &block)","<p>Searches for elements using the specified selector string.\n<p>For more information see Context#find.\n<p>Selectors …\n"],["frame","Bauxite::Selector","Bauxite/Selector.html#method-i-frame","(arg, &block)","<p>Change the selector scope to the given frame and finds an element in that\nframe.\n<p>This is a composite selector. …\n"],["get_action","Bauxite::Context","Bauxite/Context.html#method-i-get_action","(action, args, text = nil)","<p>Returns an executable Action object constructed from the specified\narguments resolving action aliases. …\n"],["get_value","Bauxite::Context","Bauxite/Context.html#method-i-get_value","(element)","<p>Returns the value of the specified <code>element</code>.\n<p>This method takes into account the type of element and selectively …\n"],["js","Bauxite::Action","Bauxite/Action.html#method-i-js","(script, name = nil)","<p>Executes the specified Javascript <code>script</code>, optionally storing\nthe results the variable named <code>name</code>.\n<p>Note …\n"],["load","Bauxite::Action","Bauxite/Action.html#method-i-load","(file, *vars)","<p>Load the specified file into an isolated variable context and execute the\nactions specified. If the file …\n"],["load_logger","Bauxite::Context","Bauxite/Context.html#method-c-load_logger","(loggers, options)","<p>Constructs a Logger instance using <code>name</code> as a hint for the\nlogger type.\n"],["log","Bauxite::Loggers::CompositeLogger","Bauxite/Loggers/CompositeLogger.html#method-i-log","(s, type = :info)","<p>Prints the specified string.\n<p>See Bauxite::Loggers::NullLogger#print\n"],["log","Bauxite::Loggers::NullLogger","Bauxite/Loggers/NullLogger.html#method-i-log","(s, type = :info)","<p>Logs the specified string.\n<p><code>type</code>, if specified, should be one of <code>:error</code>,\n<code>:warning</code>, <code>:info</code> (default), <code>:debug</code> …\n"],["log","Bauxite::Loggers::ReportLogger","Bauxite/Loggers/ReportLogger.html#method-i-log","(s, type = :info)","<p>Logs the specified string.\n<p><code>type</code>, if specified, should be one of <code>:error</code>,\n<code>:warning</code>, <code>:info</code> (default), <code>:debug</code> …\n"],["log","Bauxite::Loggers::TerminalLogger","Bauxite/Loggers/TerminalLogger.html#method-i-log","(s, type = :info)","<p>Prints the specified string.\n<p>See Bauxite::Loggers::NullLogger#print\n"],["log_cmd","Bauxite::Loggers::CompositeLogger","Bauxite/Loggers/CompositeLogger.html#method-i-log_cmd","(action, &block)","<p>Pretty prints action information and status.\n<p>This implementation only yileds in the first logger.\n<p>Additional …\n"],["log_cmd","Bauxite::Loggers::EchoLogger","Bauxite/Loggers/EchoLogger.html#method-i-log_cmd","(action)","<p>Echoes the raw action text.\n"],["log_cmd","Bauxite::Loggers::FileLogger","Bauxite/Loggers/FileLogger.html#method-i-log_cmd","(action)","<p>Echoes the raw action text.\n"],["log_cmd","Bauxite::Loggers::NullLogger","Bauxite/Loggers/NullLogger.html#method-i-log_cmd","(action)","<p>Executes the given block in a logging context.\n<p>This default implementation does not provide any logging …\n"],["log_cmd","Bauxite::Loggers::ReportLogger","Bauxite/Loggers/ReportLogger.html#method-i-log_cmd","(action)","<p>Echoes the raw action text.\n"],["log_cmd","Bauxite::Loggers::TerminalLogger","Bauxite/Loggers/TerminalLogger.html#method-i-log_cmd","(action)","<p>Pretty prints action information and status.\n"],["loggers","Bauxite::Context","Bauxite/Context.html#method-c-loggers","()","<p>Returns an array with the names of every logger available.\n<p>For example:\n\n<pre class=\"ruby\"><span class=\"ruby-constant\">Context</span><span class=\"ruby-operator\">::</span><span class=\"ruby-identifier\">loggers</span>\n<span class=\"ruby-comment\"># =&gt; [ &quot;null&quot;, ...</span>\n</pre>\n"],["max_action_name_size","Bauxite::Context","Bauxite/Context.html#method-c-max_action_name_size","()","<p>Returns the maximum size in characters of an action name.\n<p>This method is useful to pretty print lists …\n"],["new","Bauxite::ActionModule","Bauxite/ActionModule.html#method-c-new","(ctx, cmd, args, text, file, line)","<p>Constructs a new test action instance.\n"],["new","Bauxite::Context","Bauxite/Context.html#method-c-new","(options)","<p>Constructs a new test context instance.\n<p><code>options</code> is a hash with the following values:\n<p>:driver &mdash; selenium driver …\n"],["new","Bauxite::Loggers::CompositeLogger","Bauxite/Loggers/CompositeLogger.html#method-c-new","(options, loggers = nil)","<p>Constructs a new composite logger instance.\n"],["new","Bauxite::Loggers::FileLogger","Bauxite/Loggers/FileLogger.html#method-c-new","(options)","<p>Constructs a new echo logger instance.\n"],["new","Bauxite::Loggers::HtmlLogger","Bauxite/Loggers/HtmlLogger.html#method-c-new","(options)","<p>Constructs a new null logger instance.\n"],["new","Bauxite::Loggers::NullLogger","Bauxite/Loggers/NullLogger.html#method-c-new","(options)","<p>Constructs a new null logger instance.\n"],["new","Bauxite::Loggers::ReportLogger","Bauxite/Loggers/ReportLogger.html#method-c-new","(options)","<p>Constructs a new report logger instance.\n"],["new","Bauxite::Loggers::TerminalLogger","Bauxite/Loggers/TerminalLogger.html#method-c-new","(options)","<p>Constructs a new Terminal logger instance.\n"],["new","Bauxite::ParserModule","Bauxite/ParserModule.html#method-c-new","(ctx)","<p>Constructs a new test parser instance.\n"],["new","Bauxite::SelectorModule","Bauxite/SelectorModule.html#method-c-new","(ctx, default_selector)","<p>Constructs a new test selector instance.\n"],["open","Bauxite::Action","Bauxite/Action.html#method-i-open","(url)","<p>Opens the specified <code>url</code> in the browser.\n<p>For example:\n\n<pre class=\"ruby\"><span class=\"ruby-identifier\">open</span> <span class=\"ruby-string\">&quot;http://www.ruby-lang.org&quot;</span>\n<span class=\"ruby-comment\"># =&gt; this would open ...</span>\n</pre>\n"],["output_path","Bauxite::Context","Bauxite/Context.html#method-i-output_path","(path)","<p>Returns the output path for <code>path</code> accounting for the \n<code>__OUTPUT__</code> variable.\n<p>For example:\n\n<pre># assuming --output ...</pre>\n"],["params","Bauxite::Action","Bauxite/Action.html#method-i-params","(*vars)","<p>Asserts that the variables named <code>vars</code> are defined and not\nempty.\n<p>For example:\n\n<pre>params host db_name username ...</pre>\n"],["parse","Bauxite::ParserModule","Bauxite/ParserModule.html#method-i-parse","(file)","<p>Parse <code>file</code> and yield the resulting actions.\n"],["parse_action_default","Bauxite::Context","Bauxite/Context.html#method-c-parse_action_default","(text, file = '<unknown>', line = 0)","<p>Default action parsing strategy.\n"],["parsers","Bauxite::Context","Bauxite/Context.html#method-c-parsers","()","<p>Returns an array with the names of every parser available.\n<p>For example:\n\n<pre class=\"ruby\"><span class=\"ruby-constant\">Context</span><span class=\"ruby-operator\">::</span><span class=\"ruby-identifier\">parsers</span>\n<span class=\"ruby-comment\"># =&gt; [ &quot;default&quot;, ...</span>\n</pre>\n"],["print_error","Bauxite::Context","Bauxite/Context.html#method-i-print_error","(e, capture = true)","<p>Prints the specified <code>error</code> using the Logger configured and \nhandling the verbose option.\n<p>For example: …\n"],["progress","Bauxite::Loggers::CompositeLogger","Bauxite/Loggers/CompositeLogger.html#method-i-progress","(value)","<p>Updates action progress.\n"],["progress","Bauxite::Loggers::NullLogger","Bauxite/Loggers/NullLogger.html#method-i-progress","(value)","<p>Updates the progress of the current action.\n"],["progress","Bauxite::Loggers::TerminalLogger","Bauxite/Loggers/TerminalLogger.html#method-i-progress","(value)","<p>Updates action progress.\n"],["replace","Bauxite::Action","Bauxite/Action.html#method-i-replace","(text, pattern, replacement, name)","<p>Replaces the occurrences of <code>pattern</code> in <code>text</code> with\n<code>replacement</code> and assigns the result to the variable named …\n"],["reset","Bauxite::Action","Bauxite/Action.html#method-i-reset","()","<p>Resets the test engine by closing and reopening the browser. As a side\neffect of resetting the test engine, …\n"],["reset_driver","Bauxite::Context","Bauxite/Context.html#method-i-reset_driver","()","<p>Stops the test engine and starts a new engine with the same provider.\n<p>For example:\n\n<pre class=\"ruby\"><span class=\"ruby-identifier\">ctx</span>.<span class=\"ruby-identifier\">reset_driver</span>\n=<span class=\"ruby-operator\">&gt;</span> <span class=\"ruby-operator\">...</span>\n</pre>\n"],["return_action","Bauxite::Action","Bauxite/Action.html#method-i-return_action","(*vars)","<p>Returns the specified variables to the parent scope (if any).\n<p>If <code>vars</code> is <code>*</code> every variable defined in the …\n"],["ruby","Bauxite::Action","Bauxite/Action.html#method-i-ruby","(file, *vars)","<p>Load the specified ruby file into an isolated variable context and execute\nthe ruby code.\n<p><code>file</code> can be …\n"],["select","Bauxite::Action","Bauxite/Action.html#method-i-select","(selector, text)","<p>Sets the value of the selected <code>HTMLSelect</code> to\n<code>text</code>.\n<p><code>text</code> can be the <code>value</code> or the <code>text</code> of\nthe target <code>HTMLOption</code> …\n"],["selectors","Bauxite::Context","Bauxite/Context.html#method-c-selectors","(include_standard_selectors = true)","<p>Returns an array with the names of every selector available.\n<p>If <code>include_standard_selectors</code> is <code>true</code> (default …\n"],["selenium_find","Bauxite::SelectorModule","Bauxite/SelectorModule.html#method-i-selenium_find","(type, selector)","<p>Searches for elements using standard Selenium selectors.\n<p>Selectors calling this method should forward …\n"],["selenium_ide_html","Bauxite::Parser","Bauxite/Parser.html#method-i-selenium_ide_html","(file)","<p>Load Selenium IDE HTML files.\n"],["set","Bauxite::Action","Bauxite/Action.html#method-i-set","(name, value)","<p>Sets the variable named <code>name</code> to the <code>value</code>\nspecified.\n<p>Both <code>name</code> and <code>value</code> are subject to variable\nexpansion …\n"],["setif","Bauxite::Action","Bauxite/Action.html#method-i-setif","(name, value, action, *args)","<p>Sets the variable named <code>name</code> to the <code>value</code>\nspecified only if the. <code>action</code> execution succeeds. If the\nexecution …\n"],["sid","Bauxite::Selector","Bauxite/Selector.html#method-i-sid","(arg, &block)","<p>Select an element by id suffix.\n<p>This is the default selector. Any selector strings that do not contain …\n"],["smart","Bauxite::Selector","Bauxite/Selector.html#method-i-smart","(arg, &block)","<p>Select an element by applying different Selector strategies.\n<p>This selector tries to find elements by using …\n"],["source","Bauxite::Action","Bauxite/Action.html#method-i-source","(text)","<p>Asserts that the page source matches <code>text</code>.\n<p><code>text</code> can be a regular expression. See #assert for more\ndetails. …\n"],["start","Bauxite::Context","Bauxite/Context.html#method-i-start","(actions = [])","<p>Starts the test engine and executes the actions specified. If no action was\nspecified, returns without …\n"],["stop","Bauxite::Context","Bauxite/Context.html#method-i-stop","()","<p>Stops the test engine.\n<p>Calling this method at the end of the test is mandatory if #start was\ncalled without …\n"],["store","Bauxite::Action","Bauxite/Action.html#method-i-store","(selector, name)","<p>Sets the variable named <code>name</code> to the value of the selected\nelement.\n<p><code>name</code> is subject to variable expansion …\n"],["submit","Bauxite::Action","Bauxite/Action.html#method-i-submit","(selector)","<p>Submits the form that contains the selected element.\n<p>For example:\n\n<pre># assuming &lt;form&gt;&lt;input id=&quot;i&quot;/&gt;&lt;/form&gt; ...</pre>\n"],["test","Bauxite::Action","Bauxite/Action.html#method-i-test","(file, name = nil, *vars)","<p>Load <code>file</code> using the #load action into a new test context.\n<p>If <code>name</code> is specified, it will be used as the …\n"],["tryload","Bauxite::Action","Bauxite/Action.html#method-i-tryload","(file, *vars)","<p>Load the specified file into an isolated variable context and execute the\nactions specified. If the file …\n"],["wait","Bauxite::Action","Bauxite/Action.html#method-i-wait","(seconds)","<p>Wait for the specified number of <code>seconds</code>.\n<p>For example:\n\n<pre class=\"ruby\"><span class=\"ruby-identifier\">wait</span> <span class=\"ruby-value\">5</span>\n<span class=\"ruby-comment\"># =&gt; this would wait for 5 seconds and then ...</span>\n</pre>\n"],["wait","Bauxite::Context","Bauxite/Context.html#method-c-wait","()","<p>Prompts the user to press ENTER before resuming execution.\n<p>For example:\n\n<pre class=\"ruby\"><span class=\"ruby-constant\">Context</span><span class=\"ruby-operator\">::</span><span class=\"ruby-identifier\">wait</span>\n<span class=\"ruby-comment\"># =&gt; echoes &quot;Press ...</span>\n</pre>\n"],["window","Bauxite::Selector","Bauxite/Selector.html#method-i-window","(arg, &block)","<p>Change the selector scope to the given window and finds an element in that\nwindow.\n<p>This is a composite …\n"],["with_driver_timeout","Bauxite::Context","Bauxite/Context.html#method-i-with_driver_timeout","(timeout)","<p>Executes the given block using the specified driver <code>timeout</code>.\n<p>Note that the driver <code>timeout</code> is the time …\n"],["with_timeout","Bauxite::Context","Bauxite/Context.html#method-i-with_timeout","(*error_types)","<p>Executes the given block retrying for at most <code>${__TIMEOUT__}</code>\nseconds. Note that this method does not …\n"],["with_vars","Bauxite::Context","Bauxite/Context.html#method-i-with_vars","(vars)","<p>Temporarily alter the value of context variables.\n<p>This method alters the value of the variables specified …\n"],["write","Bauxite::Action","Bauxite/Action.html#method-i-write","(selector, text)","<p>Sets the value of the selected element to <code>text</code>.\n<p><code>text</code> is subject to variable expansion (see Context#expand …\n"],["README","","README_md.html","","<p>bauxite\n<p>Bauxite is a façade over Selenium intended for non-developers\n<p>The idea behind this project was …\n"]]}}
1
+ var search_data = {"index":{"searchIndex":["bauxite","action","actionmodule","application","context","errors","assertionerror","filenotfounderror","formaterror","loggers","compositelogger","echologger","filelogger","htmllogger","nulllogger","reportlogger","terminallogger","xtermlogger","parser","parsermodule","selector","selectormodule","_block()","_cmd_color()","_fmt()","_fmt()","_restore_cursor()","_restore_cursor()","_save_cursor()","_save_cursor()","_screen_width()","_screen_width()","action_args()","actions()","add_alias()","alias_action()","args()","assert()","asserth()","assertm()","assertv()","assertw()","attr()","break_action()","capture()","click()","csv()","debug()","debug()","debug_prompt()","debug_prompt()","debug_prompt()","default()","doif()","dounless()","driver()","echo()","exec()","exec_action()","exec_action_object()","exec_file()","exec_parsed_action()","execute()","exit_action()","expand()","failif()","finalize()","finalize()","finalize()","finalize()","finalize()","find()","find()","frame()","get_action()","get_value()","js()","load()","load_logger()","log()","log()","log()","log()","log_cmd()","log_cmd()","log_cmd()","log_cmd()","log_cmd()","log_cmd()","loggers()","max_action_name_size()","new()","new()","new()","new()","new()","new()","new()","new()","new()","new()","open()","output_path()","params()","parse()","parse_action_default()","parsers()","print_error()","progress()","progress()","progress()","replace()","reset()","reset_driver()","return_action()","ruby()","select()","selectors()","selenium_find()","selenium_ide_html()","set()","setif()","sid()","smart()","source()","start()","stop()","store()","submit()","test()","tryload()","wait()","wait()","window()","with_driver_timeout()","with_timeout()","with_vars()","write()","readme"],"longSearchIndex":["bauxite","bauxite::action","bauxite::actionmodule","bauxite::application","bauxite::context","bauxite::errors","bauxite::errors::assertionerror","bauxite::errors::filenotfounderror","bauxite::errors::formaterror","bauxite::loggers","bauxite::loggers::compositelogger","bauxite::loggers::echologger","bauxite::loggers::filelogger","bauxite::loggers::htmllogger","bauxite::loggers::nulllogger","bauxite::loggers::reportlogger","bauxite::loggers::terminallogger","bauxite::loggers::xtermlogger","bauxite::parser","bauxite::parsermodule","bauxite::selector","bauxite::selectormodule","bauxite::loggers::terminallogger#_block()","bauxite::loggers::terminallogger#_cmd_color()","bauxite::loggers::terminallogger#_fmt()","bauxite::loggers::xtermlogger#_fmt()","bauxite::loggers::terminallogger#_restore_cursor()","bauxite::loggers::xtermlogger#_restore_cursor()","bauxite::loggers::terminallogger#_save_cursor()","bauxite::loggers::xtermlogger#_save_cursor()","bauxite::loggers::terminallogger#_screen_width()","bauxite::loggers::xtermlogger#_screen_width()","bauxite::context::action_args()","bauxite::context::actions()","bauxite::context#add_alias()","bauxite::action#alias_action()","bauxite::actionmodule#args()","bauxite::action#assert()","bauxite::action#asserth()","bauxite::action#assertm()","bauxite::action#assertv()","bauxite::action#assertw()","bauxite::selector#attr()","bauxite::action#break_action()","bauxite::action#capture()","bauxite::action#click()","bauxite::parser#csv()","bauxite::action#debug()","bauxite::context#debug()","bauxite::loggers::compositelogger#debug_prompt()","bauxite::loggers::nulllogger#debug_prompt()","bauxite::loggers::terminallogger#debug_prompt()","bauxite::parser#default()","bauxite::action#doif()","bauxite::action#dounless()","bauxite::context#driver()","bauxite::action#echo()","bauxite::action#exec()","bauxite::context#exec_action()","bauxite::context#exec_action_object()","bauxite::context#exec_file()","bauxite::context#exec_parsed_action()","bauxite::actionmodule#execute()","bauxite::action#exit_action()","bauxite::context#expand()","bauxite::action#failif()","bauxite::loggers::compositelogger#finalize()","bauxite::loggers::filelogger#finalize()","bauxite::loggers::htmllogger#finalize()","bauxite::loggers::nulllogger#finalize()","bauxite::loggers::reportlogger#finalize()","bauxite::context#find()","bauxite::selectormodule#find()","bauxite::selector#frame()","bauxite::context#get_action()","bauxite::context#get_value()","bauxite::action#js()","bauxite::action#load()","bauxite::context::load_logger()","bauxite::loggers::compositelogger#log()","bauxite::loggers::nulllogger#log()","bauxite::loggers::reportlogger#log()","bauxite::loggers::terminallogger#log()","bauxite::loggers::compositelogger#log_cmd()","bauxite::loggers::echologger#log_cmd()","bauxite::loggers::filelogger#log_cmd()","bauxite::loggers::nulllogger#log_cmd()","bauxite::loggers::reportlogger#log_cmd()","bauxite::loggers::terminallogger#log_cmd()","bauxite::context::loggers()","bauxite::context::max_action_name_size()","bauxite::actionmodule::new()","bauxite::context::new()","bauxite::loggers::compositelogger::new()","bauxite::loggers::filelogger::new()","bauxite::loggers::htmllogger::new()","bauxite::loggers::nulllogger::new()","bauxite::loggers::reportlogger::new()","bauxite::loggers::terminallogger::new()","bauxite::parsermodule::new()","bauxite::selectormodule::new()","bauxite::action#open()","bauxite::context#output_path()","bauxite::action#params()","bauxite::parsermodule#parse()","bauxite::context::parse_action_default()","bauxite::context::parsers()","bauxite::context#print_error()","bauxite::loggers::compositelogger#progress()","bauxite::loggers::nulllogger#progress()","bauxite::loggers::terminallogger#progress()","bauxite::action#replace()","bauxite::action#reset()","bauxite::context#reset_driver()","bauxite::action#return_action()","bauxite::action#ruby()","bauxite::action#select()","bauxite::context::selectors()","bauxite::selectormodule#selenium_find()","bauxite::parser#selenium_ide_html()","bauxite::action#set()","bauxite::action#setif()","bauxite::selector#sid()","bauxite::selector#smart()","bauxite::action#source()","bauxite::context#start()","bauxite::context#stop()","bauxite::action#store()","bauxite::action#submit()","bauxite::action#test()","bauxite::action#tryload()","bauxite::action#wait()","bauxite::context::wait()","bauxite::selector#window()","bauxite::context#with_driver_timeout()","bauxite::context#with_timeout()","bauxite::context#with_vars()","bauxite::action#write()",""],"info":[["Bauxite","","Bauxite.html","","<p>Bauxite Namespace\n"],["Bauxite::Action","","Bauxite/Action.html","","<p>Test action class.\n<p>Test actions are basic test operations that can be combined to create a\ntest case. …\n"],["Bauxite::ActionModule","","Bauxite/ActionModule.html","","<p>Action common state and behavior.\n"],["Bauxite::Application","","Bauxite/Application.html","","<p><code>bauxite</code> command-line program.\n<p>This program executes Bauxite tests and outputs the execution progress and\n…\n"],["Bauxite::Context","","Bauxite/Context.html","","<p>The Main test context. This class includes state and helper functions used\nby clients execute tests and …\n"],["Bauxite::Errors","","Bauxite/Errors.html","","<p>Errors Module\n"],["Bauxite::Errors::AssertionError","","Bauxite/Errors/AssertionError.html","","<p>Error raised when an assertion fails.\n"],["Bauxite::Errors::FileNotFoundError","","Bauxite/Errors/FileNotFoundError.html","","<p>Error raised when an invalid file tried to be loaded.\n"],["Bauxite::Errors::FormatError","","Bauxite/Errors/FormatError.html","","<p>Error raised when trying to process an invalid file format.\n"],["Bauxite::Loggers","","Bauxite/Loggers.html","","<p>Test loggers module\n<p>The default Logger class and all custom loggers must be included in this\nmodule.\n"],["Bauxite::Loggers::CompositeLogger","","Bauxite/Loggers/CompositeLogger.html","","<p>Composite logger.\n<p>This composite logger forwards logging calls to each of its children.\n<p>Composite logger …\n"],["Bauxite::Loggers::EchoLogger","","Bauxite/Loggers/EchoLogger.html","","<p>Echo logger.\n<p>This logger outputs the raw action text for every action executed.\n<p>Note that this logger does …\n"],["Bauxite::Loggers::FileLogger","","Bauxite/Loggers/FileLogger.html","","<p>File logger.\n<p>This logger outputs the raw action text for every action executed to the\nfile specified in …\n"],["Bauxite::Loggers::HtmlLogger","","Bauxite/Loggers/HtmlLogger.html","","<p>Html logger.\n<p>This logger creates an HTML report of the test execution, linking to the\ncaptures taken, …\n"],["Bauxite::Loggers::NullLogger","","Bauxite/Loggers/NullLogger.html","","<p>Test logger class.\n<p>Test loggers handle test output format.\n<p>The default logger does not provide any output …\n"],["Bauxite::Loggers::ReportLogger","","Bauxite/Loggers/ReportLogger.html","","<p>Report logger.\n<p>This base logger class can be inherited to create reporting loggers.\n<p>Descendent classes …\n"],["Bauxite::Loggers::TerminalLogger","","Bauxite/Loggers/TerminalLogger.html","","<p>Terminal logger.\n<p>This logger outputs text using basic text formatting for a terminal window.\n"],["Bauxite::Loggers::XtermLogger","","Bauxite/Loggers/XtermLogger.html","","<p>XTerm logger.\n<p>This logger outputs colorized lines using xterm (VT100/2) escape sequences.\n<p>XTerm logger …\n"],["Bauxite::Parser","","Bauxite/Parser.html","","<p>Parser class.\n<p>Parser represent different strategies for reading input files into lists of\nBauxite actions. …\n"],["Bauxite::ParserModule","","Bauxite/ParserModule.html","","<p>Parser common state and behavior.\n"],["Bauxite::Selector","","Bauxite/Selector.html","","<p>Selector class.\n<p>Selectors represent different strategies for finding elements. Selenium\nprovides a list …\n"],["Bauxite::SelectorModule","","Bauxite/SelectorModule.html","","<p>Selector common state and behavior.\n"],["_block","Bauxite::Loggers::TerminalLogger","Bauxite/Loggers/TerminalLogger.html#method-i-_block","(color, text, size)","<p>Prints <code>text</code> centered inside a square-bracketed block.\n"],["_cmd_color","Bauxite::Loggers::TerminalLogger","Bauxite/Loggers/TerminalLogger.html#method-i-_cmd_color","(cmd)","<p>Get the color of <code>cmd</code>.\n"],["_fmt","Bauxite::Loggers::TerminalLogger","Bauxite/Loggers/TerminalLogger.html#method-i-_fmt","(color, text, size = 0)","<p>Centers <code>text</code> to a fixed size with.\n"],["_fmt","Bauxite::Loggers::XtermLogger","Bauxite/Loggers/XtermLogger.html#method-i-_fmt","(color, text, size = 0)",""],["_restore_cursor","Bauxite::Loggers::TerminalLogger","Bauxite/Loggers/TerminalLogger.html#method-i-_restore_cursor","()","<p>Restores the cursor to the previously saved cursor position.\n"],["_restore_cursor","Bauxite::Loggers::XtermLogger","Bauxite/Loggers/XtermLogger.html#method-i-_restore_cursor","()",""],["_save_cursor","Bauxite::Loggers::TerminalLogger","Bauxite/Loggers/TerminalLogger.html#method-i-_save_cursor","()","<p>Save the current cursor position,\n"],["_save_cursor","Bauxite::Loggers::XtermLogger","Bauxite/Loggers/XtermLogger.html#method-i-_save_cursor","()",""],["_screen_width","Bauxite::Loggers::TerminalLogger","Bauxite/Loggers/TerminalLogger.html#method-i-_screen_width","()","<p>Returns the terminal screen width.\n"],["_screen_width","Bauxite::Loggers::XtermLogger","Bauxite/Loggers/XtermLogger.html#method-i-_screen_width","()",""],["action_args","Bauxite::Context","Bauxite/Context.html#method-c-action_args","(action)","<p>Returns an array with the names of the arguments of the specified action.\n<p>For example:\n\n<pre>Context::action_args ...</pre>\n"],["actions","Bauxite::Context","Bauxite/Context.html#method-c-actions","()","<p>Returns an array with the names of every action available.\n<p>For example:\n\n<pre class=\"ruby\"><span class=\"ruby-constant\">Context</span><span class=\"ruby-operator\">::</span><span class=\"ruby-identifier\">actions</span>\n<span class=\"ruby-comment\"># =&gt; [ &quot;assert&quot;, ...</span>\n</pre>\n"],["add_alias","Bauxite::Context","Bauxite/Context.html#method-i-add_alias","(name, action, args)","<p>Adds an alias named <code>name</code> to the specified <code>action</code>\nwith the arguments specified in <code>args</code>.\n"],["alias_action","Bauxite::Action","Bauxite/Action.html#method-i-alias_action","(name, action, *args)","<p>Aliases <code>name</code> to <code>action</code> with additional arguments.\n<p>In <code>args</code> the variables <code>${1}</code>..<code>${n}</code>\nwill be expanded to …\n"],["args","Bauxite::ActionModule","Bauxite/ActionModule.html#method-i-args","(quote = false)","<p>Returns the action arguments after applying variable expansion.\n<p>See Context#expand.\n<p>If <code>quote</code> is <code>true</code>, the …\n"],["assert","Bauxite::Action","Bauxite/Action.html#method-i-assert","(selector, text)","<p>Asserts that the value of the selected element matches <code>text</code>.\n<p><code>text</code> is a regular expression. <code>text</code> can be …\n"],["asserth","Bauxite::Action","Bauxite/Action.html#method-i-asserth","(*args)","<p>Replays the current GET request and asserts that the HTTP headers returned\nby that request match each …\n"],["assertm","Bauxite::Action","Bauxite/Action.html#method-i-assertm","(text, action = 'accept')","<p>Asserts that a native modal popup is present (e.g. alert, confirm, prompt,\netc.) and that its text matches …\n"],["assertv","Bauxite::Action","Bauxite/Action.html#method-i-assertv","(expected, actual)","<p>Asserts that the <code>actual</code> text matches the <code>expected</code>\ntext.\n<p><code>expected</code> can be a regular expression. See #assert …\n"],["assertw","Bauxite::Action","Bauxite/Action.html#method-i-assertw","(count = 1)","<p>Asserts that the number of currently open windows equals\n<code>count</code>.\n<p>For example:\n\n<pre class=\"ruby\"><span class=\"ruby-identifier\">assertw</span>\n<span class=\"ruby-comment\"># =&gt; this assertion ...</span>\n</pre>\n"],["attr","Bauxite::Selector","Bauxite/Selector.html#method-i-attr","(arg, &block)","<p>Select an element by attribute value.\n<p>The attribute selector syntax is:\n\n<pre>attr=name:value</pre>\n"],["break_action","Bauxite::Action","Bauxite/Action.html#method-i-break_action","()","<p>Prompts the user to press ENTER before resuming execution.\n<p>Note that this method provides an action named …\n"],["capture","Bauxite::Action","Bauxite/Action.html#method-i-capture","(file = nil)","<p>Captures a screenshot of the current browser window and saves it with\nspecified <code>file</code> name. If <code>file</code> is …\n"],["click","Bauxite::Action","Bauxite/Action.html#method-i-click","(selector)","<p>Triggers the <code>click</code> event on the selected element.\n<p>For example:\n\n<pre># assuming &lt;button type=&quot;button&quot; id=&quot;btn&quot;&gt;click ...</pre>\n"],["csv","Bauxite::Parser","Bauxite/Parser.html#method-i-csv","(file)","<p>Load CSV files.\n"],["debug","Bauxite::Action","Bauxite/Action.html#method-i-debug","()","<p>Breaks into the debug console.\n<p>In the debug console you can type action strings and test their result. …\n"],["debug","Bauxite::Context","Bauxite/Context.html#method-i-debug","()","<p>Breaks into the debug console.\n<p>For example:\n\n<pre class=\"ruby\"><span class=\"ruby-identifier\">ctx</span>.<span class=\"ruby-identifier\">debug</span>\n<span class=\"ruby-comment\"># =&gt; this breaks into the debug console</span>\n</pre>\n"],["debug_prompt","Bauxite::Loggers::CompositeLogger","Bauxite/Loggers/CompositeLogger.html#method-i-debug_prompt","()","<p>Returns a colorized debug prompt.\n<p>This implementation returns the debug_prompt of the first logger.\n"],["debug_prompt","Bauxite::Loggers::NullLogger","Bauxite/Loggers/NullLogger.html#method-i-debug_prompt","()","<p>Returns the prompt shown by the debug console (see Context#debug).\n<p>For example:\n\n<pre class=\"ruby\"><span class=\"ruby-identifier\">log</span>.<span class=\"ruby-identifier\">debug_prompt</span>\n<span class=\"ruby-comment\"># =&gt; returns ...</span>\n</pre>\n"],["debug_prompt","Bauxite::Loggers::TerminalLogger","Bauxite/Loggers/TerminalLogger.html#method-i-debug_prompt","()","<p>Returns a colorized debug prompt.\n"],["default","Bauxite::Parser","Bauxite/Parser.html#method-i-default","(file, io = nil)","<p>Load default Bauxite files.\n"],["doif","Bauxite::Action","Bauxite/Action.html#method-i-doif","(expected, actual, action, *args)","<p>Executes <code>action</code> only if <code>expected</code> matches\n<code>actual</code>.\n<p>The conditional check in this action is similar to #assertv …\n"],["dounless","Bauxite::Action","Bauxite/Action.html#method-i-dounless","(expected, actual, action, *args)","<p>Executes <code>action</code> only if <code>expected</code> does not match\n<code>actual</code>.\n<p>The conditional check in this action is similar …\n"],["driver","Bauxite::Context","Bauxite/Context.html#method-i-driver","()","<p>Test engine driver instance (Selenium WebDriver).\n"],["echo","Bauxite::Action","Bauxite/Action.html#method-i-echo","(text)","<p>Prints the value of the specified <code>text</code>.\n<p><code>text</code> is subject to variable expansion (see Context#expand).\n<p>For …\n"],["exec","Bauxite::Action","Bauxite/Action.html#method-i-exec","(*command)","<p>Executes <code>command</code>, optionally storing the results in a\nvariable.\n<p>If the first argument of <code>command</code> is <code>name=...</code> …\n"],["exec_action","Bauxite::Context","Bauxite/Context.html#method-i-exec_action","(text)","<p>Executes the specified action string handling errors, logging and debug\nhistory.\n<p>If <code>log</code> is <code>true</code>, log the …\n"],["exec_action_object","Bauxite::Context","Bauxite/Context.html#method-i-exec_action_object","(action)","<p>Executes the specified action object injecting built-in variables. Note\nthat the result returned by this …\n"],["exec_file","Bauxite::Context","Bauxite/Context.html#method-i-exec_file","(file)","<p>Executes the specified <code>file</code>.\n<p>For example:\n\n<pre class=\"ruby\"><span class=\"ruby-identifier\">ctx</span>.<span class=\"ruby-identifier\">exec_file</span>(<span class=\"ruby-string\">&#39;file&#39;</span>)\n<span class=\"ruby-comment\"># =&gt; executes every action defined in &#39;file&#39;</span>\n</pre>\n"],["exec_parsed_action","Bauxite::Context","Bauxite/Context.html#method-i-exec_parsed_action","(action, args, log = true, text = nil)","<p>Executes the specified action handling errors, logging and debug history.\n<p>If <code>log</code> is <code>true</code>, log the action …\n"],["execute","Bauxite::ActionModule","Bauxite/ActionModule.html#method-i-execute","()","<p>Executes the action evaluating the arguments in the current context.\n<p>Note that #execute calls #args to …\n"],["exit_action","Bauxite::Action","Bauxite/Action.html#method-i-exit_action","()","<p>Aborts the execution of the current context.\n<p>For example:\n\n<pre class=\"ruby\"><span class=\"ruby-identifier\">exit</span>\n<span class=\"ruby-identifier\">assertv</span> <span class=\"ruby-keyword\">true</span> <span class=\"ruby-keyword\">false</span>\n<span class=\"ruby-comment\"># =&gt; the assertv will ...</span>\n</pre>\n"],["expand","Bauxite::Context","Bauxite/Context.html#method-i-expand","(s)","<p>Recursively replaces occurencies of variable expansions in <code>s</code>\nwith the corresponding variable value.\n<p>The …\n"],["failif","Bauxite::Action","Bauxite/Action.html#method-i-failif","(action, *args)","<p>Executes the specified <code>action</code> expected to fail. If\n<code>action</code> succeeds the #failif action fails. If\n<code>action</code> …\n"],["finalize","Bauxite::Loggers::CompositeLogger","Bauxite/Loggers/CompositeLogger.html#method-i-finalize","(ctx)","<p>Completes the log execution.\n"],["finalize","Bauxite::Loggers::FileLogger","Bauxite/Loggers/FileLogger.html#method-i-finalize","(ctx)","<p>Completes the log execution.\n"],["finalize","Bauxite::Loggers::HtmlLogger","Bauxite/Loggers/HtmlLogger.html#method-i-finalize","(ctx)","<p>Completes the log execution.\n"],["finalize","Bauxite::Loggers::NullLogger","Bauxite/Loggers/NullLogger.html#method-i-finalize","(ctx)","<p>Completes the log execution.\n"],["finalize","Bauxite::Loggers::ReportLogger","Bauxite/Loggers/ReportLogger.html#method-i-finalize","(ctx)","<p>Completes the log execution.\n"],["find","Bauxite::Context","Bauxite/Context.html#method-i-find","(selector)","<p>Finds an element by <code>selector</code>.\n<p>The element found is yielded to the given <code>block</code> (if any) and\nreturned.\n<p>Note …\n"],["find","Bauxite::SelectorModule","Bauxite/SelectorModule.html#method-i-find","(selector, &block)","<p>Searches for elements using the specified selector string.\n<p>For more information see Context#find.\n<p>Selectors …\n"],["frame","Bauxite::Selector","Bauxite/Selector.html#method-i-frame","(arg, &block)","<p>Change the selector scope to the given frame and finds an element in that\nframe.\n<p>This is a composite selector. …\n"],["get_action","Bauxite::Context","Bauxite/Context.html#method-i-get_action","(action, args, text = nil)","<p>Returns an executable Action object constructed from the specified\narguments resolving action aliases. …\n"],["get_value","Bauxite::Context","Bauxite/Context.html#method-i-get_value","(element)","<p>Returns the value of the specified <code>element</code>.\n<p>This method takes into account the type of element and selectively …\n"],["js","Bauxite::Action","Bauxite/Action.html#method-i-js","(script, name = nil)","<p>Executes the specified Javascript <code>script</code>, optionally storing\nthe results the variable named <code>name</code>.\n<p>Note …\n"],["load","Bauxite::Action","Bauxite/Action.html#method-i-load","(file, *vars)","<p>Load the specified file into an isolated variable context and execute the\nactions specified. If the file …\n"],["load_logger","Bauxite::Context","Bauxite/Context.html#method-c-load_logger","(loggers, options)","<p>Constructs a Logger instance using <code>name</code> as a hint for the\nlogger type.\n"],["log","Bauxite::Loggers::CompositeLogger","Bauxite/Loggers/CompositeLogger.html#method-i-log","(s, type = :info)","<p>Prints the specified string.\n<p>See Bauxite::Loggers::NullLogger#print\n"],["log","Bauxite::Loggers::NullLogger","Bauxite/Loggers/NullLogger.html#method-i-log","(s, type = :info)","<p>Logs the specified string.\n<p><code>type</code>, if specified, should be one of <code>:error</code>,\n<code>:warning</code>, <code>:info</code> (default), <code>:debug</code> …\n"],["log","Bauxite::Loggers::ReportLogger","Bauxite/Loggers/ReportLogger.html#method-i-log","(s, type = :info)","<p>Logs the specified string.\n<p><code>type</code>, if specified, should be one of <code>:error</code>,\n<code>:warning</code>, <code>:info</code> (default), <code>:debug</code> …\n"],["log","Bauxite::Loggers::TerminalLogger","Bauxite/Loggers/TerminalLogger.html#method-i-log","(s, type = :info)","<p>Prints the specified string.\n<p>See Bauxite::Loggers::NullLogger#print\n"],["log_cmd","Bauxite::Loggers::CompositeLogger","Bauxite/Loggers/CompositeLogger.html#method-i-log_cmd","(action, &block)","<p>Pretty prints action information and status.\n<p>This implementation only yileds in the first logger.\n<p>Additional …\n"],["log_cmd","Bauxite::Loggers::EchoLogger","Bauxite/Loggers/EchoLogger.html#method-i-log_cmd","(action)","<p>Echoes the raw action text.\n"],["log_cmd","Bauxite::Loggers::FileLogger","Bauxite/Loggers/FileLogger.html#method-i-log_cmd","(action)","<p>Echoes the raw action text.\n"],["log_cmd","Bauxite::Loggers::NullLogger","Bauxite/Loggers/NullLogger.html#method-i-log_cmd","(action)","<p>Executes the given block in a logging context.\n<p>This default implementation does not provide any logging …\n"],["log_cmd","Bauxite::Loggers::ReportLogger","Bauxite/Loggers/ReportLogger.html#method-i-log_cmd","(action)","<p>Echoes the raw action text.\n"],["log_cmd","Bauxite::Loggers::TerminalLogger","Bauxite/Loggers/TerminalLogger.html#method-i-log_cmd","(action)","<p>Pretty prints action information and status.\n"],["loggers","Bauxite::Context","Bauxite/Context.html#method-c-loggers","()","<p>Returns an array with the names of every logger available.\n<p>For example:\n\n<pre class=\"ruby\"><span class=\"ruby-constant\">Context</span><span class=\"ruby-operator\">::</span><span class=\"ruby-identifier\">loggers</span>\n<span class=\"ruby-comment\"># =&gt; [ &quot;null&quot;, ...</span>\n</pre>\n"],["max_action_name_size","Bauxite::Context","Bauxite/Context.html#method-c-max_action_name_size","()","<p>Returns the maximum size in characters of an action name.\n<p>This method is useful to pretty print lists …\n"],["new","Bauxite::ActionModule","Bauxite/ActionModule.html#method-c-new","(ctx, cmd, args, text, file, line)","<p>Constructs a new test action instance.\n"],["new","Bauxite::Context","Bauxite/Context.html#method-c-new","(options)","<p>Constructs a new test context instance.\n<p><code>options</code> is a hash with the following values:\n<p>:driver &mdash; selenium driver …\n"],["new","Bauxite::Loggers::CompositeLogger","Bauxite/Loggers/CompositeLogger.html#method-c-new","(options, loggers = nil)","<p>Constructs a new composite logger instance.\n"],["new","Bauxite::Loggers::FileLogger","Bauxite/Loggers/FileLogger.html#method-c-new","(options)","<p>Constructs a new echo logger instance.\n"],["new","Bauxite::Loggers::HtmlLogger","Bauxite/Loggers/HtmlLogger.html#method-c-new","(options)","<p>Constructs a new null logger instance.\n"],["new","Bauxite::Loggers::NullLogger","Bauxite/Loggers/NullLogger.html#method-c-new","(options)","<p>Constructs a new null logger instance.\n"],["new","Bauxite::Loggers::ReportLogger","Bauxite/Loggers/ReportLogger.html#method-c-new","(options)","<p>Constructs a new report logger instance.\n"],["new","Bauxite::Loggers::TerminalLogger","Bauxite/Loggers/TerminalLogger.html#method-c-new","(options)","<p>Constructs a new Terminal logger instance.\n"],["new","Bauxite::ParserModule","Bauxite/ParserModule.html#method-c-new","(ctx)","<p>Constructs a new test parser instance.\n"],["new","Bauxite::SelectorModule","Bauxite/SelectorModule.html#method-c-new","(ctx, default_selector)","<p>Constructs a new test selector instance.\n"],["open","Bauxite::Action","Bauxite/Action.html#method-i-open","(url)","<p>Opens the specified <code>url</code> in the browser.\n<p>For example:\n\n<pre class=\"ruby\"><span class=\"ruby-identifier\">open</span> <span class=\"ruby-string\">&quot;http://www.ruby-lang.org&quot;</span>\n<span class=\"ruby-comment\"># =&gt; this would open ...</span>\n</pre>\n"],["output_path","Bauxite::Context","Bauxite/Context.html#method-i-output_path","(path)","<p>Returns the output path for <code>path</code> accounting for the \n<code>__OUTPUT__</code> variable.\n<p>For example:\n\n<pre># assuming --output ...</pre>\n"],["params","Bauxite::Action","Bauxite/Action.html#method-i-params","(*vars)","<p>Asserts that the variables named <code>vars</code> are defined and not\nempty.\n<p>For example:\n\n<pre>params host db_name username ...</pre>\n"],["parse","Bauxite::ParserModule","Bauxite/ParserModule.html#method-i-parse","(file)","<p>Parse <code>file</code> and yield the resulting actions.\n"],["parse_action_default","Bauxite::Context","Bauxite/Context.html#method-c-parse_action_default","(text, file = '<unknown>', line = 0)","<p>Default action parsing strategy.\n"],["parsers","Bauxite::Context","Bauxite/Context.html#method-c-parsers","()","<p>Returns an array with the names of every parser available.\n<p>For example:\n\n<pre class=\"ruby\"><span class=\"ruby-constant\">Context</span><span class=\"ruby-operator\">::</span><span class=\"ruby-identifier\">parsers</span>\n<span class=\"ruby-comment\"># =&gt; [ &quot;default&quot;, ...</span>\n</pre>\n"],["print_error","Bauxite::Context","Bauxite/Context.html#method-i-print_error","(e, capture = true)","<p>Prints the specified <code>error</code> using the Logger configured and \nhandling the verbose option.\n<p>For example: …\n"],["progress","Bauxite::Loggers::CompositeLogger","Bauxite/Loggers/CompositeLogger.html#method-i-progress","(value)","<p>Updates action progress.\n"],["progress","Bauxite::Loggers::NullLogger","Bauxite/Loggers/NullLogger.html#method-i-progress","(value)","<p>Updates the progress of the current action.\n"],["progress","Bauxite::Loggers::TerminalLogger","Bauxite/Loggers/TerminalLogger.html#method-i-progress","(value)","<p>Updates action progress.\n"],["replace","Bauxite::Action","Bauxite/Action.html#method-i-replace","(text, pattern, replacement, name)","<p>Replaces the occurrences of <code>pattern</code> in <code>text</code> with\n<code>replacement</code> and assigns the result to the variable named …\n"],["reset","Bauxite::Action","Bauxite/Action.html#method-i-reset","()","<p>Resets the test engine by closing and reopening the browser. As a side\neffect of resetting the test engine, …\n"],["reset_driver","Bauxite::Context","Bauxite/Context.html#method-i-reset_driver","()","<p>Stops the test engine and starts a new engine with the same provider.\n<p>For example:\n\n<pre class=\"ruby\"><span class=\"ruby-identifier\">ctx</span>.<span class=\"ruby-identifier\">reset_driver</span>\n=<span class=\"ruby-operator\">&gt;</span> <span class=\"ruby-operator\">...</span>\n</pre>\n"],["return_action","Bauxite::Action","Bauxite/Action.html#method-i-return_action","(*vars)","<p>Returns the specified variables to the parent scope (if any).\n<p>If <code>vars</code> is <code>*</code> every variable defined in the …\n"],["ruby","Bauxite::Action","Bauxite/Action.html#method-i-ruby","(file, *vars)","<p>Load the specified ruby file into an isolated variable context and execute\nthe ruby code.\n<p><code>file</code> can be …\n"],["select","Bauxite::Action","Bauxite/Action.html#method-i-select","(selector, text)","<p>Sets the value of the selected <code>HTMLSelect</code> to\n<code>text</code>.\n<p><code>text</code> can be the <code>value</code> or the <code>text</code> of\nthe target <code>HTMLOption</code> …\n"],["selectors","Bauxite::Context","Bauxite/Context.html#method-c-selectors","(include_standard_selectors = true)","<p>Returns an array with the names of every selector available.\n<p>If <code>include_standard_selectors</code> is <code>true</code> (default …\n"],["selenium_find","Bauxite::SelectorModule","Bauxite/SelectorModule.html#method-i-selenium_find","(type, selector)","<p>Searches for elements using standard Selenium selectors.\n<p>Selectors calling this method should forward …\n"],["selenium_ide_html","Bauxite::Parser","Bauxite/Parser.html#method-i-selenium_ide_html","(file)","<p>Load Selenium IDE HTML files.\n"],["set","Bauxite::Action","Bauxite/Action.html#method-i-set","(name, value)","<p>Sets the variable named <code>name</code> to the <code>value</code>\nspecified.\n<p>Both <code>name</code> and <code>value</code> are subject to variable\nexpansion …\n"],["setif","Bauxite::Action","Bauxite/Action.html#method-i-setif","(name, value, action, *args)","<p>Sets the variable named <code>name</code> to the <code>value</code>\nspecified only if the. <code>action</code> execution succeeds. If the\nexecution …\n"],["sid","Bauxite::Selector","Bauxite/Selector.html#method-i-sid","(arg, &block)","<p>Select an element by id suffix.\n<p>This is the default selector. Any selector strings that do not contain …\n"],["smart","Bauxite::Selector","Bauxite/Selector.html#method-i-smart","(arg, &block)","<p>Select an element by applying different Selector strategies.\n<p>This selector tries to find elements by using …\n"],["source","Bauxite::Action","Bauxite/Action.html#method-i-source","(text)","<p>Asserts that the page source matches <code>text</code>.\n<p><code>text</code> can be a regular expression. See #assert for more\ndetails. …\n"],["start","Bauxite::Context","Bauxite/Context.html#method-i-start","(actions = [])","<p>Starts the test engine and executes the actions specified. If no action was\nspecified, returns without …\n"],["stop","Bauxite::Context","Bauxite/Context.html#method-i-stop","()","<p>Stops the test engine.\n<p>Calling this method at the end of the test is mandatory if #start was\ncalled without …\n"],["store","Bauxite::Action","Bauxite/Action.html#method-i-store","(selector, name)","<p>Sets the variable named <code>name</code> to the value of the selected\nelement.\n<p><code>name</code> is subject to variable expansion …\n"],["submit","Bauxite::Action","Bauxite/Action.html#method-i-submit","(selector)","<p>Submits the form that contains the selected element.\n<p>For example:\n\n<pre># assuming &lt;form&gt;&lt;input id=&quot;i&quot;/&gt;&lt;/form&gt; ...</pre>\n"],["test","Bauxite::Action","Bauxite/Action.html#method-i-test","(file, name = nil, *vars)","<p>Load <code>file</code> using the #load action into a new test context.\n<p>If <code>name</code> is specified, it will be used as the …\n"],["tryload","Bauxite::Action","Bauxite/Action.html#method-i-tryload","(file, *vars)","<p>Load the specified file into an isolated variable context and execute the\nactions specified. If the file …\n"],["wait","Bauxite::Action","Bauxite/Action.html#method-i-wait","(seconds)","<p>Wait for the specified number of <code>seconds</code>.\n<p>For example:\n\n<pre class=\"ruby\"><span class=\"ruby-identifier\">wait</span> <span class=\"ruby-value\">5</span>\n<span class=\"ruby-comment\"># =&gt; this would wait for 5 seconds and then ...</span>\n</pre>\n"],["wait","Bauxite::Context","Bauxite/Context.html#method-c-wait","()","<p>Prompts the user to press ENTER before resuming execution.\n<p>For example:\n\n<pre class=\"ruby\"><span class=\"ruby-constant\">Context</span><span class=\"ruby-operator\">::</span><span class=\"ruby-identifier\">wait</span>\n<span class=\"ruby-comment\"># =&gt; echoes &quot;Press ...</span>\n</pre>\n"],["window","Bauxite::Selector","Bauxite/Selector.html#method-i-window","(arg, &block)","<p>Change the selector scope to the given window and finds an element in that\nwindow.\n<p>This is a composite …\n"],["with_driver_timeout","Bauxite::Context","Bauxite/Context.html#method-i-with_driver_timeout","(timeout)","<p>Executes the given block using the specified driver <code>timeout</code>.\n<p>Note that the driver <code>timeout</code> is the time …\n"],["with_timeout","Bauxite::Context","Bauxite/Context.html#method-i-with_timeout","(*error_types)","<p>Executes the given block retrying for at most <code>${__TIMEOUT__}</code>\nseconds. Note that this method does not …\n"],["with_vars","Bauxite::Context","Bauxite/Context.html#method-i-with_vars","(vars)","<p>Temporarily alter the value of context variables.\n<p>This method alters the value of the variables specified …\n"],["write","Bauxite::Action","Bauxite/Action.html#method-i-write","(selector, text)","<p>Sets the value of the selected element to <code>text</code>.\n<p><code>text</code> is subject to variable expansion (see Context#expand …\n"],["README","","README_md.html","","<p>bauxite\n<p>Bauxite is a façade over Selenium intended for non-developers\n<p>The idea behind this project was …\n"]]}}
@@ -175,54 +175,54 @@
175
175
  <span class="container">Bauxite::Context</span>
176
176
 
177
177
  <li class="method">
178
- <a href="Bauxite/SelectorModule.html#method-c-new">::new</a>
178
+ <a href="Bauxite/Loggers/CompositeLogger.html#method-c-new">::new</a>
179
179
  &mdash;
180
- <span class="container">Bauxite::SelectorModule</span>
180
+ <span class="container">Bauxite::Loggers::CompositeLogger</span>
181
181
 
182
182
  <li class="method">
183
- <a href="Bauxite/ActionModule.html#method-c-new">::new</a>
183
+ <a href="Bauxite/Context.html#method-c-new">::new</a>
184
184
  &mdash;
185
- <span class="container">Bauxite::ActionModule</span>
185
+ <span class="container">Bauxite::Context</span>
186
186
 
187
187
  <li class="method">
188
- <a href="Bauxite/ParserModule.html#method-c-new">::new</a>
188
+ <a href="Bauxite/Loggers/NullLogger.html#method-c-new">::new</a>
189
189
  &mdash;
190
- <span class="container">Bauxite::ParserModule</span>
190
+ <span class="container">Bauxite::Loggers::NullLogger</span>
191
191
 
192
192
  <li class="method">
193
- <a href="Bauxite/Loggers/ReportLogger.html#method-c-new">::new</a>
193
+ <a href="Bauxite/Loggers/TerminalLogger.html#method-c-new">::new</a>
194
194
  &mdash;
195
- <span class="container">Bauxite::Loggers::ReportLogger</span>
195
+ <span class="container">Bauxite::Loggers::TerminalLogger</span>
196
196
 
197
197
  <li class="method">
198
- <a href="Bauxite/Loggers/HtmlLogger.html#method-c-new">::new</a>
198
+ <a href="Bauxite/ActionModule.html#method-c-new">::new</a>
199
199
  &mdash;
200
- <span class="container">Bauxite::Loggers::HtmlLogger</span>
200
+ <span class="container">Bauxite::ActionModule</span>
201
201
 
202
202
  <li class="method">
203
- <a href="Bauxite/Loggers/NullLogger.html#method-c-new">::new</a>
203
+ <a href="Bauxite/Loggers/FileLogger.html#method-c-new">::new</a>
204
204
  &mdash;
205
- <span class="container">Bauxite::Loggers::NullLogger</span>
205
+ <span class="container">Bauxite::Loggers::FileLogger</span>
206
206
 
207
207
  <li class="method">
208
- <a href="Bauxite/Loggers/TerminalLogger.html#method-c-new">::new</a>
208
+ <a href="Bauxite/Loggers/HtmlLogger.html#method-c-new">::new</a>
209
209
  &mdash;
210
- <span class="container">Bauxite::Loggers::TerminalLogger</span>
210
+ <span class="container">Bauxite::Loggers::HtmlLogger</span>
211
211
 
212
212
  <li class="method">
213
- <a href="Bauxite/Loggers/CompositeLogger.html#method-c-new">::new</a>
213
+ <a href="Bauxite/SelectorModule.html#method-c-new">::new</a>
214
214
  &mdash;
215
- <span class="container">Bauxite::Loggers::CompositeLogger</span>
215
+ <span class="container">Bauxite::SelectorModule</span>
216
216
 
217
217
  <li class="method">
218
- <a href="Bauxite/Loggers/FileLogger.html#method-c-new">::new</a>
218
+ <a href="Bauxite/ParserModule.html#method-c-new">::new</a>
219
219
  &mdash;
220
- <span class="container">Bauxite::Loggers::FileLogger</span>
220
+ <span class="container">Bauxite::ParserModule</span>
221
221
 
222
222
  <li class="method">
223
- <a href="Bauxite/Context.html#method-c-new">::new</a>
223
+ <a href="Bauxite/Loggers/ReportLogger.html#method-c-new">::new</a>
224
224
  &mdash;
225
- <span class="container">Bauxite::Context</span>
225
+ <span class="container">Bauxite::Loggers::ReportLogger</span>
226
226
 
227
227
  <li class="method">
228
228
  <a href="Bauxite/Context.html#method-c-parse_action_default">::parse_action_default</a>
@@ -274,26 +274,26 @@
274
274
  &mdash;
275
275
  <span class="container">Bauxite::Loggers::XtermLogger</span>
276
276
 
277
- <li class="method">
278
- <a href="Bauxite/Loggers/XtermLogger.html#method-i-_save_cursor">#_save_cursor</a>
279
- &mdash;
280
- <span class="container">Bauxite::Loggers::XtermLogger</span>
281
-
282
277
  <li class="method">
283
278
  <a href="Bauxite/Loggers/TerminalLogger.html#method-i-_save_cursor">#_save_cursor</a>
284
279
  &mdash;
285
280
  <span class="container">Bauxite::Loggers::TerminalLogger</span>
286
281
 
287
282
  <li class="method">
288
- <a href="Bauxite/Loggers/TerminalLogger.html#method-i-_screen_width">#_screen_width</a>
283
+ <a href="Bauxite/Loggers/XtermLogger.html#method-i-_save_cursor">#_save_cursor</a>
289
284
  &mdash;
290
- <span class="container">Bauxite::Loggers::TerminalLogger</span>
285
+ <span class="container">Bauxite::Loggers::XtermLogger</span>
291
286
 
292
287
  <li class="method">
293
288
  <a href="Bauxite/Loggers/XtermLogger.html#method-i-_screen_width">#_screen_width</a>
294
289
  &mdash;
295
290
  <span class="container">Bauxite::Loggers::XtermLogger</span>
296
291
 
292
+ <li class="method">
293
+ <a href="Bauxite/Loggers/TerminalLogger.html#method-i-_screen_width">#_screen_width</a>
294
+ &mdash;
295
+ <span class="container">Bauxite::Loggers::TerminalLogger</span>
296
+
297
297
  <li class="method">
298
298
  <a href="Bauxite/Context.html#method-i-add_alias">#add_alias</a>
299
299
  &mdash;
@@ -360,14 +360,14 @@
360
360
  <span class="container">Bauxite::Parser</span>
361
361
 
362
362
  <li class="method">
363
- <a href="Bauxite/Action.html#method-i-debug">#debug</a>
363
+ <a href="Bauxite/Context.html#method-i-debug">#debug</a>
364
364
  &mdash;
365
- <span class="container">Bauxite::Action</span>
365
+ <span class="container">Bauxite::Context</span>
366
366
 
367
367
  <li class="method">
368
- <a href="Bauxite/Context.html#method-i-debug">#debug</a>
368
+ <a href="Bauxite/Action.html#method-i-debug">#debug</a>
369
369
  &mdash;
370
- <span class="container">Bauxite::Context</span>
370
+ <span class="container">Bauxite::Action</span>
371
371
 
372
372
  <li class="method">
373
373
  <a href="Bauxite/Loggers/TerminalLogger.html#method-i-debug_prompt">#debug_prompt</a>
@@ -394,6 +394,11 @@
394
394
  &mdash;
395
395
  <span class="container">Bauxite::Action</span>
396
396
 
397
+ <li class="method">
398
+ <a href="Bauxite/Action.html#method-i-dounless">#dounless</a>
399
+ &mdash;
400
+ <span class="container">Bauxite::Action</span>
401
+
397
402
  <li class="method">
398
403
  <a href="Bauxite/Context.html#method-i-driver">#driver</a>
399
404
  &mdash;
@@ -450,19 +455,19 @@
450
455
  <span class="container">Bauxite::Action</span>
451
456
 
452
457
  <li class="method">
453
- <a href="Bauxite/Loggers/ReportLogger.html#method-i-finalize">#finalize</a>
458
+ <a href="Bauxite/Loggers/FileLogger.html#method-i-finalize">#finalize</a>
454
459
  &mdash;
455
- <span class="container">Bauxite::Loggers::ReportLogger</span>
460
+ <span class="container">Bauxite::Loggers::FileLogger</span>
456
461
 
457
462
  <li class="method">
458
- <a href="Bauxite/Loggers/FileLogger.html#method-i-finalize">#finalize</a>
463
+ <a href="Bauxite/Loggers/ReportLogger.html#method-i-finalize">#finalize</a>
459
464
  &mdash;
460
- <span class="container">Bauxite::Loggers::FileLogger</span>
465
+ <span class="container">Bauxite::Loggers::ReportLogger</span>
461
466
 
462
467
  <li class="method">
463
- <a href="Bauxite/Loggers/HtmlLogger.html#method-i-finalize">#finalize</a>
468
+ <a href="Bauxite/Loggers/CompositeLogger.html#method-i-finalize">#finalize</a>
464
469
  &mdash;
465
- <span class="container">Bauxite::Loggers::HtmlLogger</span>
470
+ <span class="container">Bauxite::Loggers::CompositeLogger</span>
466
471
 
467
472
  <li class="method">
468
473
  <a href="Bauxite/Loggers/NullLogger.html#method-i-finalize">#finalize</a>
@@ -470,9 +475,9 @@
470
475
  <span class="container">Bauxite::Loggers::NullLogger</span>
471
476
 
472
477
  <li class="method">
473
- <a href="Bauxite/Loggers/CompositeLogger.html#method-i-finalize">#finalize</a>
478
+ <a href="Bauxite/Loggers/HtmlLogger.html#method-i-finalize">#finalize</a>
474
479
  &mdash;
475
- <span class="container">Bauxite::Loggers::CompositeLogger</span>
480
+ <span class="container">Bauxite::Loggers::HtmlLogger</span>
476
481
 
477
482
  <li class="method">
478
483
  <a href="Bauxite/SelectorModule.html#method-i-find">#find</a>
@@ -509,11 +514,6 @@
509
514
  &mdash;
510
515
  <span class="container">Bauxite::Action</span>
511
516
 
512
- <li class="method">
513
- <a href="Bauxite/Loggers/ReportLogger.html#method-i-log">#log</a>
514
- &mdash;
515
- <span class="container">Bauxite::Loggers::ReportLogger</span>
516
-
517
517
  <li class="method">
518
518
  <a href="Bauxite/Loggers/NullLogger.html#method-i-log">#log</a>
519
519
  &mdash;
@@ -530,7 +530,7 @@
530
530
  <span class="container">Bauxite::Loggers::TerminalLogger</span>
531
531
 
532
532
  <li class="method">
533
- <a href="Bauxite/Loggers/ReportLogger.html#method-i-log_cmd">#log_cmd</a>
533
+ <a href="Bauxite/Loggers/ReportLogger.html#method-i-log">#log</a>
534
534
  &mdash;
535
535
  <span class="container">Bauxite::Loggers::ReportLogger</span>
536
536
 
@@ -540,25 +540,30 @@
540
540
  <span class="container">Bauxite::Loggers::TerminalLogger</span>
541
541
 
542
542
  <li class="method">
543
- <a href="Bauxite/Loggers/NullLogger.html#method-i-log_cmd">#log_cmd</a>
543
+ <a href="Bauxite/Loggers/CompositeLogger.html#method-i-log_cmd">#log_cmd</a>
544
544
  &mdash;
545
- <span class="container">Bauxite::Loggers::NullLogger</span>
545
+ <span class="container">Bauxite::Loggers::CompositeLogger</span>
546
546
 
547
547
  <li class="method">
548
- <a href="Bauxite/Loggers/EchoLogger.html#method-i-log_cmd">#log_cmd</a>
548
+ <a href="Bauxite/Loggers/NullLogger.html#method-i-log_cmd">#log_cmd</a>
549
549
  &mdash;
550
- <span class="container">Bauxite::Loggers::EchoLogger</span>
550
+ <span class="container">Bauxite::Loggers::NullLogger</span>
551
551
 
552
552
  <li class="method">
553
- <a href="Bauxite/Loggers/CompositeLogger.html#method-i-log_cmd">#log_cmd</a>
553
+ <a href="Bauxite/Loggers/ReportLogger.html#method-i-log_cmd">#log_cmd</a>
554
554
  &mdash;
555
- <span class="container">Bauxite::Loggers::CompositeLogger</span>
555
+ <span class="container">Bauxite::Loggers::ReportLogger</span>
556
556
 
557
557
  <li class="method">
558
558
  <a href="Bauxite/Loggers/FileLogger.html#method-i-log_cmd">#log_cmd</a>
559
559
  &mdash;
560
560
  <span class="container">Bauxite::Loggers::FileLogger</span>
561
561
 
562
+ <li class="method">
563
+ <a href="Bauxite/Loggers/EchoLogger.html#method-i-log_cmd">#log_cmd</a>
564
+ &mdash;
565
+ <span class="container">Bauxite::Loggers::EchoLogger</span>
566
+
562
567
  <li class="method">
563
568
  <a href="Bauxite/Action.html#method-i-open">#open</a>
564
569
  &mdash;
@@ -584,11 +589,6 @@
584
589
  &mdash;
585
590
  <span class="container">Bauxite::Context</span>
586
591
 
587
- <li class="method">
588
- <a href="Bauxite/Loggers/CompositeLogger.html#method-i-progress">#progress</a>
589
- &mdash;
590
- <span class="container">Bauxite::Loggers::CompositeLogger</span>
591
-
592
592
  <li class="method">
593
593
  <a href="Bauxite/Loggers/NullLogger.html#method-i-progress">#progress</a>
594
594
  &mdash;
@@ -599,6 +599,11 @@
599
599
  &mdash;
600
600
  <span class="container">Bauxite::Loggers::TerminalLogger</span>
601
601
 
602
+ <li class="method">
603
+ <a href="Bauxite/Loggers/CompositeLogger.html#method-i-progress">#progress</a>
604
+ &mdash;
605
+ <span class="container">Bauxite::Loggers::CompositeLogger</span>
606
+
602
607
  <li class="method">
603
608
  <a href="Bauxite/Action.html#method-i-replace">#replace</a>
604
609
  &mdash;
@@ -0,0 +1,43 @@
1
+ #--
2
+ # Copyright (c) 2014 Patricio Zavolinsky
3
+ #
4
+ # Permission is hereby granted, free of charge, to any person obtaining a copy
5
+ # of this software and associated documentation files (the "Software"), to deal
6
+ # in the Software without restriction, including without limitation the rights
7
+ # to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8
+ # copies of the Software, and to permit persons to whom the Software is
9
+ # furnished to do so, subject to the following conditions:
10
+ #
11
+ # The above copyright notice and this permission notice shall be included in
12
+ # all copies or substantial portions of the Software.
13
+ #
14
+ # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15
+ # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16
+ # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17
+ # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18
+ # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19
+ # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
20
+ # SOFTWARE.
21
+ #++
22
+
23
+ class Bauxite::Action
24
+ # Executes +action+ only if +expected+ does not match +actual+.
25
+ #
26
+ # The conditional check in this action is similar to #assertv.
27
+ #
28
+ # For example:
29
+ # set first john
30
+ # set last doe
31
+ # dounless james ${first} assertv doe ${last}
32
+ # # => this assertion would pass.
33
+ #
34
+ # dounless false ${load_captcha} load captcha.bxt
35
+ # # => this would only load captcha.bxt if the load_captcha
36
+ # # variable is not 'false'
37
+ #
38
+ # :category: Action Methods
39
+ def dounless(expected, actual, action, *args)
40
+ return false if actual =~ _pattern(expected)
41
+ @ctx.exec_action_object(@ctx.get_action(action, args))
42
+ end
43
+ end
data/lib/bauxite.rb CHANGED
@@ -22,7 +22,7 @@
22
22
 
23
23
  #--
24
24
  module Bauxite
25
- VERSION = "0.6.13"
25
+ VERSION = "0.6.14"
26
26
  end
27
27
  #++
28
28
 
data/test/dounless.bxt ADDED
@@ -0,0 +1,6 @@
1
+ set first john
2
+ set last doe
3
+ dounless james ${first} assertv doe ${last}
4
+ dounless james ${first} set is_john true
5
+ assertv true ${is_john}
6
+ dounless doe ${last} load smith_specific_text.bxt
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bauxite
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.13
4
+ version: 0.6.14
5
5
  platform: ruby
6
6
  authors:
7
7
  - Patricio Zavolinsky
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-05-29 00:00:00.000000000 Z
11
+ date: 2014-06-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: selenium-webdriver
@@ -129,6 +129,7 @@ files:
129
129
  - lib/bauxite/actions/click.rb
130
130
  - lib/bauxite/actions/debug.rb
131
131
  - lib/bauxite/actions/doif.rb
132
+ - lib/bauxite/actions/dounless.rb
132
133
  - lib/bauxite/actions/echo.rb
133
134
  - lib/bauxite/actions/exec.rb
134
135
  - lib/bauxite/actions/exit.rb
@@ -195,6 +196,7 @@ files:
195
196
  - test/delay.bxt
196
197
  - test/delay/page.html
197
198
  - test/doif.bxt
199
+ - test/dounless.bxt
198
200
  - test/exec.bxt
199
201
  - test/exit.bxt
200
202
  - test/exit/test.bxt