Python 3: Add support to webkitpy.browserperfdash
https://bugs.webkit.org/show_bug.cgi?id=204887

Reviewed by Stephanie Lewis.

* Scripts/test-webkitpy-python3: Add webkitpy.browserperfdash.
* Scripts/webkitpy/benchmark_runner/benchmark_runner.py: Remove urlparse dependency.
* Scripts/webkitpy/benchmark_runner/webdriver_benchmark_runner.py: Use explicit import.
* Scripts/webkitpy/benchmark_runner/webserver_benchmark_runner.py:
(WebServerBenchmarkRunner._run_one_test): Use Python 2/3 compatible urljoin.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@253184 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/Tools/ChangeLog b/Tools/ChangeLog
index 8ef25cb..4343826 100644
--- a/Tools/ChangeLog
+++ b/Tools/ChangeLog
@@ -1,3 +1,16 @@
+2019-12-05  Jonathan Bedard  <jbedard@apple.com>
+
+        Python 3: Add support to webkitpy.browserperfdash
+        https://bugs.webkit.org/show_bug.cgi?id=204887
+
+        Reviewed by Stephanie Lewis.
+
+        * Scripts/test-webkitpy-python3: Add webkitpy.browserperfdash.
+        * Scripts/webkitpy/benchmark_runner/benchmark_runner.py: Remove urlparse dependency.
+        * Scripts/webkitpy/benchmark_runner/webdriver_benchmark_runner.py: Use explicit import.
+        * Scripts/webkitpy/benchmark_runner/webserver_benchmark_runner.py:
+        (WebServerBenchmarkRunner._run_one_test): Use Python 2/3 compatible urljoin.
+
 2019-12-05  Sihui Liu  <sihui_liu@apple.com>
 
         Fix a Typo in IndexedDBInPageCache.html
diff --git a/Tools/Scripts/test-webkitpy-python3 b/Tools/Scripts/test-webkitpy-python3
index 0255734..825f791 100755
--- a/Tools/Scripts/test-webkitpy-python3
+++ b/Tools/Scripts/test-webkitpy-python3
@@ -35,6 +35,7 @@
 
 PYTHON3_COMPATIBLE_DIRECTORIES = [
   'webkitpy.benchmark_runner',
+  'webkitpy.browserperfdash',
   'webkitpy.common',
   'webkitpy.layout_tests.controllers',
   'webkitpy.layout_tests.layout_package',
diff --git a/Tools/Scripts/webkitpy/benchmark_runner/benchmark_runner.py b/Tools/Scripts/webkitpy/benchmark_runner/benchmark_runner.py
index 20ab6c2..9194226 100755
--- a/Tools/Scripts/webkitpy/benchmark_runner/benchmark_runner.py
+++ b/Tools/Scripts/webkitpy/benchmark_runner/benchmark_runner.py
@@ -10,13 +10,11 @@
 import time
 import types
 import os
-import urlparse
 
 from webkitpy.benchmark_runner.benchmark_builder import BenchmarkBuilder
 from webkitpy.benchmark_runner.benchmark_results import BenchmarkResults
 from webkitpy.benchmark_runner.browser_driver.browser_driver_factory import BrowserDriverFactory
 
-
 _log = logging.getLogger(__name__)
 
 
diff --git a/Tools/Scripts/webkitpy/benchmark_runner/webdriver_benchmark_runner.py b/Tools/Scripts/webkitpy/benchmark_runner/webdriver_benchmark_runner.py
index 8b391c5..23351a8 100755
--- a/Tools/Scripts/webkitpy/benchmark_runner/webdriver_benchmark_runner.py
+++ b/Tools/Scripts/webkitpy/benchmark_runner/webdriver_benchmark_runner.py
@@ -3,7 +3,7 @@
 import json
 import logging
 
-from benchmark_runner import BenchmarkRunner
+from webkitpy.benchmark_runner.benchmark_runner import BenchmarkRunner
 
 
 _log = logging.getLogger(__name__)
diff --git a/Tools/Scripts/webkitpy/benchmark_runner/webserver_benchmark_runner.py b/Tools/Scripts/webkitpy/benchmark_runner/webserver_benchmark_runner.py
index 6f1611e..af99d0a 100755
--- a/Tools/Scripts/webkitpy/benchmark_runner/webserver_benchmark_runner.py
+++ b/Tools/Scripts/webkitpy/benchmark_runner/webserver_benchmark_runner.py
@@ -2,12 +2,16 @@
 
 import json
 import logging
-import urlparse
+import sys
 
 from webkitpy.benchmark_runner.benchmark_runner import BenchmarkRunner
 from webkitpy.benchmark_runner.http_server_driver.http_server_driver_factory import HTTPServerDriverFactory
 from webkitpy.common.timeout_context import Timeout
 
+if sys.version_info > (3, 0):
+    from urllib.parse import urljoin
+else:
+    from urlparse import urljoin
 
 _log = logging.getLogger(__name__)
 
@@ -29,7 +33,7 @@
         result = None
         try:
             self._http_server_driver.serve(web_root)
-            url = urlparse.urljoin(self._http_server_driver.base_url(), self._plan_name + '/' + test_file)
+            url = urljoin(self._http_server_driver.base_url(), self._plan_name + '/' + test_file)
             self._browser_driver.launch_url(url, self._plan['options'], self._build_dir, self._browser_path)
             with Timeout(self._plan['timeout']):
                 result = self._get_result(url)