1. 27 Aug, 2013 1 commit
  2. 12 Jul, 2013 1 commit
  3. 04 Jun, 2013 1 commit
  4. 03 Jun, 2013 1 commit
    • bfulgham@apple.com's avatar
      [Windows] NRWT is not putting crash logs in proper place · 83cf9d0f
      bfulgham@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=117098
      
      Reviewed by Ryosuke Niwa.
      
      Provide windows-specific overloads for various Port features needed to create and capture
      crash logs.  This change makes it possible to view crash logs (when created) as part of the
      summary report at the end of the NRWT run.
      
      * Scripts/webkitpy/common/system/crashlogs.py:
      (CrashLogs.find_newest_log): Add support for win32 crash logs
      (CrashLogs._find_newest_log_win): Added
      * Scripts/webkitpy/common/system/crashlogs_unittest.py:
      (make_mock_crash_report_win): Added
      (CrashLogsTest.test_find_log_win): Added.
      * Scripts/webkitpy/common/system/executive.py:
      (Executive.running_pids): Add support for Cygwin win32 crash logs
      * Scripts/webkitpy/common/system/executive_mock.py:
      (MockExecutive.__init__):
      * Scripts/webkitpy/common/system/filesystem_unittest.py:
      (RealFileSystemTest.test_read_and_write_file): Add tests for
      malformed ascii/utf8 handling (i.e., Windows log files)
      * Scripts/webkitpy/port/base.py:
      (Port.find_system_pid): Added
      * Scripts/webkitpy/port/server_process.py:
      (ServerProcess._start): Gather windows PIDs to match up with Cygwin PIDs
      * Scripts/webkitpy/port/win.py:
      (WinPort.setup_crash_log_saving): Don't open windows shell (which might get stuck waiting
      for user to hit enter.
      (WinPort._get_crash_log): Added
      (WinPort.look_for_new_crash_logs): Added
      (WinPort.find_system_pid): Added
      * Scripts/webkitpy/port/win_unittest.py:
      (WinPortTest.test_get_crash_log): Added test
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@151151 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      83cf9d0f
  5. 31 May, 2013 1 commit
  6. 30 May, 2013 2 commits
  7. 28 May, 2013 1 commit
    • bfulgham@apple.com's avatar
      [Windows] NRWT reports failure for 'mac' test cases. · 10ed2562
      bfulgham@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=116698
      
      Reviewed by Ryosuke Niwa.
      
      The Windows port falls back to the Mac port for many test results,
      and so adds the mac and mac-wk2 to its set of fallbacks.
      Unfortunately, NRWT thinks that this means that tests in these
      folders should be executed, resulting in many failures on
      Windows.
      
      This change overloads the '_tests_for_other_platforms' method
      to return a subset of the result fallback list so that we do
      not attempt to execute Mac tests on Windows.
      
      * Scripts/webkitpy/port/base.py:
      (Port.test_search_path): Added. Defaults to just calling the
      baseline_search_path method, which is how most ports behave.
      (Port._test_for_other_platforms): Modified to call the new
      test_search_path method.
      
      * Scripts/webkitpy/port/win.py:
      (WinPort.test_search_path): Added custom overload. Strips
      out mac-specific test paths.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@150850 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      10ed2562
  8. 24 May, 2013 1 commit
    • bfulgham@apple.com's avatar
      [Windows] Expose database storage and cache locations via preferences. · a5362965
      bfulgham@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=116729
      
      Reviewed by Tim Horton.
      
      Source/WebKit: 
      
      * WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in: Export
      three symbols needed to implement the feature.
      
      Source/WebKit/win: 
      
      * WebDatabaseManager.cpp: Update to check preferences for the
      desired location of the database store.
      (databasesDirectory): Added.
      (WebKitInitializeWebDatabasesIfNecessary): Use new databasesDirectory
      method to determine what system path to use for file storage.
      * WebKit.vcproj/WebKitExports.def.in: Export three symbols
      needed to implement the feature.
      * WebView.cpp: Update to check preferences for the desired location
      of the various caches used by WebKit.
      (WebView::setCacheModel): Update to check preferences for URL cache
      storage.
      (WebKitSetApplicationCachePathIfNecessary): Update to check
      preferences for ccache storage.
      
      Tools: 
      
      Update DumpRenderTree to use CFPreferences to control where WebKit
      stores its local databases, URL caches, etc.
      
      * DumpRenderTree/win/DumpRenderTree.cpp:
      (libraryPathForDumpRenderTree): Added.
      (dllLauncherEntryPoint): Set up DRT-specific cache locations.
      * Scripts/webkitpy/port/base.py:
      (Port._driver_tempdir): Added (to allow port-specific overload).
      (Port._driver_tempdir_for_environment): Ditto
      * Scripts/webkitpy/port/driver.py:
      (Driver._setup_environ_for_driver): Use new overload to set
      environment variable.
      (Driver._start): Use new overload for temp directory location.
      * Scripts/webkitpy/port/win.py:
      (WinPort._driver_tempdir_for_environment): New overload to supply
      Windows path to DumpRenderTree environment (while still using
      cygwin paths for internal operations.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@150670 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a5362965
  9. 23 May, 2013 2 commits
  10. 16 Apr, 2013 1 commit
    • rniwa@webkit.org's avatar
      Move webkitpy.layout_tests.port to webkitpy.port · b856b35d
      rniwa@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=114668
      
      Reviewed by Maciej Stachowiak.
      
      Moved. Port objects knows a lot more than just layout_tests. They doesn't belong down in layout_tests.
      
      * Scripts/webkitpy/common/host.py:
      * Scripts/webkitpy/common/host_mock.py:
      * Scripts/webkitpy/layout_tests/controllers/layout_test_runner_unittest.py:
      * Scripts/webkitpy/layout_tests/controllers/single_test_runner.py:
      * Scripts/webkitpy/layout_tests/controllers/test_result_writer_unittest.py:
      * Scripts/webkitpy/layout_tests/layout_package/json_results_generator_unittest.py:
      * Scripts/webkitpy/layout_tests/lint_test_expectations.py:
      * Scripts/webkitpy/layout_tests/port: Removed.
      * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
      * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
      * Scripts/webkitpy/layout_tests/servers/apache_http_server_unittest.py:
      * Scripts/webkitpy/layout_tests/servers/http_server_base_unittest.py:
      * Scripts/webkitpy/layout_tests/servers/http_server_unittest.py:
      * Scripts/webkitpy/layout_tests/views/printing_unittest.py:
      * Scripts/webkitpy/performance_tests/perftest.py:
      * Scripts/webkitpy/performance_tests/perftest_unittest.py:
      * Scripts/webkitpy/performance_tests/perftestsrunner_integrationtest.py:
      * Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:
      * Scripts/webkitpy/port: Copied from Tools/Scripts/webkitpy/layout_tests/port.
      * Scripts/webkitpy/port/apple.py:
      * Scripts/webkitpy/port/base.py:
      * Scripts/webkitpy/port/base_unittest.py:
      * Scripts/webkitpy/port/config_unittest.py:
      (ConfigTest.test_default_configuration__standalone):
      * Scripts/webkitpy/port/driver_unittest.py:
      * Scripts/webkitpy/port/efl.py:
      * Scripts/webkitpy/port/efl_unittest.py:
      * Scripts/webkitpy/port/factory.py:
      * Scripts/webkitpy/port/factory_unittest.py:
      * Scripts/webkitpy/port/gtk.py:
      * Scripts/webkitpy/port/gtk_unittest.py:
      * Scripts/webkitpy/port/image_diff.py:
      * Scripts/webkitpy/port/image_diff_unittest.py:
      * Scripts/webkitpy/port/leakdetector_unittest.py:
      * Scripts/webkitpy/port/mac.py:
      * Scripts/webkitpy/port/mac_unittest.py:
      * Scripts/webkitpy/port/mock_drt.py:
      * Scripts/webkitpy/port/mock_drt_unittest.py:
      * Scripts/webkitpy/port/port_testcase.py:
      * Scripts/webkitpy/port/qt.py:
      * Scripts/webkitpy/port/qt_unittest.py:
      * Scripts/webkitpy/port/server_process_unittest.py:
      * Scripts/webkitpy/port/test.py:
      * Scripts/webkitpy/port/win.py:
      * Scripts/webkitpy/port/win_unittest.py:
      * Scripts/webkitpy/port/xvfbdriver.py:
      * Scripts/webkitpy/port/xvfbdriver_unittest.py:
      * Scripts/webkitpy/tool/bot/botinfo_unittest.py:
      * Scripts/webkitpy/tool/commands/gardenomatic.py:
      * Scripts/webkitpy/tool/commands/perfalizer_unittest.py:
      * Scripts/webkitpy/tool/commands/queries.py:
      * Scripts/webkitpy/tool/commands/queries_unittest.py:
      * Scripts/webkitpy/tool/commands/rebaseline.py:
      * Scripts/webkitpy/tool/servers/gardeningserver.py:
      * Scripts/webkitpy/tool/servers/gardeningserver_unittest.py:
      * Scripts/webkitpy/tool/servers/rebaselineserver.py:
      * Scripts/webkitpy/tool/servers/rebaselineserver_unittest.py:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@148502 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b856b35d
  11. 13 Dec, 2012 1 commit
    • dpranke@chromium.org's avatar
      support -wk2 port names properly in webkitpy.layout_tests.port · c7ef8095
      dpranke@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=104761
      
      Reviewed by Eric Seidel.
      
      Our support for WK2 port names was inconsistent at best; this patch
      modifies the code so that <port_name>-wk2 is supported for all ports that
      have WK2 implementations and is equivalent to specifying <port_name>
      and -2/--webkit-test-runner. In addition, this modifies
      builders.all_port_names() to include the wk2 variants.
      
      * Scripts/webkitpy/common/checkout/baselineoptimizer.py:
      * Scripts/webkitpy/layout_tests/port/apple.py:
      (ApplePort.determine_full_port_name):
      * Scripts/webkitpy/layout_tests/port/base.py:
      (Port.determine_full_port_name):
      (Port.__init__):
      * Scripts/webkitpy/layout_tests/port/builders.py:
      * Scripts/webkitpy/layout_tests/port/driver_unittest.py:
      (DriverTest.make_port):
      * Scripts/webkitpy/layout_tests/port/mac.py:
      (MacPort.default_baseline_search_path):
      * Scripts/webkitpy/layout_tests/port/win.py:
      (WinPort.default_baseline_search_path):
      * Scripts/webkitpy/tool/commands/rebaseline_unittest.py:
      (TestRebaselineExpectations.test_rebaseline_expectations):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@137650 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c7ef8095
  12. 21 Aug, 2012 1 commit
    • dpranke@chromium.org's avatar
      Add mountain lion to perf-tests, layout tests · 6a760435
      dpranke@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=94553
      
      Reviewed by Adam Barth.
      
      This patch adds support for the 'mac-mountainlion' platform and
      stamps out the last references to 'mac-leopard' as a supported
      name.
      
      This patch does a small amount of refactoring to try and make
      things a little clearer how we treat the "most recent version"
      specially for baselines and skipped files, and so you only
      should have to touch the VERSION_FALLBACK_ORDER constants on the
      ports, but unfortunately changing this list changes a bunch of
      the unit tests which are doing exact matches for correctness, so
      you have to touch more than a couple files :(. There's probably
      still more refactoring that can be done so that we don't have to
      do all of this functional testing to feel completely correct.
      
      * Scripts/webkitpy/common/system/platforminfo.py:
      (PlatformInfo._determine_mac_version):
      * Scripts/webkitpy/common/system/platforminfo_unittest.py:
      (TestPlatformInfo.test_os_version):
      * Scripts/webkitpy/layout_tests/port/apple.py:
      (ApplePort.__init__):
      (ApplePort):
      (ApplePort._skipped_file_search_paths):
      (ApplePort._generate_all_test_configurations):
      * Scripts/webkitpy/layout_tests/port/chromium_mac.py:
      (ChromiumMacPort):
      * Scripts/webkitpy/layout_tests/port/factory_unittest.py:
      (FactoryTest.test_mac):
      * Scripts/webkitpy/layout_tests/port/mac.py:
      (MacPort):
      (MacPort._build_driver_flags):
      (MacPort.should_retry_crashes):
      (MacPort.default_baseline_search_path):
      (MacPort.operating_system):
      (MacPort.default_child_processes):
      * Scripts/webkitpy/layout_tests/port/mac_unittest.py:
      (MacTest):
      (MacTest.test_skipped_file_search_paths):
      (test_versions):
      (test_baseline_search_path):
      * Scripts/webkitpy/layout_tests/port/win.py:
      (WinPort):
      (WinPort.default_baseline_search_path):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@126247 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6a760435
  13. 25 Jul, 2012 1 commit
  14. 13 Jun, 2012 1 commit
    • dpranke@chromium.org's avatar
      new-run-webkit-tests does not support --32-bit like ORWT did · 092d91ea
      dpranke@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=71634
      
      Reviewed by Ojan Vafai.
      
      This patch adds support for 32-bit apple mac builds, adding the
      --32-bit flag for compatibility with ORWT and fixing the port
      architecture() definition to actually return the correct values.
      
      * Scripts/webkitpy/layout_tests/port/apple.py:
      (ApplePort._generate_all_test_configurations):
      * Scripts/webkitpy/layout_tests/port/factory.py:
      (port_options):
      * Scripts/webkitpy/layout_tests/port/mac.py:
      (MacPort):
      (MacPort.__init__):
      (MacPort._build_driver_flags):
      (MacPort.setup_environ_for_server):
      * Scripts/webkitpy/layout_tests/port/mac_unittest.py:
      (test_sample_process_throws_exception):
      (test_32bit):
      (test_32bit.run_script):
      (test_64bit):
      (test_64bit.run_script):
      * Scripts/webkitpy/layout_tests/port/webkit.py:
      (WebKitPort._build_driver):
      (WebKitPort._build_driver_flags):
      * Scripts/webkitpy/layout_tests/port/win.py:
      (WinPort):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120252 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      092d91ea
  15. 05 Jun, 2012 1 commit
    • dpranke@chromium.org's avatar
      webkitpy: clean up win-specific path handling and tests · f053bf1c
      dpranke@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=88281
      
      Reviewed by Adam Barth.
      
      There was a bunch of inconsistent logic for handling path
      conversions for win32 and cygwin paths due to us sometimes
      looking at sys.platform and sometimes using mock hosts. This
      patch cleans everything up so that we are required to pass
      PlatformInfo objects to the path module and stop trying to do
      different things when running on cygwin or win32 hosts (except
      in the path_unittest module itself).
      
      This may slightly reduce test coverage for the win32 code paths
      but will be a lot easier to follow and maintain.
      
      * Scripts/webkitpy/common/system/path.py:
      (abspath_to_uri):
      (_convert_path):
      * Scripts/webkitpy/common/system/path_unittest.py:
      (AbspathTest.platforminfo):
      (AbspathTest.test_abspath_to_uri_cygwin):
      (AbspathTest.test_abspath_to_uri_unixy):
      (AbspathTest.test_abspath_to_uri_win):
      (AbspathTest.test_abspath_to_uri_escaping_unixy):
      (AbspathTest.test_abspath_to_uri_escaping_cygwin):
      (AbspathTest.test_stop_cygpath_subprocess):
      * Scripts/webkitpy/common/system/platforminfo.py:
      (PlatformInfo.__init__):
      (PlatformInfo.is_cygwin):
      * Scripts/webkitpy/common/system/platforminfo_mock.py:
      (MockPlatformInfo.is_cygwin):
      * Scripts/webkitpy/layout_tests/port/base.py:
      (Port.to.show_results_html_file):
      * Scripts/webkitpy/layout_tests/port/driver.py:
      (Driver.test_to_uri):
      (Driver.uri_to_test):
      * Scripts/webkitpy/layout_tests/port/driver_unittest.py:
      (DriverTest.test_test_to_uri):
      (DriverTest.test_uri_to_test):
      * Scripts/webkitpy/layout_tests/port/mock_drt_unittest.py:
      (MockDRTPortTest.make_port):
      (MockDRTTest.input_line):
      (MockChromiumDRTTest.test_pixeltest__fails):
      * Scripts/webkitpy/layout_tests/port/test.py:
      * Scripts/webkitpy/layout_tests/port/win.py:
      (WinPort.show_results_html_file):
      * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
      (MainTest.test_unexpected_failures):
      (MainTest.test_results_directory_absolute):
      (MainTest.test_results_directory_default):
      (MainTest.test_results_directory_relative):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@119520 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f053bf1c
  16. 12 Mar, 2012 1 commit
    • dpranke@chromium.org's avatar
      _runtime_feature_list isn't supported on Apple Mac DRT · acbcf63d
      dpranke@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=80906
      
      Reviewed by Eric Seidel.
      
      It looks like this feature is actually only supported on the Win
      DRT port, so this patch reworks the code to make that clearer
      and reduce unnecessary overrides.
      
      * Scripts/webkitpy/layout_tests/port/efl.py:
      (EflPort._path_to_webcore_library):
      * Scripts/webkitpy/layout_tests/port/gtk.py:
      (GtkPort._path_to_webcore_library):
      * Scripts/webkitpy/layout_tests/port/qt.py:
      (QtPort._skipped_file_search_paths):
      * Scripts/webkitpy/layout_tests/port/webkit.py:
      (WebKitPort._runtime_feature_list):
      * Scripts/webkitpy/layout_tests/port/webkit_unittest.py:
      (TestWebKitPort.__init__):
      (TestWebKitPort.all_test_configurations):
      (test_skipped_directories_for_features):
      * Scripts/webkitpy/layout_tests/port/win.py:
      (WinPort):
      (WinPort._runtime_feature_list):
      * Scripts/webkitpy/layout_tests/port/win_unittest.py:
      (WinPortTest.test_operating_system):
      (WinPortTest):
      (WinPortTest.test_runtime_feature_list):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@110513 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      acbcf63d
  17. 09 Feb, 2012 1 commit
    • eric@webkit.org's avatar
      Rename compare_text and compare_audio to make it clear that they're != · c765a39b
      eric@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=78301
      
      Reviewed by Adam Barth.
      
      I also removed the maybe_create_directory function which was redundant.
      
      * Scripts/webkitpy/layout_tests/controllers/manager.py:
      (Manager.set_up_run):
      * Scripts/webkitpy/layout_tests/controllers/test_result_writer.py:
      (TestResultWriter._make_output_directory):
      * Scripts/webkitpy/layout_tests/port/base.py:
      (Port.do_text_results_differ):
      (Port.do_audio_results_differ):
      (Port.diff_text):
      (Port.driver_name):
      (Port.skips_perf_test):
      * Scripts/webkitpy/layout_tests/port/win.py:
      (WinPort.do_text_results_differ):
      * Scripts/webkitpy/layout_tests/port/win_unittest.py:
      (WinPortTest.test_do_text_results_differ):
      * Scripts/webkitpy/layout_tests/servers/apache_http_server.py:
      (LayoutTestApacheHttpd.__init__):
      * Scripts/webkitpy/layout_tests/servers/http_server_base.py:
      (HttpServerBase.__init__):
      * Scripts/webkitpy/to_be_moved/rebaseline_chromium_webkit_tests.py:
      (Rebaseliner._diff_baselines):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@107361 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c765a39b
  18. 25 Jan, 2012 1 commit
    • dpranke@chromium.org's avatar
      investigate use of 'mac' and 'win' as fully-specified port names for the apple ports · 16cea604
      dpranke@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=76475
      
      Reviewed by Eric Seidel.
      
      This patch cleans up the internal usage of port names for the
      Apple mac and Apple win ports so that 'mac' and 'win are never
      considered "fully specified" port names: they are still legal
      input to the PortFactory.get() routine, but only if run on the given
      platform (i.e. trying to PortFactory.get('mac') on windows or
      linux will return an error, since we don't know which version of
      the port is desired.
      
      This also cleans up handling of the webkit2 variants, so that
      the full port names consistently follow the
      <operating_system>-<version>[-<wk2>] convention.
      
      Lastly this patch adds some assertions and removes some
      try/catch logic to catch more programming and usage errors;
      previously mac-tiger might've been allowed -- and it would've
      translated into using just the baselines in platform/mac -- but
      now it should fail.
      
      * Scripts/webkitpy/layout_tests/port/apple.py:
      (ApplePort.determine_full_port_name):
      (ApplePort.__init__):
      (ApplePort):
      (ApplePort._port_name_with_version):
      * Scripts/webkitpy/layout_tests/port/builders.py:
      * Scripts/webkitpy/layout_tests/port/factory_unittest.py:
      (FactoryTest.test_mac):
      (FactoryTest.test_win):
      * Scripts/webkitpy/layout_tests/port/mac.py:
      (MacPort.baseline_search_path):
      * Scripts/webkitpy/layout_tests/port/mac_unittest.py:
      (MacTest.test_versions):
      * Scripts/webkitpy/layout_tests/port/win.py:
      (WinPort.baseline_search_path):
      * Scripts/webkitpy/layout_tests/port/win_unittest.py:
      (WinTest.test_versions):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105951 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      16cea604
  19. 11 Jan, 2012 1 commit
    • dpranke@chromium.org's avatar
      webkitpy: clean up version detection in webkitpy.layout_tests.port · 93d03e26
      dpranke@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=76016
      
      Reviewed by Adam Barth.
      
      This change updates the code in webkitpy.layout_tests.port to
      use the new os_name and os_version fields on host.platform. This
      gets layout_tests.port out of the version parsing business. Most
      of the diffs are just cleaning up test code to accomodate the
      changes.
      
      * Scripts/webkitpy/common/system/executive_mock.py:
      (MockExecutive):
      (MockExecutive.ignore_error):
      (MockExecutive2):
      (MockExecutive2.ignore_error):
      * Scripts/webkitpy/common/system/platforminfo_mock.py:
      (MockPlatformInfo.is_mac):
      (MockPlatformInfo.is_linux):
      (MockPlatformInfo.is_win):
      * Scripts/webkitpy/common/system/systemhost_mock.py:
      (MockSystemHost.__init__):
      * Scripts/webkitpy/layout_tests/port/apple.py:
      (ApplePort.__init__):
      * Scripts/webkitpy/layout_tests/port/chromium_mac.py:
      (ChromiumMacPort.__init__):
      (ChromiumMacPort.check_wdiff):
      * Scripts/webkitpy/layout_tests/port/chromium_mac_unittest.py:
      (ChromiumMacPortTest):
      (ChromiumMacPortTest.assert_name):
      (ChromiumMacPortTest.test_versions):
      * Scripts/webkitpy/layout_tests/port/chromium_unittest.py:
      (ChromiumPortTest.test_all_test_configurations):
      (ChromiumPortTest.TestMacPort.__init__):
      (ChromiumPortTest.TestLinuxPort.__init__):
      (ChromiumPortTest.TestWinPort.__init__):
      * Scripts/webkitpy/layout_tests/port/chromium_win.py:
      (ChromiumWinPort.__init__):
      * Scripts/webkitpy/layout_tests/port/chromium_win_unittest.py:
      (ChromiumWinTest):
      (ChromiumWinTest.assert_name):
      (ChromiumWinTest.test_versions):
      (ChromiumWinTest.test_baseline_path):
      (ChromiumWinTest.test_build_path):
      * Scripts/webkitpy/layout_tests/port/factory.py:
      (PortFactory._port_name_from_arguments_and_options):
      (PortFactory.get):
      * Scripts/webkitpy/layout_tests/port/factory_unittest.py:
      (FactoryTest):
      (FactoryTest.setUp):
      (FactoryTest.assert_port):
      (FactoryTest.test_mac):
      (FactoryTest.test_win):
      (FactoryTest.test_google_chrome):
      (FactoryTest.test_gtk):
      (FactoryTest.test_qt):
      (FactoryTest.test_chromium_gpu):
      (FactoryTest.test_chromium_gpu_linux):
      (FactoryTest.test_chromium_gpu_mac):
      (FactoryTest.test_chromium_gpu_win):
      (FactoryTest.test_chromium_mac):
      (FactoryTest.test_chromium_linux):
      (FactoryTest.test_chromium_win):
      (FactoryTest.test_unknown_specified):
      (FactoryTest.test_unknown_default):
      * Scripts/webkitpy/layout_tests/port/google_chrome_unittest.py:
      (TestGoogleChromePort):
      (TestGoogleChromePort._verify_baseline_path):
      (TestGoogleChromePort._verify_expectations_overrides):
      (TestGoogleChromePort.test_get_google_chrome_port):
      * Scripts/webkitpy/layout_tests/port/mac.py:
      (MacPort):
      * Scripts/webkitpy/layout_tests/port/mac_unittest.py:
      (MacTest):
      (assert_name):
      (test_tests_for_other_platforms):
      (test_version):
      (test_versions):
      (test_is_version_methods):
      (test_setup_environ_for_server):
      (_assert_search_path):
      (test_show_results_html_file):
      * Scripts/webkitpy/layout_tests/port/port_testcase.py:
      (PortTestCase):
      (PortTestCase.make_port):
      * Scripts/webkitpy/layout_tests/port/win.py:
      (WinPort):
      * Scripts/webkitpy/layout_tests/port/win_unittest.py:
      (WinPortTest):
      (WinPortTest.test_show_results_html_file):
      (WinPortTest._assert_search_path):
      (WinPortTest._assert_version):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@104725 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      93d03e26
  20. 10 Jan, 2012 1 commit
    • dpranke@chromium.org's avatar
      webkitpy: add os_name, os_version to platforminfo · 3f5b724e
      dpranke@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=75931
      
      Reviewed by Eric Siedel.
      
      As a first step in cleaning up the version parsing logic in
      webkitpy.layout_tests.port, this adds common routines for
      getting the os_name and os_version fields to the PlatformInfo
      class. Nothing uses them yet but I've added FIXME's to some of
      the code that needs to be deleted in the port files.
      
      * Scripts/webkitpy/common/system/platforminfo.py:
      (PlatformInfo.__init__):
      (PlatformInfo):
      (PlatformInfo._determine_os_name):
      (PlatformInfo._determine_mac_version):
      (PlatformInfo._determine_linux_version):
      (PlatformInfo._determine_win_version):
      (PlatformInfo.display_name):
      (PlatformInfo.total_bytes_memory):
      (PlatformInfo._compute_bytes_from_vm_stat_output):
      (PlatformInfo.free_bytes_memory):
      * Scripts/webkitpy/common/system/platforminfo_unittest.py: Added.
      (TestPlatformInfo):
      (TestPlatformInfo.make_info):
      (TestPlatformInfo.make_info.mock_run_command):
      (TestPlatformInfo.setUp):
      (TestPlatformInfo.tearDown):
      (TestPlatformInfo.test_basic):
      (TestPlatformInfo.integration_test_basic):
      (TestPlatformInfo.test_display_name_mac):
      (TestPlatformInfo.test_display_name_win32):
      (TestPlatformInfo.test_memory_mac):
      (TestPlatformInfo.test_memory_win32):
      (TestPlatformInfo.test_determine_os_name):
      (TestPlatformInfo.test_determine_mac_version):
      (TestPlatformInfo.test_determine_linux_version):
      (TestPlatformInfo.test_determine_win_version_from_tuple):
      (TestPlatformInfo.test_determine_win_version_from_cmd):
      * Scripts/webkitpy/layout_tests/port/apple.py:
      (ApplePort.__init__):
      * Scripts/webkitpy/layout_tests/port/chromium_mac.py:
      (ChromiumMacPort.__init__):
      * Scripts/webkitpy/layout_tests/port/mac.py:
      (MacPort):
      * Scripts/webkitpy/layout_tests/port/win.py:
      (WinPort):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@104637 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3f5b724e
  21. 05 Jan, 2012 2 commits
  22. 03 Jan, 2012 1 commit
    • aroben@apple.com's avatar
      Make Port subclasses override the operating_system method rather than setting an attribute · 2b9314be
      aroben@apple.com authored
      Without this patch, any use of Port.operating_system() within a port's __init__ method would
      return the default value ("mac"). This was confusing the version-checking logic inside
      ApplePort.__init__ on Windows.
      
      Fixes <http://webkit.org/b/75479> <rdar://problem/10637385> REGRESSION (r102161): NRWT
      crashes on launch on Windows 7 SP1
      
      Reviewed by Eric Seidel.
      
      * Scripts/webkitpy/layout_tests/port/apple.py:
      (ApplePort.__init__): Replaced uses of self._operating_system with self.operating_system().
      
      * Scripts/webkitpy/layout_tests/port/base.py:
      (Port.__init__): Removed code that set the self._operating_system attribute. Subclasses
      should now override the operating_system method instead.
      (Port.operating_system): Changed to always return "mac". Subclasses should override to
      return something else.
      
      * Scripts/webkitpy/layout_tests/port/chromium_linux.py:
      (ChromiumLinuxPort.__init__):
      (ChromiumLinuxPort.operating_system):
      * Scripts/webkitpy/layout_tests/port/chromium_mac.py:
      (ChromiumMacPort.__init__):
      (ChromiumMacPort.operating_system):
      * Scripts/webkitpy/layout_tests/port/chromium_win.py:
      (ChromiumWinPort.__init__):
      (ChromiumWinPort.operating_system):
      * Scripts/webkitpy/layout_tests/port/mac.py:
      (MacPort.__init__):
      (MacPort.operating_system):
      * Scripts/webkitpy/layout_tests/port/win.py:
      (WinPort.__init__):
      (WinPort.operating_system):
      Changed to override the operating_system method rather than setting the _operating_system
      attribute, since setting the attribute isn't sufficient for code inside __init__ methods.
      
      * Scripts/webkitpy/layout_tests/port/qt.py:
      (QtPort.__init__):
      (QtPort._path_to_webcore_library):
      Changed to use self.operating_system() instead of self._operating_system, for consistency
      with other Port-related code.
      
      (QtPort.operating_system): Added this override of Port.operating_system that returns the
      value we determined in our __init__ method.
      
      * Scripts/webkitpy/layout_tests/port/test.py:
      (TestPort.operating_system): Added this override of Port.operating_system that returns the
      value we determined in our __init__ method.
      
      * Scripts/webkitpy/layout_tests/port/base_unittest.py:
      (PortTest.test_operating_system):
      * Scripts/webkitpy/layout_tests/port/chromium_linux_unittest.py:
      (ChromiumLinuxPortTest.test_operating_system):
      * Scripts/webkitpy/layout_tests/port/chromium_mac_unittest.py:
      (ChromiumMacPortTest.test_operating_system):
      * Scripts/webkitpy/layout_tests/port/chromium_win_unittest.py:
      (ChromiumWinPortTest.test_operating_system):
      * Scripts/webkitpy/layout_tests/port/mac_unittest.py:
      (MacPortTest.test_operating_system):
      * Scripts/webkitpy/layout_tests/port/qt_unittest.py:
      (QtPortTest.test_operating_system):
      * Scripts/webkitpy/layout_tests/port/win_unittest.py:
      (WinPortTest.test_operating_system):
      Test that all ports return the expected operating system string.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@103952 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2b9314be
  23. 06 Dec, 2011 1 commit
    • abarth@webkit.org's avatar
      NRWT fails on unreleased versions of Mac OS X · 0ff022fa
      abarth@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=72748
      
      Reviewed by Dirk Pranke.
      
      Hopefully this patch will make NRWT work on future versions on Mac OS X.
      Most of the infrastructure was already in place, but there were some
      asserts that failed.  I've tested this patch by haxoring the version
      detection logic to simulate an unknown version.  We might need to
      iterate based on feedback from folks with a real future version.
      
      * Scripts/webkitpy/layout_tests/port/apple.py:
      (ApplePort.__init__):
          - mac-future is an allowed port_name that's used internally by
            webkitpy to represent future versions of Mac OS X.
      * Scripts/webkitpy/layout_tests/port/mac_unittest.py:
      (test_versions):
          - Test that we don't throw exceptions when dealing with future
            versions of Mac OS X.
      * Scripts/webkitpy/layout_tests/port/webkit.py:
      (WebKitPort._expectations_from_skipped_files):
          - Demote this logging message to "debug".  It's expected that
            mac-future doesn't have a Skipped file.
      * Scripts/webkitpy/layout_tests/port/mac.py:
      (MacPort.__init__):
      * Scripts/webkitpy/layout_tests/port/win.py:
      (WinPort.__init__):
          - Re-order some code in these constructors so that
            self._operating_system is available to the ApplePort constructor.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@102161 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0ff022fa
  24. 17 Nov, 2011 1 commit
    • eric@webkit.org's avatar
      new-run-webkit-tests is locale dependent · 9921067f
      eric@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=68691
      
      Reviewed by Adam Barth.
      
      Make NRWT use a clean environment, just like ORWT did.
      
      * Scripts/webkitpy/layout_tests/port/base.py:
      * Scripts/webkitpy/layout_tests/port/chromium.py:
      * Scripts/webkitpy/layout_tests/port/chromium_unittest.py:
      * Scripts/webkitpy/layout_tests/port/chromium_win.py:
      * Scripts/webkitpy/layout_tests/port/chromium_win_unittest.py:
      * Scripts/webkitpy/layout_tests/port/efl.py:
      * Scripts/webkitpy/layout_tests/port/google_chrome_unittest.py:
      * Scripts/webkitpy/layout_tests/port/mac.py:
      * Scripts/webkitpy/layout_tests/port/qt.py:
      * Scripts/webkitpy/layout_tests/port/qt_unittest.py:
      * Scripts/webkitpy/layout_tests/port/webkit.py:
      * Scripts/webkitpy/layout_tests/port/win.py:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@100674 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9921067f
  25. 09 Nov, 2011 1 commit
    • eric@webkit.org's avatar
      Make the Port object have a Host · d517d451
      eric@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=71961
      
      Reviewed by Adam Barth.
      
      This has been a long time coming.
      Now that Port has a Host object, it's very easy
      to write unittests which use a properly mocked Port.
      Soon we will remove the executive, filesystem and user
      members of Port and get everything through the Host.
      
      Note how in many callsites we're actually removing
      explicit mocks, since we're now always going to get the
      correct Executive/User/FileSystem from the
      Host and callsites don't need to be careful to pass each one.
      
      This is prep-work for adding a new Environment member to
      Host and needing to be able to access the Environment
      member from Port functions w/o needing to pass an Environment
      object (or appropriate Mock) every place we create a Port object.
      Now that we have a single Host object to reach out through, its
      simple to add additional functionality (like Environment) while
      keeping our unittests properly mocked.
      
      * Scripts/webkitpy/common/host.py:
      * Scripts/webkitpy/common/net/credentials_unittest.py:
      * Scripts/webkitpy/layout_tests/controllers/manager_unittest.py:
      * Scripts/webkitpy/layout_tests/controllers/manager_worker_broker.py:
      * Scripts/webkitpy/layout_tests/port/apple.py:
      * Scripts/webkitpy/layout_tests/port/base.py:
      * Scripts/webkitpy/layout_tests/port/base_unittest.py:
      * Scripts/webkitpy/layout_tests/port/chromium.py:
      * Scripts/webkitpy/layout_tests/port/chromium_gpu.py:
      * Scripts/webkitpy/layout_tests/port/chromium_gpu_unittest.py:
      * Scripts/webkitpy/layout_tests/port/chromium_linux.py:
      * Scripts/webkitpy/layout_tests/port/chromium_linux_unittest.py:
      * Scripts/webkitpy/layout_tests/port/chromium_mac.py:
      * Scripts/webkitpy/layout_tests/port/chromium_mac_unittest.py:
      * Scripts/webkitpy/layout_tests/port/chromium_unittest.py:
      * Scripts/webkitpy/layout_tests/port/chromium_win.py:
      * Scripts/webkitpy/layout_tests/port/chromium_win_unittest.py:
      * Scripts/webkitpy/layout_tests/port/dryrun.py:
      * Scripts/webkitpy/layout_tests/port/efl.py:
      * Scripts/webkitpy/layout_tests/port/factory.py:
      * Scripts/webkitpy/layout_tests/port/google_chrome.py:
      * Scripts/webkitpy/layout_tests/port/google_chrome_unittest.py:
      * Scripts/webkitpy/layout_tests/port/gtk.py:
      * Scripts/webkitpy/layout_tests/port/mac.py:
      * Scripts/webkitpy/layout_tests/port/mac_unittest.py:
      * Scripts/webkitpy/layout_tests/port/mock_drt.py:
      * Scripts/webkitpy/layout_tests/port/mock_drt_unittest.py:
      * Scripts/webkitpy/layout_tests/port/port_testcase.py:
      * Scripts/webkitpy/layout_tests/port/qt.py:
      * Scripts/webkitpy/layout_tests/port/qt_unittest.py:
      * Scripts/webkitpy/layout_tests/port/test.py:
      * Scripts/webkitpy/layout_tests/port/webkit.py:
      * Scripts/webkitpy/layout_tests/port/webkit_unittest.py:
      * Scripts/webkitpy/layout_tests/port/win.py:
      * Scripts/webkitpy/layout_tests/port/win_unittest.py:
      * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
      * Scripts/webkitpy/to_be_moved/rebaseline_chromium_webkit_tests_unittest.py:
      * Scripts/webkitpy/tool/servers/rebaselineserver.py:
      * Scripts/webkitpy/tool/servers/rebaselineserver_unittest.py:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@99773 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d517d451
  26. 03 Nov, 2011 1 commit
    • eric@webkit.org's avatar
      Remove deprecated free functions in port.factory · a72f7d6e
      eric@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=71494
      
      Reviewed by Adam Barth.
      
      I removed port.factory.get, get_all, and all_port_names -- long-since deprecated
      free functions in factory.py.  To remove these required fixing all callsites
      to use MockHost, Host, or PortFactory where appropriate.  After this change
      we're only left with a handfull of places where we inappropraitely use a
      real Executive, FileSystem or User object during unittesting.
      
      * Scripts/webkitpy/common/checkout/baselineoptimizer_unittest.py:
       - These PortFactory overrides were from an earlier edition of my previous patch
         in the end, I removed MockPortFactory so all tests ended up with this same
         real PortFactory() with a MockHost.  This was simply redundent code.
      * Scripts/webkitpy/layout_tests/controllers/manager_unittest.py:
       - Use MockHost to get a mocked-out PortFactory.
      * Scripts/webkitpy/layout_tests/controllers/manager_worker_broker.py:
       - This code has no access to a Host object, so we just use a default PortFactory
         for now.  This will still incorrectly create real Executive/FileSystem objects
         durring unittesting, which is wrong. :(
      * Scripts/webkitpy/layout_tests/controllers/manager_worker_broker_unittest.py:
       - Use a MockHost to get a mocked PortFactory.
      * Scripts/webkitpy/layout_tests/controllers/test_expectations_editor_unittest.py:
       - Use a MockHost to get a mocked PortFactory.
      * Scripts/webkitpy/layout_tests/models/test_configuration_unittest.py:
       - ditto.
      * Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py:
       - ditto.
      * Scripts/webkitpy/layout_tests/port/__init__.py:
       - factory.get no longer exists.  Yay!
      * Scripts/webkitpy/layout_tests/port/chromium_gpu_unittest.py:
       - Use a MockHost to get a mocked PortFactory.
         To do this efficiently, I created a helper function
         and combined all these (mostly redundant) tests into one test
         with several calls to the helper function.
      * Scripts/webkitpy/layout_tests/port/chromium_unittest.py:
       - Pass MockUser and MockExecutive in these port testing subclasses.
       - I also removed a bunch of unecessary uses of mocktool. namespacing.
      * Scripts/webkitpy/layout_tests/port/chromium_win.py:
       - Awesome windows hacks should only happen on win32.  Once we started
         using MockExecutives these 'svn help' commands started printing in
         other tests, which is how I found this bug.
      * Scripts/webkitpy/layout_tests/port/dryrun.py:
       - DryRunPort has no Host, so just use a PortFactory() directly.
         This will do the wrong thing if we're unittesting the DryRun port
         but it's no worse than the existing code.
      * Scripts/webkitpy/layout_tests/port/factory.py:
       - Remove the free functions.
       - Fix argument overriding to be able to override None.
      * Scripts/webkitpy/layout_tests/port/factory_unittest.py:
       - Use a mocked-out PortFactory during testing.
      * Scripts/webkitpy/layout_tests/port/google_chrome_unittest.py:
       - Pass MockExecutive and MockUser to these manual Port instantiations.
      * Scripts/webkitpy/layout_tests/port/mock_drt.py:
       - No access to a Host object here, so just using PortFactory directly.
         This is wrong, but no more wrong than the existing code was.
      * Scripts/webkitpy/layout_tests/port/mock_drt_unittest.py:
       - Use a MockHost to get a mocked out PortFactory.
      * Scripts/webkitpy/layout_tests/port/test.py:
       - Use our fancy _set_default_overriding_none system to clean this code up and pass a MockExecutive.
      * Scripts/webkitpy/layout_tests/port/win.py:
       - Don't run cmd /c ver from WinPort.__init__ or it shows up in unittests which have logging MockExecutive
         now that we're actually passing MockExecutive to most Port instantiations during testing.
      * Scripts/webkitpy/layout_tests/port/win_unittest.py:
       - Pass our new "unittesting" bool to _detect_version when actually unittesting.
      * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
       - Host is the future.
      * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
       - Use a MockHost to get a mocked out PortFactory.  Once we have a mocked PortFactory
         we don't need to pass MockUser explicitly, it does that automatically for us.
      * Scripts/webkitpy/layout_tests/views/printing_unittest.py:
       - Use a MockHost to get a mocked out PortFactory.
      * Scripts/webkitpy/style/checkers/test_expectations.py:
       - We don't have access to a Host object, so using PortFactory() directly.
      * Scripts/webkitpy/style/checkers/test_expectations_unittest.py:
       - Remove unused variable.
      * Scripts/webkitpy/to_be_moved/rebaseline_chromium_webkit_tests.py:
       - Host isn't accessible here, so using PortFactory() directly, which
         although unfortunate is no worse than before.
      * Scripts/webkitpy/to_be_moved/rebaseline_chromium_webkit_tests_unittest.py:
       - Testing is much easier when you don't need to hack global state...
      * Scripts/webkitpy/tool/commands/expectations.py:
       - Use the port_factory on the tool.
      * Scripts/webkitpy/tool/commands/rebaseline.py:
       - ditto.
      * Scripts/webkitpy/tool/commands/rebaseline_unittest.py:
       - This unittest was wrong.  It was trying to pass the tool object, but failing to pass
         the arguments in the right order.  Fixing that made it use a MockFileSystem
         (like it had been trying to), which then required us to actually populate
         that MockFileSystem with fake expectation files (instead of using the ones on the real disk).
      * Scripts/webkitpy/tool/commands/rebaselineserver.py:
       - Get the port_factory from the tool.
      * Scripts/webkitpy/tool/servers/gardeningserver.py:
       - Ditto.
      * Scripts/webkitpy/tool/servers/gardeningserver_unittest.py:
       - Use a MockHost to get a mocked out Port object.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@99233 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a72f7d6e
  27. 30 Oct, 2011 1 commit
  28. 29 Oct, 2011 1 commit
    • eric@webkit.org's avatar
      new-run-webkit-tests is locale dependent · 664319a4
      eric@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=68691
      
      Reviewed by Adam Barth.
      
      Make NRWT use a clean environment just like ORWT did.
      I've manually validated that NRWT now copies over
      the same environment variables that ORWT did.
      This new code is exercised by existing setup_environ_for_server tests.
      
      * Scripts/webkitpy/layout_tests/port/base.py:
      * Scripts/webkitpy/layout_tests/port/efl.py:
      * Scripts/webkitpy/layout_tests/port/mac.py:
      * Scripts/webkitpy/layout_tests/port/qt.py:
      * Scripts/webkitpy/layout_tests/port/webkit.py:
      * Scripts/webkitpy/layout_tests/port/win.py:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@98819 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      664319a4
  29. 25 Oct, 2011 1 commit
  30. 16 Aug, 2011 2 commits
    • eric@webkit.org's avatar
      REGRESSION(92717): WinPort needs to parse version information from port_name · 1293e954
      eric@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=66325
      
      Reviewed by Adam Barth.
      
      WinPort didn't have any port_name parsing logic.
      Seemed it was best to just share the logic from MacPort.
      Sharing the logic from MacPort seemed easiest with a shared superclass.
      Once I created ApplePort (the superclass) there was a bunch of logic to share.
      I found LeakDetector was just in the way when switching back and forth
      between win.py and mac.py so I moved it into its own file.
      
      The only logic change here is that WinPort should now be
      able to parse port_name values like MacPort (and other ports)
      can.  The fact that ports do this in their constructors is
      wrong and a source of many bugs.  But at least now WinPort
      matches the status-quo.
      
      * Scripts/webkitpy/layout_tests/port/apple.py: Added.
      * Scripts/webkitpy/layout_tests/port/leakdetector.py: Added.
      * Scripts/webkitpy/layout_tests/port/leakdetector_unittest.py: Added.
      * Scripts/webkitpy/layout_tests/port/mac.py:
      * Scripts/webkitpy/layout_tests/port/mac_unittest.py:
      * Scripts/webkitpy/layout_tests/port/port_testcase.py:
      * Scripts/webkitpy/layout_tests/port/win.py:
      * Scripts/webkitpy/layout_tests/port/win_unittest.py:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@93176 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1293e954
    • aroben@apple.com's avatar
      Make Apple's Windows port fall back to Lion results instead of SnowLeopard · c167f77b
      aroben@apple.com authored
      Apple's Windows port now uses Lion-era versions of CoreFoundation, ICU, etc., so in theory
      should match Lion's behavior.
      
      Fixes <http://webkit.org/b/66302> Apple's Windows port matches Lion for some test results,
      but doesn't use Lion results
      
      Reviewed by David Kilzer.
      
      * Scripts/old-run-webkit-tests:
      (expectedDirectoryForTest):
      * Scripts/webkitpy/layout_tests/port/win.py:
      (WinPort.baseline_search_path):
      * Scripts/webkitpy/layout_tests/port/win_unittest.py:
      (WinPortTest.test_baseline_search_path):
      Replaced mac-snowleopard with mac-lion.
      
      * Scripts/webkitpy/common/config/build.py:
      (_should_file_trigger_build): Added an entry for the LayoutTests/platform/mac-lion
      directory, which all Apple Mac platforms and Apple Win platforms could potentially use
      results from. Removed Apple Win from being affected by mac-snowleopard changes, since it
      will no longer look there for results.
      
      * Scripts/webkitpy/common/config/build_unittest.py:
      (ShouldBuildTest.test_should_build): Tests for the above changes.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@93107 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c167f77b
  31. 11 Aug, 2011 1 commit
    • eric@webkit.org's avatar
      NRWT has wrong fallback order for Mac now that Lion exists · a1ccf271
      eric@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=66093
      
      Reviewed by Adam Barth.
      
      ORWT used a different system for fallback orders than NRWT did.
      I moved win.py to match ORWT fallback orders in bug 64486.
      This bug moves mac.py to match ORWT fallback order
      and adds 'lion' as a supported OS version.
      
      Because ChromiumMac shares OS version detection code with AppleMac
      this also added support for 'lion' to chromium mac.  Hopefully that's a good thing.
      
      * Scripts/webkitpy/layout_tests/port/chromium_mac.py:
      * Scripts/webkitpy/layout_tests/port/chromium_mac_unittest.py:
      * Scripts/webkitpy/layout_tests/port/mac.py:
      * Scripts/webkitpy/layout_tests/port/mac_unittest.py:
      * Scripts/webkitpy/layout_tests/port/win.py:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@92882 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a1ccf271
  32. 10 Aug, 2011 1 commit
  33. 09 Aug, 2011 1 commit
    • eric@webkit.org's avatar
      new-run-webkit-test's WinPort has no fallback logic · 35c74467
      eric@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=64486
      
      Reviewed by Adam Roben.
      
      I've tried to write a patch for bug 64439 twice now, and both times
      I've ended up re-writing half the port system.  So I'm breaking
      things up into smaller pieces, this being the first.
      
      WinPort still does not have any port_name parsing, so when instantiated
      with the name "win-xp" (i.e. by the rebaseline server) it will just behave as the 'win' port.
      I'll fix this in a second pass when I standardize port_name parsing for all webkit ports.
      
      Otherwise this should "just work" for windows.  I've not been able to test the
      version detection on my mac, but the unit tests show the code behaving as designed.
      
      * Scripts/webkitpy/layout_tests/port/win.py:
      * Scripts/webkitpy/layout_tests/port/win_unittest.py: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@92717 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      35c74467
  34. 27 Jul, 2011 1 commit
    • dglazkov@chromium.org's avatar
      Teach all ports about their test configurations. · abbe7024
      dglazkov@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=65278
      
      Each Port object should return a valid set of all TestConfiguration instances,
      available for this port.
      
      Reviewed by Philippe Normand.
      
      * Scripts/webkitpy/layout_tests/models/test_configuration.py: Removed TestConfiguration.all_test_configurations,
          since it is different for each port.
      * Scripts/webkitpy/layout_tests/models/test_configuration_unittest.py: Removed related test.
      * Scripts/webkitpy/layout_tests/models/test_expectations.py: Changed SpecificityCalculator to take a list of
          all test configurations as a param.
      * Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py: Adjusted arguments accordingly.
      * Scripts/webkitpy/layout_tests/port/base.py: Forced all ports to override generation of all test configurations.
      * Scripts/webkitpy/layout_tests/port/chromium.py: Implemented _generate_all_test_configurations for the port.
      * Scripts/webkitpy/layout_tests/port/gtk.py: Ditto.
      * Scripts/webkitpy/layout_tests/port/mac.py: Ditto.
      * Scripts/webkitpy/layout_tests/port/qt.py: Ditto.
      * Scripts/webkitpy/layout_tests/port/win.py:
      * Scripts/webkitpy/layout_tests/port/port_testcase.py: Added an extra test to ensure we're generating a good set.
      * Scripts/webkitpy/layout_tests/port/test.py: Implemented a fixed-in-time all_test_configurations for testing.
      * Scripts/webkitpy/layout_tests/port/webkit_unittest.py: Added a mock all_test_configurations implementation.
      * Scripts/webkitpy/layout_tests/port/win_unittest.py: Added a unit test for the port.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@91866 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      abbe7024
  35. 12 Jul, 2011 1 commit
    • eric@webkit.org's avatar
      [Qt] NRWT should pick up the right httpd config file · a590edf0
      eric@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=64086
      
      Reviewed by Adam Barth.
      
      Tools:
      
      This is more fall-out from the Port class inappropriately encapsulating
      both platform and port knowledge.  We need to split out some of this
      platform knowledge into a separate class which can be better shared
      between ports.
      
      The fix was to move all the _path_to_apache_config_file logic down
      into the WebKitPort baseclass so that all of the ports can find the
      right apache config file, regardless of what platform they may be running on.
      
      I did not move this down into base.Port (even though I considered it).
      Chromium duplicates some of this logic, but since they have separate
      subclasses for each port-OS combination (e.g. ChromiumMac, ChromiumWin)
      they wouldn't notice the change.  Eventually we'll move this logic
      out of Port entirely, and then it will be shared by all ports.
      
      I also cleaned up the http-config logic for ORWT while I was there,
      although since we're killing that code, I'm happy to revert that part
      of the change if changing it is viewed as needlessly risky.
      
      During this cleanup, I noticed that no ports use the "default" httpd.conf
      which is left over from Mac OS X Tiger (and old linux distros) which used
      Apache 1.3.  I've removed httpd.conf (and associated support in ORWT) since
      we no longer support any ports which use this httpd.conf.
      
      * Scripts/webkitperl/httpd.pm:
      (getHTTPDConfigPathForTestDirectory):
      * Scripts/webkitpy/layout_tests/port/base.py:
      * Scripts/webkitpy/layout_tests/port/gtk.py:
      * Scripts/webkitpy/layout_tests/port/mac.py:
      * Scripts/webkitpy/layout_tests/port/qt.py:
      * Scripts/webkitpy/layout_tests/port/webkit.py:
      * Scripts/webkitpy/layout_tests/port/webkit_unittest.py:
      * Scripts/webkitpy/layout_tests/port/win.py:
      * Scripts/webkitpy/layout_tests/servers/apache_http_server.py:
      
      LayoutTests:
      
      Removed this old httpd.conf file (used by Tiger and old linux distros)
      since no supported WebKit ports use it anymore.
      
      * http/conf/httpd.conf: Removed.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90810 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a590edf0
  36. 10 Jul, 2011 1 commit