Diff
Modified: trunk/Tools/ChangeLog (104842 => 104843)
--- trunk/Tools/ChangeLog 2012-01-12 20:04:31 UTC (rev 104842)
+++ trunk/Tools/ChangeLog 2012-01-12 20:06:34 UTC (rev 104843)
@@ -1,5 +1,62 @@
2012-01-12 Dirk Pranke <[email protected]>
+ webkitpy: clean up port unit tests in preparation for making port_name mandatory
+ https://bugs.webkit.org/show_bug.cgi?id=76123
+
+ Reviewed by Adam Barth.
+
+ This change updates the unit tests to be more consistent in how
+ ports are created, in preparation for making port_name a
+ mandatory parameter to the constructor and removing any version
+ interpretation from it.
+
+ There should be no functional changes in this patch, but some
+ tests that are no longer relevant have been removed or reworked.
+
+ * Scripts/webkitpy/layout_tests/port/base_unittest.py:
+ (PortTest.test_get_option__default):
+ * Scripts/webkitpy/layout_tests/port/chromium_linux_unittest.py:
+ (ChromiumLinuxPortTest):
+ (ChromiumLinuxPortTest.assert_architecture):
+ (ChromiumLinuxPortTest.test_determine_architecture_fails):
+ * Scripts/webkitpy/layout_tests/port/chromium_mac_unittest.py:
+ (ChromiumMacPortTest):
+ * Scripts/webkitpy/layout_tests/port/chromium_unittest.py:
+ (ChromiumPortTest):
+ (ChromiumPortTest.test_all_test_configurations):
+ (ChromiumPortTest.TestMacPort.__init__):
+ (ChromiumPortTest.TestLinuxPort.__init__):
+ (ChromiumPortTest.TestWinPort.__init__):
+ * Scripts/webkitpy/layout_tests/port/chromium_win_unittest.py:
+ (ChromiumWinTest):
+ * Scripts/webkitpy/layout_tests/port/efl_unittest.py:
+ (EflPortTest):
+ * Scripts/webkitpy/layout_tests/port/gtk_unittest.py:
+ (GtkPortTest):
+ * Scripts/webkitpy/layout_tests/port/mac_unittest.py:
+ (MacTest):
+ * Scripts/webkitpy/layout_tests/port/mock_drt_unittest.py:
+ (MockDRTPortTest):
+ (MockDRTPortTest.make_port):
+ * Scripts/webkitpy/layout_tests/port/qt.py:
+ (QtPort._port_flag_for_scripts):
+ (QtPort.__init__):
+ * Scripts/webkitpy/layout_tests/port/qt_unittest.py:
+ (QtPortTest):
+ (QtPortTest._assert_search_path):
+ (QtPortTest.test_baseline_search_path):
+ (QtPortTest.test_operating_system):
+ * Scripts/webkitpy/layout_tests/port/webkit_unittest.py:
+ (WebKitPortTest):
+ * Scripts/webkitpy/layout_tests/port/win_unittest.py:
+ (WinPortTest):
+ (WinPortTest._assert_search_path):
+ (WinPortTest.test_baseline_search_path):
+ * Scripts/webkitpy/tool/servers/rebaselineserver_unittest.py:
+ (get_test_config.TestMacPort.__init__):
+
+2012-01-12 Dirk Pranke <[email protected]>
+
test-webkitpy: clean up logging and provide a real --help message
https://bugs.webkit.org/show_bug.cgi?id=76142
Modified: trunk/Tools/Scripts/webkitpy/layout_tests/port/base_unittest.py (104842 => 104843)
--- trunk/Tools/Scripts/webkitpy/layout_tests/port/base_unittest.py 2012-01-12 20:04:31 UTC (rev 104842)
+++ trunk/Tools/Scripts/webkitpy/layout_tests/port/base_unittest.py 2012-01-12 20:06:34 UTC (rev 104843)
@@ -244,14 +244,6 @@
port = self.make_port()
self.assertEqual(port.get_option('foo', 'bar'), 'bar')
- def test_name__unset(self):
- port = self.make_port()
- self.assertEqual(port.name(), None)
-
- def test_name__set(self):
- port = self.make_port(port_name='foo')
- self.assertEqual(port.name(), 'foo')
-
def test_additional_platform_directory(self):
port = self.make_port(port_name='foo')
port.baseline_search_path = lambda: ['LayoutTests/platform/foo']
Modified: trunk/Tools/Scripts/webkitpy/layout_tests/port/chromium_linux_unittest.py (104842 => 104843)
--- trunk/Tools/Scripts/webkitpy/layout_tests/port/chromium_linux_unittest.py 2012-01-12 20:04:31 UTC (rev 104842)
+++ trunk/Tools/Scripts/webkitpy/layout_tests/port/chromium_linux_unittest.py 2012-01-12 20:06:34 UTC (rev 104843)
@@ -36,6 +36,7 @@
class ChromiumLinuxPortTest(port_testcase.PortTestCase):
+ port_name = 'chromium-linux'
port_maker = chromium_linux.ChromiumLinuxPort
def assert_architecture(self, port_name=None, file_output=None, expected_architecture=None):
@@ -44,7 +45,7 @@
if file_output:
host.executive = executive_mock.MockExecutive2(file_output)
- port = chromium_linux.ChromiumLinuxPort(host, port_name=port_name)
+ port = self.make_port(host, port_name=port_name)
self.assertEquals(port.architecture(), expected_architecture)
if expected_architecture == 'x86':
self.assertTrue(port.baseline_path().endswith('chromium-linux-x86'))
@@ -72,19 +73,19 @@
def test_determine_architecture_fails(self):
# Test that we default to 'x86' if the driver doesn't exist.
- port = chromium_linux.ChromiumLinuxPort(MockSystemHost())
+ port = self.make_port()
self.assertEquals(port.architecture(), 'x86_64')
# Test that we default to 'x86' on an unknown architecture.
host = MockSystemHost()
host.filesystem.exists = lambda x: True
host.executive = executive_mock.MockExecutive2('win32')
- port = chromium_linux.ChromiumLinuxPort(host)
+ port = self.make_port(host=host)
self.assertEquals(port.architecture(), 'x86_64')
# Test that we raise errors if something weird happens.
host.executive = executive_mock.MockExecutive2(exception=AssertionError)
- self.assertRaises(AssertionError, chromium_linux.ChromiumLinuxPort, host)
+ self.assertRaises(AssertionError, chromium_linux.ChromiumLinuxPort, host, self.port_name)
def test_operating_system(self):
self.assertEqual('linux', self.make_port().operating_system())
Modified: trunk/Tools/Scripts/webkitpy/layout_tests/port/chromium_mac_unittest.py (104842 => 104843)
--- trunk/Tools/Scripts/webkitpy/layout_tests/port/chromium_mac_unittest.py 2012-01-12 20:04:31 UTC (rev 104842)
+++ trunk/Tools/Scripts/webkitpy/layout_tests/port/chromium_mac_unittest.py 2012-01-12 20:06:34 UTC (rev 104843)
@@ -35,6 +35,7 @@
class ChromiumMacPortTest(port_testcase.PortTestCase):
os_name = 'mac'
os_version = 'leopard'
+ port_name = 'chromium-mac'
port_maker = chromium_mac.ChromiumMacPort
def test_check_wdiff(self):
Modified: trunk/Tools/Scripts/webkitpy/layout_tests/port/chromium_unittest.py (104842 => 104843)
--- trunk/Tools/Scripts/webkitpy/layout_tests/port/chromium_unittest.py 2012-01-12 20:04:31 UTC (rev 104842)
+++ trunk/Tools/Scripts/webkitpy/layout_tests/port/chromium_unittest.py 2012-01-12 20:06:34 UTC (rev 104843)
@@ -154,11 +154,12 @@
class ChromiumPortTest(port_testcase.PortTestCase):
+ port_name = 'chromium-mac'
port_maker = chromium.ChromiumPort
def test_all_test_configurations(self):
"""Validate the complete set of configurations this port knows about."""
- port = chromium.ChromiumPort(MockSystemHost())
+ port = self.make_port()
self.assertEquals(set(port.all_test_configurations()), set([
TestConfiguration('leopard', 'x86', 'debug', 'cpu'),
TestConfiguration('leopard', 'x86', 'debug', 'gpu'),
@@ -209,7 +210,7 @@
class TestMacPort(chromium_mac.ChromiumMacPort):
def __init__(self, options=None):
options = options or MockOptions()
- chromium_mac.ChromiumMacPort.__init__(self, MockSystemHost(os_name='mac', os_version='leopard'), options=options)
+ chromium_mac.ChromiumMacPort.__init__(self, MockSystemHost(os_name='mac', os_version='leopard'), 'chromium-mac-leopard', options=options)
def default_configuration(self):
self.default_configuration_called = True
@@ -218,7 +219,7 @@
class TestLinuxPort(chromium_linux.ChromiumLinuxPort):
def __init__(self, options=None):
options = options or MockOptions()
- chromium_linux.ChromiumLinuxPort.__init__(self, MockSystemHost(os_name='linux', os_version='lucid'), options=options)
+ chromium_linux.ChromiumLinuxPort.__init__(self, MockSystemHost(os_name='linux', os_version='lucid'), 'chromium-linux-x86', options=options)
def default_configuration(self):
self.default_configuration_called = True
@@ -227,7 +228,7 @@
class TestWinPort(chromium_win.ChromiumWinPort):
def __init__(self, options=None):
options = options or MockOptions()
- chromium_win.ChromiumWinPort.__init__(self, MockSystemHost(os_name='win', os_version='xp'), options=options)
+ chromium_win.ChromiumWinPort.__init__(self, MockSystemHost(os_name='win', os_version='xp'), 'chromium-win-xp', options=options)
def default_configuration(self):
self.default_configuration_called = True
Modified: trunk/Tools/Scripts/webkitpy/layout_tests/port/chromium_win_unittest.py (104842 => 104843)
--- trunk/Tools/Scripts/webkitpy/layout_tests/port/chromium_win_unittest.py 2012-01-12 20:04:31 UTC (rev 104842)
+++ trunk/Tools/Scripts/webkitpy/layout_tests/port/chromium_win_unittest.py 2012-01-12 20:06:34 UTC (rev 104843)
@@ -42,6 +42,7 @@
self.register_cygwin = True
self.results_directory = '/'
+ port_name = 'chromium-win'
port_maker = chromium_win.ChromiumWinPort
os_name = 'win'
os_version = 'xp'
Modified: trunk/Tools/Scripts/webkitpy/layout_tests/port/efl_unittest.py (104842 => 104843)
--- trunk/Tools/Scripts/webkitpy/layout_tests/port/efl_unittest.py 2012-01-12 20:04:31 UTC (rev 104842)
+++ trunk/Tools/Scripts/webkitpy/layout_tests/port/efl_unittest.py 2012-01-12 20:06:34 UTC (rev 104843)
@@ -33,6 +33,7 @@
class EflPortTest(port_testcase.PortTestCase):
+ port_name = 'efl'
port_maker = EflPort
def test_show_results_html_file(self):
Modified: trunk/Tools/Scripts/webkitpy/layout_tests/port/gtk_unittest.py (104842 => 104843)
--- trunk/Tools/Scripts/webkitpy/layout_tests/port/gtk_unittest.py 2012-01-12 20:04:31 UTC (rev 104842)
+++ trunk/Tools/Scripts/webkitpy/layout_tests/port/gtk_unittest.py 2012-01-12 20:06:34 UTC (rev 104843)
@@ -35,6 +35,7 @@
class GtkPortTest(port_testcase.PortTestCase):
+ port_name = 'gtk'
port_maker = GtkPort
def test_show_results_html_file(self):
Modified: trunk/Tools/Scripts/webkitpy/layout_tests/port/mac_unittest.py (104842 => 104843)
--- trunk/Tools/Scripts/webkitpy/layout_tests/port/mac_unittest.py 2012-01-12 20:04:31 UTC (rev 104842)
+++ trunk/Tools/Scripts/webkitpy/layout_tests/port/mac_unittest.py 2012-01-12 20:06:34 UTC (rev 104843)
@@ -38,6 +38,7 @@
class MacTest(port_testcase.PortTestCase):
os_name = 'mac'
os_version = 'leopard'
+ port_name = 'mac-leopard'
port_maker = MacPort
def assert_skipped_file_search_paths(self, port_name, expected_paths):
Modified: trunk/Tools/Scripts/webkitpy/layout_tests/port/mock_drt_unittest.py (104842 => 104843)
--- trunk/Tools/Scripts/webkitpy/layout_tests/port/mock_drt_unittest.py 2012-01-12 20:04:31 UTC (rev 104842)
+++ trunk/Tools/Scripts/webkitpy/layout_tests/port/mock_drt_unittest.py 2012-01-12 20:06:34 UTC (rev 104843)
@@ -45,6 +45,7 @@
class MockDRTPortTest(port_testcase.PortTestCase):
+
def make_port(self, options=mock_options):
host = MockSystemHost()
test.add_unit_tests_to_mock_filesystem(host.filesystem)
@@ -53,7 +54,7 @@
host.platform.os_name = 'win'
host.platform.os_version = 'xp'
return mock_drt.MockDRTPort(host, port_name='mock-chromium-win', options=options)
- return mock_drt.MockDRTPort(host, options=options)
+ return mock_drt.MockDRTPort(host, port_name='mock-mac', options=options)
def test_default_worker_model(self):
# only overridding the default test; we don't care about this one.
Modified: trunk/Tools/Scripts/webkitpy/layout_tests/port/qt.py (104842 => 104843)
--- trunk/Tools/Scripts/webkitpy/layout_tests/port/qt.py 2012-01-12 20:04:31 UTC (rev 104842)
+++ trunk/Tools/Scripts/webkitpy/layout_tests/port/qt.py 2012-01-12 20:06:34 UTC (rev 104843)
@@ -49,20 +49,11 @@
def _port_flag_for_scripts(self):
return "--qt"
- def _operating_system_for_platform(self, platform):
- if platform.startswith('linux'):
- return "linux"
- elif platform in ('win32', 'cygwin'):
- return "win"
- elif platform == 'darwin':
- return "mac"
- return None
-
# sys_platform exists only for unit testing.
- def __init__(self, host, port_name=None, sys_platform=None, **kwargs):
+ def __init__(self, host, port_name=None, **kwargs):
port_name = port_name or self.port_name
WebKitPort.__init__(self, host, port_name=None, **kwargs)
- self._operating_system = self._operating_system_for_platform(sys_platform or sys.platform)
+ self._operating_system = host.platform.os_name
self._version = self.operating_system()
# FIXME: This will allow WebKitPort.baseline_search_path and WebKitPort._skipped_file_search_paths
Modified: trunk/Tools/Scripts/webkitpy/layout_tests/port/qt_unittest.py (104842 => 104843)
--- trunk/Tools/Scripts/webkitpy/layout_tests/port/qt_unittest.py 2012-01-12 20:04:31 UTC (rev 104842)
+++ trunk/Tools/Scripts/webkitpy/layout_tests/port/qt_unittest.py 2012-01-12 20:06:34 UTC (rev 104843)
@@ -37,15 +37,18 @@
class QtPortTest(port_testcase.PortTestCase):
+ port_name = 'qt-mac'
port_maker = QtPort
- def _assert_search_path(self, search_paths, sys_platform, use_webkit2=False, qt_version='4.8'):
+ def _assert_search_path(self, search_paths, os_name=None, use_webkit2=False, qt_version='4.8'):
# FIXME: Port constructors should not "parse" the port name, but
# rather be passed components (directly or via setters). Once
# we fix that, this method will need a re-write.
- host = MockSystemHost()
+ host = MockSystemHost(os_name=os_name)
host.executive = MockExecutive2(self._qt_version(qt_version))
- port = QtPort(host, sys_platform=sys_platform, options=MockOptions(webkit_test_runner=use_webkit2, platform='qt'))
+ port_name = 'qt-' + os_name
+ port = self.make_port(host=host, qt_version=qt_version, port_name=port_name,
+ options=MockOptions(webkit_test_runner=use_webkit2, platform='qt'))
absolute_search_paths = map(port._webkit_baseline_path, search_paths)
self.assertEquals(port.baseline_search_path(), absolute_search_paths)
@@ -56,21 +59,17 @@
return 'QMake version 2.01a\nUsing Qt version 5.0.0 in /usr/local/Trolltech/Qt-5.0.0/lib'
def test_baseline_search_path(self):
- self._assert_search_path(['qt-mac', 'qt-4.8', 'qt'], 'darwin', qt_version='4.8')
- self._assert_search_path(['qt-win', 'qt-4.8', 'qt'], 'win32', qt_version='4.8')
- self._assert_search_path(['qt-win', 'qt-4.8', 'qt'], 'cygwin', qt_version='4.8')
- self._assert_search_path(['qt-linux', 'qt-4.8', 'qt'], 'linux2', qt_version='4.8')
- self._assert_search_path(['qt-linux', 'qt-4.8', 'qt'], 'linux3', qt_version='4.8')
+ self._assert_search_path(['qt-mac', 'qt-4.8', 'qt'], 'mac', qt_version='4.8')
+ self._assert_search_path(['qt-win', 'qt-4.8', 'qt'], 'win', qt_version='4.8')
+ self._assert_search_path(['qt-linux', 'qt-4.8', 'qt'], 'linux', qt_version='4.8')
- self._assert_search_path(['qt-mac', 'qt-4.8', 'qt'], 'darwin')
- self._assert_search_path(['qt-win', 'qt-4.8', 'qt'], 'win32')
- self._assert_search_path(['qt-win', 'qt-4.8', 'qt'], 'cygwin')
- self._assert_search_path(['qt-linux', 'qt-4.8', 'qt'], 'linux2')
- self._assert_search_path(['qt-linux', 'qt-4.8', 'qt'], 'linux3')
+ self._assert_search_path(['qt-mac', 'qt-4.8', 'qt'], 'mac')
+ self._assert_search_path(['qt-win', 'qt-4.8', 'qt'], 'win')
+ self._assert_search_path(['qt-linux', 'qt-4.8', 'qt'], 'linux')
- self._assert_search_path(['qt-wk2', 'qt-mac', 'qt-5.0', 'qt'], 'darwin', use_webkit2=True, qt_version='5.0')
- self._assert_search_path(['qt-wk2', 'qt-win', 'qt-5.0', 'qt'], 'cygwin', use_webkit2=True, qt_version='5.0')
- self._assert_search_path(['qt-wk2', 'qt-linux', 'qt-5.0', 'qt'], 'linux2', use_webkit2=True, qt_version='5.0')
+ self._assert_search_path(['qt-wk2', 'qt-mac', 'qt-5.0', 'qt'], 'mac', use_webkit2=True, qt_version='5.0')
+ self._assert_search_path(['qt-wk2', 'qt-win', 'qt-5.0', 'qt'], 'win', use_webkit2=True, qt_version='5.0')
+ self._assert_search_path(['qt-wk2', 'qt-linux', 'qt-5.0', 'qt'], 'linux', use_webkit2=True, qt_version='5.0')
def test_show_results_html_file(self):
port = self.make_port()
@@ -84,7 +83,6 @@
self.assertEquals(env['QTWEBKIT_PLUGIN_PATH'], 'MOCK output of child process/lib/plugins')
def test_operating_system(self):
- self.assertEqual('linux', self.make_port(sys_platform='linux').operating_system())
- self.assertEqual('mac', self.make_port(sys_platform='darwin').operating_system())
- self.assertEqual('win', self.make_port(sys_platform='cygwin').operating_system())
- self.assertEqual('win', self.make_port(sys_platform='win32').operating_system())
+ self.assertEqual('linux', self.make_port(port_name='qt-linux', os_name='linux').operating_system())
+ self.assertEqual('mac', self.make_port(os_name='mac').operating_system())
+ self.assertEqual('win', self.make_port(port_name='qt-win', os_name='win').operating_system())
Modified: trunk/Tools/Scripts/webkitpy/layout_tests/port/webkit_unittest.py (104842 => 104843)
--- trunk/Tools/Scripts/webkitpy/layout_tests/port/webkit_unittest.py 2012-01-12 20:04:31 UTC (rev 104842)
+++ trunk/Tools/Scripts/webkitpy/layout_tests/port/webkit_unittest.py 2012-01-12 20:06:34 UTC (rev 104843)
@@ -81,6 +81,7 @@
class WebKitPortTest(port_testcase.PortTestCase):
+ port_name = 'webkit'
port_maker = TestWebKitPort
def test_check_build(self):
Modified: trunk/Tools/Scripts/webkitpy/layout_tests/port/win_unittest.py (104842 => 104843)
--- trunk/Tools/Scripts/webkitpy/layout_tests/port/win_unittest.py 2012-01-12 20:04:31 UTC (rev 104842)
+++ trunk/Tools/Scripts/webkitpy/layout_tests/port/win_unittest.py 2012-01-12 20:06:34 UTC (rev 104843)
@@ -42,6 +42,7 @@
class WinPortTest(port_testcase.PortTestCase):
os_name = 'win'
os_version = 'xp'
+ port_name = 'win-xp'
port_maker = WinPort
def test_show_results_html_file(self):
@@ -57,8 +58,7 @@
self.assertTrue(stderr.endswith("test.html'], cwd=/mock-checkout\n"))
def _assert_search_path(self, expected_search_paths, version, use_webkit2=False):
- host = MockSystemHost(os_name='win', os_version=version)
- port = WinPort(host, options=MockOptions(webkit_test_runner=use_webkit2))
+ port = self.make_port(port_name='win', os_version=version, options=MockOptions(webkit_test_runner=use_webkit2))
absolute_search_paths = map(port._webkit_baseline_path, expected_search_paths)
self.assertEquals(port.baseline_search_path(), absolute_search_paths)
@@ -66,12 +66,10 @@
self._assert_search_path(['win-xp', 'win-vista', 'win-7sp0', 'win', 'mac-lion', 'mac'], 'xp')
self._assert_search_path(['win-vista', 'win-7sp0', 'win', 'mac-lion', 'mac'], 'vista')
self._assert_search_path(['win-7sp0', 'win', 'mac-lion', 'mac'], '7sp0')
- self._assert_search_path(['win', 'mac-lion', 'mac'], 'bogus')
self._assert_search_path(['win-wk2', 'win-xp', 'win-vista', 'win-7sp0', 'win', 'mac-wk2', 'mac-lion', 'mac'], 'xp', use_webkit2=True)
self._assert_search_path(['win-wk2', 'win-vista', 'win-7sp0', 'win', 'mac-wk2', 'mac-lion', 'mac'], 'vista', use_webkit2=True)
self._assert_search_path(['win-wk2', 'win-7sp0', 'win', 'mac-wk2', 'mac-lion', 'mac'], '7sp0', use_webkit2=True)
- self._assert_search_path(['win-wk2', 'win', 'mac-wk2', 'mac-lion', 'mac'], 'bogus', use_webkit2=True)
def _assert_version(self, port_name, expected_version):
host = MockSystemHost(os_name='win', os_version=expected_version)
Modified: trunk/Tools/Scripts/webkitpy/tool/servers/rebaselineserver_unittest.py (104842 => 104843)
--- trunk/Tools/Scripts/webkitpy/tool/servers/rebaselineserver_unittest.py 2012-01-12 20:04:31 UTC (rev 104842)
+++ trunk/Tools/Scripts/webkitpy/tool/servers/rebaselineserver_unittest.py 2012-01-12 20:06:34 UTC (rev 104843)
@@ -310,6 +310,9 @@
class TestMacPort(WebKitPort):
port_name = "mac"
+ def __init__(self, host):
+ WebKitPort.__init__(self, host, port_name=self.port_name)
+
return TestConfig(
TestMacPort(host),
layout_tests_directory,