3 new revisions:

Revision: e330cdab3784
Author:   Pekka Klärck
Date:     Wed May 18 06:46:45 2011
Log:      smallish code and doc cleanup
http://code.google.com/p/robotframework/source/detail?r=e330cdab3784

Revision: 9363f70a0553
Author:   Pekka Klärck
Date:     Thu May 19 10:49:30 2011
Log:      Automated merge with https://robotframework.googlecode.com/hg/
http://code.google.com/p/robotframework/source/detail?r=9363f70a0553

Revision: 35ff1e79242b
Author:   Pekka Klärck
Date:     Thu May 19 12:38:24 2011
Log:      format
http://code.google.com/p/robotframework/source/detail?r=35ff1e79242b

==============================================================================
Revision: e330cdab3784
Author:   Pekka Klärck
Date:     Wed May 18 06:46:45 2011
Log:      smallish code and doc cleanup
http://code.google.com/p/robotframework/source/detail?r=e330cdab3784

Modified:
 /src/robot/libraries/BuiltIn.py

=======================================
--- /src/robot/libraries/BuiltIn.py     Wed May 18 04:07:16 2011
+++ /src/robot/libraries/BuiltIn.py     Wed May 18 06:46:45 2011
@@ -210,7 +210,7 @@
         |      | Run Keyword If | '${var}' == 'EXIT' | Exit For Loop |
         |      | Do Something   | ${var} |

-        New in Robot Framework 2.5.2
+        New in Robot Framework 2.5.2.
         """
         # Error message is shown only if there is no enclosing for loop
         error = AssertionError('Exit for loop without enclosing for loop.')
@@ -223,7 +223,7 @@
See `Should Be True` for details about how `condition` is evaluated and
         how `msg` can be used to override the default error message.
         """
-        if msg is None:
+        if not msg:
             msg = "'%s' should not be true" % condition
         asserts.fail_if(self._is_true(condition), msg)

@@ -245,7 +245,7 @@
| Should Be True | ${number} | # Passes if ${number} is not zero | | Should Be True | ${list} | # Passes if ${list} is not empty |
         """
-        if msg is None:
+        if not msg:
             msg = "'%s' should be true" % condition
         asserts.fail_unless(self._is_true(condition), msg)

@@ -381,7 +381,7 @@
         error message with `msg` and `values`.
         """
         self._log_types(first, second)
- first, second = [ self._convert_to_string(i) for i in first, second ]
+        first, second = [self._convert_to_string(i) for i in first, second]
         self._should_not_be_equal(first, second, msg, values)

def should_be_equal_as_strings(self, first, second, msg=None, values=True):
@@ -391,7 +391,7 @@
         error message with `msg` and `values`.
         """
         self._log_types(first, second)
- first, second = [ self._convert_to_string(i) for i in first, second ]
+        first, second = [self._convert_to_string(i) for i in first, second]
         self._should_be_equal(first, second, msg, values)

     def should_not_start_with(self, str1, str2, msg=None, values=True):
@@ -595,10 +595,10 @@
         """Returns and logs the length of the given item.

         The keyword first tries to get the length with the Python function
-        'len', which calls the item's '__len__' method internally. If that
- fails, the keyword tries to call the item's 'length' and 'size' methods
+        `len`, which calls the item's `__len__` method internally. If that
+ fails, the keyword tries to call the item's `length` and `size` methods directly. The final attempt is trying to get the value of the item's - 'length' attribute. If all these attempts are unsuccessful, the keyword + `length` attribute. If all these attempts are unsuccessful, the keyword
         fails.
         """
         length = self._get_length(item)
@@ -628,7 +628,7 @@
         """
         length = self._convert_to_integer(length)
         if self.get_length(item) != length:
-            if msg is None:
+            if not msg:
                 msg = "Length of '%s' should be %d but it is %d" \
                         % (item, length, self.get_length(item))
             raise AssertionError(msg)
