<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[162330] releases/WebKitGTK/webkit-2.2/Tools</title>
</head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/162330">162330</a></dd>
<dt>Author</dt> <dd>carlosgc@webkit.org</dd>
<dt>Date</dt> <dd>2014-01-20 03:31:28 -0800 (Mon, 20 Jan 2014)</dd>
</dl>

<h3>Log Message</h3>
<pre>Merge <a href="http://trac.webkit.org/projects/webkit/changeset/155605">r155605</a> - [GTK] run-gtk-tests option --skipped=ignore doesn't work when the entire suite is skipped
https://bugs.webkit.org/show_bug.cgi?id=121218

Reviewed by Philippe Normand.

Skipping the entire suite was added to skip tests when they can't
be run because of the environment, for example to skip the a11y
tests when the at-spi daemons fail to start. This is no longer
true for all the cases, so we can disable the tests that are
impossible to run instead of skipping them.

* Scripts/run-gtk-tests:
(TestRunner.__init__): Initialize the skipped tests list.
(TestRunner._setup_testing_environment): Add
TestWebKitAccessibility path to the list of disabled tests when
at-spi daemon fail to start.
(TestRunner._should_run_test_program): Check first if the test
program is disabled and then whether it's skipped honoring the
skipped command line option.</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#releasesWebKitGTKwebkit22ToolsChangeLog">releases/WebKitGTK/webkit-2.2/Tools/ChangeLog</a></li>
<li><a href="#releasesWebKitGTKwebkit22ToolsScriptsrungtktests">releases/WebKitGTK/webkit-2.2/Tools/Scripts/run-gtk-tests</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="releasesWebKitGTKwebkit22ToolsChangeLog"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.2/Tools/ChangeLog (162329 => 162330)</h4>
<pre class="diff"><span>
<span class="info">--- releases/WebKitGTK/webkit-2.2/Tools/ChangeLog        2014-01-20 11:14:04 UTC (rev 162329)
+++ releases/WebKitGTK/webkit-2.2/Tools/ChangeLog        2014-01-20 11:31:28 UTC (rev 162330)
</span><span class="lines">@@ -1,3 +1,25 @@
</span><ins>+2013-09-12  Carlos Garcia Campos  &lt;cgarcia@igalia.com&gt;
+
+        [GTK] run-gtk-tests option --skipped=ignore doesn't work when the entire suite is skipped
+        https://bugs.webkit.org/show_bug.cgi?id=121218
+
+        Reviewed by Philippe Normand.
+
+        Skipping the entire suite was added to skip tests when they can't
+        be run because of the environment, for example to skip the a11y
+        tests when the at-spi daemons fail to start. This is no longer
+        true for all the cases, so we can disable the tests that are
+        impossible to run instead of skipping them.
+
+        * Scripts/run-gtk-tests:
+        (TestRunner.__init__): Initialize the skipped tests list.
+        (TestRunner._setup_testing_environment): Add
+        TestWebKitAccessibility path to the list of disabled tests when
+        at-spi daemon fail to start.
+        (TestRunner._should_run_test_program): Check first if the test
+        program is disabled and then whether it's skipped honoring the
+        skipped command line option.
+
</ins><span class="cx"> 2013-09-04  Mario Sanchez Prada  &lt;mario.prada@samsung.com&gt;
</span><span class="cx"> 
</span><span class="cx">         REGRESSION (r132328): /WebKit2APITests/TestWebKitAccessibility unit test is failing
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit22ToolsScriptsrungtktests"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.2/Tools/Scripts/run-gtk-tests (162329 => 162330)</h4>
<pre class="diff"><span>
<span class="info">--- releases/WebKitGTK/webkit-2.2/Tools/Scripts/run-gtk-tests        2014-01-20 11:14:04 UTC (rev 162329)
+++ releases/WebKitGTK/webkit-2.2/Tools/Scripts/run-gtk-tests        2014-01-20 11:31:28 UTC (rev 162330)
</span><span class="lines">@@ -91,6 +91,7 @@
</span><span class="cx">         self._programs_path = common.build_path_for_build_types((self._build_type,), &quot;Programs&quot;)
</span><span class="cx">         self._tests = self._get_tests(tests)
</span><span class="cx">         self._skipped_tests = TestRunner.SKIPPED
</span><ins>+        self._disabled_tests = []
</ins><span class="cx">         if not sys.stdout.isatty():
</span><span class="cx">             self._tty_colors_pattern = re.compile(&quot;\033\[[0-9;]*m&quot;)
</span><span class="cx"> 
</span><span class="lines">@@ -196,8 +197,8 @@
</span><span class="cx"> 
</span><span class="cx">         # If we cannot start the accessibility daemons, we can just skip the accessibility tests.
</span><span class="cx">         if not self._start_accessibility_daemons():
</span><del>-            print &quot;Could not start accessibility bus, so skipping TestWebKitAccessibility&quot;
-            self._skipped_tests.append(SkippedTest(&quot;WebKit2APITests/TestWebKitAccessibility&quot;, SkippedTest.ENTIRE_SUITE, &quot;Could not start accessibility bus&quot;))
</del><ins>+            print &quot;Could not start accessibility bus, so disabling TestWebKitAccessibility&quot;
+            self._disabled_tests.append(&quot;WebKit2APITests/TestWebKitAccessibility&quot;)
</ins><span class="cx">         return True
</span><span class="cx"> 
</span><span class="cx">     def _tear_down_testing_environment(self):
</span><span class="lines">@@ -219,8 +220,13 @@
</span><span class="cx">         return test_cases
</span><span class="cx"> 
</span><span class="cx">     def _should_run_test_program(self, test_program):
</span><del>-        # This is not affected by the command-line arguments, since programs are skipped for
-        # problems in the harness, such as failing to start the accessibility bus.
</del><ins>+        for disabled_test in self._disabled_tests:
+            if test_program.endswith(disabled_test):
+                return False
+
+        if self._options.skipped_action != 'skip':
+            return True
+
</ins><span class="cx">         for skipped in self._skipped_tests:
</span><span class="cx">             if test_program.endswith(skipped.test) and skipped.skip_entire_suite():
</span><span class="cx">                 return False
</span></span></pre>
</div>
</div>

</body>
</html>