@@ -640,9 +640,7 @@
         default error message can be overridden with the `msg` argument.
         """
         if self.get_length(item) > 0:
-            if msg is None:
-                msg = "'%s' should be empty" % item
-            raise AssertionError(msg)
+            raise AssertionError(msg or "'%s' should be empty" % item)

     def should_not_be_empty(self, item, msg=None):
         """Verifies that the given item is not empty.
@@ -651,16 +649,14 @@
         default error message can be overridden with the `msg` argument.
         """
         if self.get_length(item) == 0:
-            if msg is None:
-                msg = "'%s' should not be empty" % item
-            raise AssertionError(msg)
+            raise AssertionError(msg or "'%s' should not be empty" % item)

     def _get_string_msg(self, str1, str2, msg, values, delim):
-        _msg = "'%s' %s '%s'" % (str1, delim, str2)
-        if msg is None:
-            msg = _msg
+        default = "'%s' %s '%s'" % (str1, delim, str2)
+        if not msg:
+            msg = default
         elif values is True:
-            msg = '%s: %s' % (msg, _msg)
+            msg = '%s: %s' % (msg, default)
         return msg


@@ -699,8 +695,9 @@
     def log_variables(self, level='INFO'):
         """Logs all variables in the current scope with given log level."""
         variables = self.get_variables()
- for name in sorted(variables.keys(), key=lambda string: string.lower()): - msg = utils.format_assign_message(name, variables[name], cut_long=False)
+        for name in sorted(variables.keys(), key=lambda s: s.lower()):
+            msg = utils.format_assign_message(name, variables[name],
+                                              cut_long=False)
             self.log(msg, level)

     def variable_should_exist(self, name, msg=None):
@@ -708,17 +705,14 @@

The name of the variable can be given either as a normal variable name (e.g. ${NAME}) or in escaped format (e.g. \\${NAME}). Notice that the
-        former works only in Robot Framework 2.1 and newer, and it has some
-        limitations explained in `Set Suite Variable`.
+        former has some limitations explained in `Set Suite Variable`.

The default error message can be overridden with the `msg` argument.
         """
         name = self._get_var_name(name)
         variables = self.get_variables()
-        if msg:
-            msg = variables.replace_string(msg)
-        else:
-            msg = "Variable %s does not exist" % name
+        msg = variables.replace_string(msg) if msg \
+            else "Variable %s does not exist" % name
         asserts.fail_unless(variables.has_key(name), msg)

     def variable_should_not_exist(self, name, msg=None):
@@ -726,17 +720,14 @@

The name of the variable can be given either as a normal variable name (e.g. ${NAME}) or in escaped format (e.g. \\${NAME}). Notice that the
-        former works only in Robot Framework 2.1 and newer, and it has some
-        limitations explained in `Set Suite Variable`.
+        former has some limitations explained in `Set Suite Variable`.

The default error message can be overridden with the `msg` argument.
         """
         name = self._get_var_name(name)
         variables = self.get_variables()
-        if msg:
-            msg = variables.replace_string(msg)
-        else:
-            msg = "Variable %s exists" % name
+        msg = variables.replace_string(msg) if msg \
+            else "Variable %s exists" % name
         asserts.fail_if(variables.has_key(name), msg)

     def replace_variables(self, text):
@@ -813,8 +804,7 @@
         variables set with this keyword.

The name of the variable can be given either as a normal variable name - (e.g. ${NAME}) or in escaped format (e.g. \\${NAME}). Notice that the
-        former works only in Robot Framework 2.1 and newer.
+        (e.g. ${NAME}) or in escaped format (e.g. \\${NAME}).

If a variable already exists within the new scope, its value will be overwritten. Otherwise a new variable is created. If a variable already
@@ -1213,10 +1203,10 @@

     def _get_test_in_teardown(self, kwname):
         test = NAMESPACES.current.test
-        if test is not None and test.status != 'RUNNING':
+        if test and test.status != 'RUNNING':
             return test
         raise RuntimeError("Keyword '%s' can only be used in test teardown"
-                        % kwname)
+                           % kwname)

     def run_keyword_if_all_critical_tests_passed(self, name, *args):
"""Runs the given keyword with the given arguments, if all critical tests passed.
@@ -1326,7 +1316,7 @@
         """
         if not items:
             return ''
-        items = [ utils.unic(item) for item in items ]
+        items = [utils.unic(item) for item in items]
         if items[0].startswith('SEPARATOR='):
             sep = items[0][len('SEPARATOR='):]
             items = items[1:]
@@ -1423,8 +1413,7 @@
         | Import Variables | ${CURDIR}/variables.py   |      |      |
         | Import Variables | ${CURDIR}/../vars/env.py | arg1 | arg2 |

-
-        New in Robot Framework 2.5.4
+        New in Robot Framework 2.5.4.
         """
         NAMESPACES.current.import_variables(path.replace('/', os.sep),
                                             args, overwrite=True)
@@ -1499,8 +1488,7 @@
            timestamp string in the format '2006-02-24 15:08:31'.

         By default this keyword returns the current time, but that can be
-        altered using `time` argument as explained below. Notice that this
-        argument is only available in Robot Framework 2.1.1 and newer.
+        altered using `time` argument as explained below.

         1) If `time` is a floating point number, it is interpreted as
            seconds since the epoch. This documentation is written about
@@ -1569,12 +1557,12 @@
         recommended to move the logic into a test library.
         """
         modules = modules.replace(' ','').split(',') if modules else []
- namespace = dict([ (m, __import__(m)) for m in modules if m != '' ])
+        namespace = dict((m, __import__(m)) for m in modules if m != '')
         try:
             return eval(expression, namespace)
         except:
             raise RuntimeError("Evaluating expression '%s' failed: %s"
-                            % (expression, utils.get_error_message()))
+                               % (expression, utils.get_error_message()))

     def call_method(self, object, method_name, *args):
"""Calls the named method of the given object with the provided arguments.
@@ -1614,7 +1602,7 @@
             return ''
         if len(patterns) == 1:
             return re.escape(patterns[0])
-        return [ re.escape(pattern) for pattern in patterns ]
+        return [re.escape(p) for p in patterns]

     def set_test_message(self, message):
         """Sets message for for the current test.
@@ -1626,7 +1614,7 @@
         This keyword can not be used in suite setup or suite teardown.
         """
         test = NAMESPACES.current.test
-        if test is None:
+        if not test:
raise RuntimeError("'Set Test Message' keyword cannot be used in "
                                "suite setup or teardown")
         test.message = message
@@ -1664,8 +1652,8 @@
         | Remove Tags | mytag | something-* | ?ython |
         """
         tags = utils.normalize_tags(tags)
-        handler = lambda test: [ t for t in test.tags
-                                 if not utils.matches_any(t, tags) ]
+        handler = lambda test: [t for t in test.tags
+                                if not utils.matches_any(t, tags)]
         self._set_or_remove_tags(handler)
         self.log('Removed tag%s %s.' % (utils.plural_or_not(tags),
                                         utils.seq2str(tags)))
@@ -1816,7 +1804,7 @@
     RUN_KW_REGISTER.register_run_keyword(library, keyword, args_to_process)


-for name in [ attr for attr in dir(_RunKeyword) if not attr.startswith('_') ]: +for name in [attr for attr in dir(_RunKeyword) if not attr.startswith('_')]:
     register_run_keyword('BuiltIn', getattr(_RunKeyword, name))
for name in ['set_test_variable', 'set_suite_variable', 'set_global_variable',
              'variable_should_exist', 'variable_should_not_exist', 'comment',

==============================================================================
Revision: 9363f70a0553
Author:   Pekka Klärck
Date:     Thu May 19 10:49:30 2011
Log:      Automated merge with https://robotframework.googlecode.com/hg/
http://code.google.com/p/robotframework/source/detail?r=9363f70a0553



==============================================================================
Revision: 35ff1e79242b
Author:   Pekka Klärck
Date:     Thu May 19 12:38:24 2011
Log:      format
http://code.google.com/p/robotframework/source/detail?r=35ff1e79242b

Added:
 /atest/robot/test_libraries/library_import_failing.txt
 /atest/testdata/test_libraries/library_import_failing.txt
Deleted:
 /atest/robot/test_libraries/library_import_failing.html
 /atest/testdata/test_libraries/library_import_failing.html

=======================================
--- /dev/null
+++ /atest/robot/test_libraries/library_import_failing.txt Thu May 19 12:38:24 2011
@@ -0,0 +1,25 @@
+*** Settings ***
+Documentation Tests for checking that failing library imports will produce tracebacks to the log file. +Suite Setup Run Tests ${EMPTY} test_libraries/library_import_failing.txt
+Force Tags      regression
+Default Tags    pybot  jybot
+Resource        atest_resource.txt
+
+*** Test Cases ***
+Library Import Fails Because Not a Library
+ Check Failure From Output 0 Importing test library 'MyInvalidLibFile' failed: ImportError: I'm not really a library! raise ImportError("I'm not really a library!")
+
+Library Import Fails Because Initialization Fails
+ Check Failure From Output 2 Creating an instance of the test library 'InitializationFailLibrary' with no arguments failed: Initialization failed! InitializationFailLibrary.py", line 4, in __init__
+
+Library Import Failing In Java
+    [Tags]  jybot
+ Check Failure From Output 1 Creating an instance of the test library 'InitializationFailJavaLibrary' with no arguments failed: Initialization failed! at InitializationFailJavaLibrary.<init>(InitializationFailJavaLibrary.java:4)
+
+*** Keywords ***
+Check Failure From Output
+    [Arguments]  ${index}  ${expected message}  ${expected traceback}=
+    ${message} =  Set Variable  ${ERRORS.msgs[${index}].message}
+    Should Contain  ${message}  ${expected message}
+    Should Contain  ${message}  ${expected traceback}
+
=======================================
--- /dev/null
+++ /atest/testdata/test_libraries/library_import_failing.txt Thu May 19 12:38:24 2011
@@ -0,0 +1,9 @@
+*** Settings ***
+Library         MyInvalidLibFile.py
+Library         InitializationFailJavaLibrary.java
+Library         InitializationFailLibrary.py
+
+*** Test Cases ***
+Test
+    Comment  Tests only failing library imports.
+
=======================================
--- /atest/robot/test_libraries/library_import_failing.html Mon Apr 12 05:17:10 2010
+++ /dev/null
@@ -1,1249 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html><head>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-  <style type="text/css">
-html { font-family: Arial,Helvetica,sans-serif;
-background-color: white;
-color: black;
-}
-p { max-width: 60em;
-}
-table { border-collapse: collapse;
-empty-cells: show;
-margin: 1em 0em;
-border: 0.1em solid black;
-}
-th, td {
-border-style: solid;
-border-width: 0.05em 0.1em;
-border-color: black;
-padding: 0.1em 0.2em;
-height: 1.5em;
-}
-th {
-background-color: rgb(192, 192, 192);
-color: black;
-border-width: 0.1em;
-font-weight: bold;
-text-align: center;
-text-transform: capitalize;
-letter-spacing: 0.1em;
-}
-/* Widths of named columns */
-col.name {
-width: 10em;
-}
-.action , .value, .arg {
-width: 15em;
-}
-/* Properties for the name column - td:first-child should work in CSS 2.1 avare browsers (tested in Firefox)
-- col.name is against specs but works in IE
-*/
-td:first-child, col.name {
-background-color: rgb(240, 240, 240);
-text-transform: capitalize;
-letter-spacing: 0.1em;
-}
-th { font-style: normal; } /* required for IE */
-  </style>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- <title>Robot Test Cases</title><link type="text/css" href="resources/css/testdata.css" rel="stylesheet"></head>
-<body>
-
-
-
-
-
-
-
-
-<h1><br></h1>
-
-
-
-<span style="font-weight: bold;">
-
-
-</span>
-<table border="1">
-
-
-  <thead><tr>
-
-
-    <th>Setting</th>
-
-
-
-
-
-
-
-
-    <th>Value</th>
-
-
-
-
-
-
-
-
-    <th>Value</th>
-
-
-
-
-
-
-
-
-    <th>value</th>
-
-
-
-
-
-
-
-
-    <th>Value</th>
-
-
-
-
-
-
-
-
-  </tr>
-
-
-
-
-
-
-
-
-  </thead> <tbody>
-
-
-
-
-
-
-
-
-    <tr>
-
-
-
-      <td>Document</td>
-
-
-
- <td>Tests for checking that failing library imports will produce tracebacks to the log file.</td><td align="undefined" valign="undefined"></td>
-
-
-
-      <td align="undefined" valign="undefined"></td>
-
-
-
-      <td align="undefined" valign="undefined"></td>
-
-
-
-    </tr>
-
-
-
-    <tr>
-
-
-
-      <td>Force Tags</td>
-
-
-
-      <td>regression</td>
-
-
-
-      <td></td>
-
-
-
-      <td align="undefined" valign="undefined"></td>
-
-
-
-      <td align="undefined" valign="undefined"></td>
-
-
-
-    </tr>
-
-
-
-    <tr>
-
-
-
-      <td align="undefined" valign="undefined">Default Tags</td>
-
-
-
-      <td>pybot<br></td><td align="undefined" valign="undefined">jybot</td>
-
-
-
-
-
-
-
-      <td align="undefined" valign="undefined"></td>
-
-
-
-      <td align="undefined" valign="undefined"></td>
-
-
-
-    </tr>
-
-
-
-    <tr>
-
-
-
-
-
-
-
-
-      <td>Resource</td>
-
-
-
-
-
-
-
-
-      <td>atest_resource.txt</td>
-
-
-
-
-
-
-
-
-      <td></td>
-
-
-
-
-
-
-
-
-      <td></td>
-
-
-
-
-
-
-
-
-      <td></td>
-
-
-
-
-
-
-
-
-    </tr>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-    <tr>
-
-
-
-
-
-
-
-
-      <td>Suite Setup</td>
-
-
-
-
-
-
-
-
-      <td>Run Tests</td>
-
-
-
-
-
-
-
-
-      <td><br>
-
-      </td>
-
-
-
-
-
-
-
-
-      <td>test_libraries${/}library_import_failing.html</td><td></td>
-
-
-
-
-
-
-
-
-    </tr>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-  </tbody>
-</table>
-
-
-
-
-
-
-
-
-
-
-
-
-
-<table border="1">
-
-
-
-
-
-
-
-
- <colgroup span="99"><col class="name"><col class="value" span="4"></colgroup> <thead>
-  <tr>
-
-
-
-
-
-
-
-
-    <th>Variable</th>
-
-
-
-
-
-
-
-
-    <th>Value</th>
-
-
-
-
-
-
-
-
-    <th>Value</th>
-
-
-
-
-
-
-
-
-    <th>Value</th>
-
-
-
-
-
-
-
-
-    <th>Value</th>
-
-
-
-
-
-
-
-
-  </tr>
-
-
-
-
-
-
-
-
-  </thead> <tbody>
-
-
-
-
-
-
-
-
-    <tr>
-
-
-
-
-
-
-
-
-      <td></td>
-
-
-
-
-
-
-
-
-      <td></td>
-
-
-
-
-
-
-
-
-      <td></td>
-
-
-
-
-
-
-
-
-      <td></td>
-
-
-
-
-
-
-
-
-      <td></td>
-
-
-
-
-
-
-
-
-    </tr>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-  </tbody>
-</table>
-
-
-
-
-
-
-
-
-
-
-
-
-
-<table border="1">
-
-
-
-
-
-
-
-
- <colgroup span="99"><col class="name"><col class="action"><col class="arg" span="3"></colgroup>
-  <thead> <tr>
-
-
-
-
-
-
-
-
-    <th>Test Case</th>
-
-
-
-
-
-
-
-
-    <th>Action</th>
-
-
-
-
-
-
-
-
-    <th>Argument</th>
-
-
-
-
-
-
-
-
-    <th>Argument</th>
-
-
-
-
-
-
-
-
-    <th>Argument</th>
-
-
-
-
-
-
-
-
-  </tr>
-
-
-
-
-
-
-
-
-  </thead> <tbody>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-    <tr>
-
-
-
-
-
-
-
-
-      <td>Library Import Fails Because Not a Library</td>
-
-
-
-
-
-
-
-
-      <td>Check Failure From Output</td>
-
-
-
-
-
-
-
-
-      <td>0</td>
-
-
-
-
-
-
-
-
- <td>Importing test library 'MyInvalidLibFile' failed: ImportError: I'm not really a library!</td><td>raise ImportError("I'm not really a library!")</td>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-    </tr>
-
-
-
-
-
-
-
-
-
-
***The diff for this file has been truncated for email.***
=======================================
--- /atest/testdata/test_libraries/library_import_failing.html Sat May 31 09:57:24 2008
+++ /dev/null
@@ -1,816 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html><head>
-
-
-
-
-
-
-
-
-
-
-
-  <style type="text/css">
-html {
-  font-family: Arial,Helvetica,sans-serif;
-  background-color: white;
-  color: black;
-}
-p {
-  max-width: 60em;
-}
-table {
-  border-collapse: collapse;
-  empty-cells: show;
-  margin: 1em 0em;
-  border: 0.1em solid black;
-}
-th, td {
-  border-style: solid;
-  border-width: 0.05em 0.1em;
-  border-color: black;
-  padding: 0.1em 0.2em;
-  height: 1.5em;
-}
-th {
-  background-color: rgb(192, 192, 192);
-  color: black;
-  border-width: 0.1em;
-  font-weight: bold;
-  text-align: center;
-  text-transform: capitalize;
-  letter-spacing: 0.1em;
-}
-/* Widths of named columns */
-col.name {
-  width: 10em;
-}
-.action, .value, .arg {
-  width: 15em;
-}
-/* Properties for the name column
-- td:first-child should work in CSS 2.1 avare browsers (tested in Firefox)
-- col.name is against specs but works in IE
-*/
-td:first-child, col.name {
-  background-color: rgb(240, 240, 240);
-  text-transform: capitalize;
-  letter-spacing: 0.1em;
-}
-/* required for IE */
-th {
-  font-style: normal;
-}
-  </style>
-
-
-
-
-
-  <title>Robot Test Cases</title></head>
-<body>
-
-
-
-
-
-
-<h1>Robot Test Cases</h1>
-
-
-
-
-
-
-
-<table border="1">
-
-
-
-
-
-
- <colgroup span="99"><col class="name"><col class="value" span="4"></colgroup>
-  <thead>
-  <tr>
-
-
-
-
-
-
-    <th>Setting</th>
-
-
-
-
-
-
-    <th>Value</th>
-
-
-
-
-
-
-    <th>Value</th>
-
-
-
-
-
-
-    <th>value</th>
-
-
-
-
-
-
-    <th>Value</th>
-
-
-
-
-
-
-  </tr>
-
-
-
-
-
-
-  </thead>
-  <tbody>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-    <tr>
-
-
-      <td align="undefined" valign="undefined">Library</td>
-
-
-      <td align="undefined" valign="undefined">MyInvalidLibFile.py</td>
-
-
-      <td align="undefined" valign="undefined"></td>
-
-
-      <td align="undefined" valign="undefined"></td>
-
-
-      <td align="undefined" valign="undefined"></td>
-
-
-    </tr>
-
-
-    <tr>
-
-
-
-      <td align="undefined" valign="undefined">Library</td>
-
-
-
- <td align="undefined" valign="undefined">InitializationFailJavaLibrary.java</td>
-
-
-
-      <td align="undefined" valign="undefined"></td>
-
-
-
-      <td align="undefined" valign="undefined"></td>
-
-
-
-      <td align="undefined" valign="undefined"></td>
-
-
-
-    </tr>
-
-
-
-    <tr>
-
-
-
-      <td align="undefined" valign="undefined">Library</td>
-
-
-
- <td align="undefined" valign="undefined">InitializationFailLibrary.py</td>
-
-
-
-      <td align="undefined" valign="undefined"></td>
-
-
-
-      <td align="undefined" valign="undefined"></td>
-
-
-
-      <td align="undefined" valign="undefined"></td>
-
-
-
-    </tr>
-
-
-
-
-
-
-
-
-
-
-
-  </tbody>
-</table>
-
-
-
-
-
-
-
-<table border="1">
-
-
-
-
-
-
- <colgroup span="99"><col class="name"><col class="value" span="4"></colgroup>
-  <thead>
-  <tr>
-
-
-
-
-
-
-    <th>Variable</th>
-
-
-
-
-
-
-    <th>Value</th>
-
-
-
-
-
-
-    <th>Value</th>
-
-
-
-
-
-
-    <th>Value</th>
-
-
-
-
-
-
-    <th>Value</th>
-
-
-
-
-
-
-  </tr>
-
-
-
-
-
-
-  </thead>
-  <tbody>
-
-
-
-
-
-
-    <tr>
-
-
-
-
-
-
-      <td></td>
-
-
-
-
-
-
-      <td></td>
-
-
-
-
-
-
-      <td></td>
-
-
-
-
-
-
-      <td></td>
-
-
-
-
-
-
-      <td></td>
-
-
-
-
-
-
-    </tr>
-
-
-
-
-
-
-    <tr>
-
-
-
-
-
-
-      <td></td>
-
-
-
-
-
-
-      <td></td>
-
-
-
-
-
-
-      <td></td>
-
-
-
-
-
-
-      <td></td>
-
-
-
-
-
-
-      <td></td>
-
-
-
-
-
-
-    </tr>
-
-
-
-
-
-
-
-
-
-
-
-  </tbody>
-</table>
-
-
-
-
-
-
-
-<table border="1">
-
-
-
-
-
-
- <colgroup span="99"><col class="name"><col class="action"><col class="arg" span="3"></colgroup>
-  <thead>
-  <tr>
-
-
-
-
-
-
-    <th>Test Case</th>
-
-
-
-
-
-
-    <th>Action</th>
-
-
-
-
-
-
-    <th>Argument</th>
-
-
-
-
-
-
-    <th>Argument</th>
-
-
-
-
-
-
-    <th>Argument</th>
-
-
-
-
-
-
-
-
-  </tr>
-
-
-
-
-
-
-  </thead>
-  <tbody>
-
-
-
-
-
-
-    <tr>
-
-
-
-
-
-
-      <td>Test</td>
-
-
-
-
-
-      <td>Comment</td>
-
-
-
-
-
-      <td>Tests only failing library imports.</td>
-
-
-
-
-
-
-
-
-      <td></td>
-
-
-
-
-
-
-      <td></td>
-
-
-
-
-
-
-
-
-    </tr>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-    <tr>
-
-      <td align="undefined" valign="undefined"></td>
-
-      <td align="undefined" valign="undefined"></td>
-
-      <td align="undefined" valign="undefined"></td>
-
-      <td align="undefined" valign="undefined"></td>
-
-      <td align="undefined" valign="undefined"></td>
-
-    </tr>
-
-
-
-
-
-
-
-
-
-
-
-  </tbody>
-</table>
-
-
-
-
-
-
-
-<table border="1">
-
-
-
-
-
-
- <colgroup span="99"><col class="name"><col class="action"><col class="arg" span="3"></colgroup>
-  <thead>
-  <tr>
-
-
-
-
-
-
-    <th>Keyword</th>
-
-
-
-
-
-
-    <th>Action</th>
-
-
-
-
-
-
-    <th>Argument</th>
-
-
-
-
-
-
-    <th>Argument</th>
-
-
-
-
-
-
-    <th>Argument</th>
-
-
-
-
-
-
-  </tr>
-
-
-
-
-
-
-  </thead>
-  <tbody>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-    <tr>
-
-
-
-
-
-
-      <td></td>
-
-
-
-
-
-
-      <td></td>
-
-
-
-
-
-
-      <td></td>
-
-
-
-
-
-
-      <td></td>
-
-
-
-
-
-
-      <td></td>
-
-
-
-
-
-
-    </tr>
-
-
-
-
-
-
-
-
-
-
-
-  </tbody>
-</table>
-
-
-
-
-
-
-
-</body></html>

Reply via email to