Changeset 76200 in webkit


Ignore:
Timestamp:
Jan 19, 2011 8:17:09 PM (13 years ago)
Author:
dpranke@chromium.org
Message:

2011-01-19 Dirk Pranke <dpranke@chromium.org>

Unreviewed, build fix - I pulled this patch in to fix an issue
revealed by r76195 running on some new bots). Also fix a couple
of other issues revealed in testing.

nrwt: remove fs refs from layout_package/json*

https://bugs.webkit.org/show_bug.cgi?id=52754

  • Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py:
  • Scripts/webkitpy/layout_tests/layout_package/json_layout_results_generator.py:
  • Scripts/webkitpy/layout_tests/layout_package/json_results_generator_unittest.py:
  • Scripts/webkitpy/layout_tests/layout_package/test_runner.py:
  • Scripts/webkitpy/layout_tests/port/base.py:
Location:
trunk/Tools
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/Tools/ChangeLog

    r76199 r76200  
     12011-01-19  Dirk Pranke  <dpranke@chromium.org>
     2
     3        Unreviewed, build fix - I pulled this patch in to fix an issue
     4        revealed by r76195 running on some new bots). Also fix a couple
     5        of other issues revealed in testing.
     6
     7        nrwt: remove fs refs from layout_package/json*
     8
     9        https://bugs.webkit.org/show_bug.cgi?id=52754
     10
     11        * Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py:
     12        * Scripts/webkitpy/layout_tests/layout_package/json_layout_results_generator.py:
     13        * Scripts/webkitpy/layout_tests/layout_package/json_results_generator_unittest.py:
     14        * Scripts/webkitpy/layout_tests/layout_package/test_runner.py:
     15        * Scripts/webkitpy/layout_tests/port/base.py:
     16
    1172011-01-19  Dirk Pranke  <dpranke@chromium.org>
    218
  • trunk/Tools/Scripts/webkitpy/layout_tests/layout_package/json_layout_results_generator.py

    r72445 r76200  
    2828
    2929import logging
    30 import os
    3130
    3231from webkitpy.layout_tests.layout_package import json_results_generator
     
    6766        """
    6867        super(JSONLayoutResultsGenerator, self).__init__(
    69             builder_name, build_name, build_number, results_file_base_path,
     68            port, builder_name, build_name, build_number, results_file_base_path,
    7069            builder_base_url, {}, port.test_repository_paths(),
    7170            generate_incremental_results, test_results_server,
    7271            test_type, master_name)
    7372
    74         self._port = port
    7573        self._expectations = expectations
    7674
     
    182180
    183181        # Remove tests that don't exist anymore.
    184         full_path = os.path.join(self._port.layout_tests_dir(), test_name)
    185         full_path = os.path.normpath(full_path)
    186         if not os.path.exists(full_path):
     182        full_path = self._fs.join(self._port.layout_tests_dir(), test_name)
     183        full_path = self._fs.normpath(full_path)
     184        if not self._fs.exists(full_path):
    187185            del tests[test_name]
    188186
  • trunk/Tools/Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py

    r75114 r76200  
    2727# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
    2828
    29 from __future__ import with_statement
    30 
    31 import codecs
    3229import logging
    33 import os
    3430import subprocess
    3531import sys
     
    119115        "http://%s/testfile?builder=%s&name=%s&testlistjson=1&testtype=%s"
    120116
    121     def __init__(self, builder_name, build_name, build_number,
     117    def __init__(self, port, builder_name, build_name, build_number,
    122118        results_file_base_path, builder_base_url,
    123119        test_results_map, svn_repositories=None,
     
    130126
    131127        Args
     128          port: port-specific wrapper
    132129          builder_name: the builder name (e.g. Webkit).
    133130          build_name: the build name (e.g. webkit-rel).
     
    147144          master_name: the name of the buildbot master.
    148145        """
     146        self._port = port
     147        self._fs = port._filesystem
    149148        self._builder_name = builder_name
    150149        self._build_name = build_name
     
    152151        self._builder_base_url = builder_base_url
    153152        self._results_directory = results_file_base_path
    154         self._results_file_path = os.path.join(results_file_base_path,
     153        self._results_file_path = self._fs.join(results_file_base_path,
    155154            self.RESULTS_FILENAME)
    156         self._incremental_results_file_path = os.path.join(
     155        self._incremental_results_file_path = self._fs.join(
    157156            results_file_base_path, self.INCREMENTAL_RESULTS_FILENAME)
    158157
     
    255254                 ("master", self._master_name)]
    256255
    257         files = [(file, os.path.join(self._results_directory, file))
     256        files = [(file, self._fs.join(self._results_directory, file))
    258257            for file in json_files]
    259258
     
    274273        json_data = simplejson.dumps(json, separators=(',', ':'))
    275274        json_string = self.JSON_PREFIX + json_data + self.JSON_SUFFIX
    276 
    277         results_file = codecs.open(file_path, "w", "utf-8")
    278         results_file.write(json_string)
    279         results_file.close()
     275        self._fs.write_text_file(file_path, json_string)
    280276
    281277    def _get_test_timing(self, test_name):
     
    331327          in_directory: The directory where svn is to be run.
    332328        """
    333         if os.path.exists(os.path.join(in_directory, '.svn')):
     329        if self._fs.exists(self._fs.join(in_directory, '.svn')):
    334330            # Note: Not thread safe: http://bugs.python.org/issue2320
    335331            output = subprocess.Popen(["svn", "info", "--xml"],
     
    359355        error = None
    360356
    361         if os.path.exists(self._results_file_path) and not for_incremental:
    362             with codecs.open(self._results_file_path, "r", "utf-8") as file:
    363                 old_results = file.read()
     357        if self._fs.exists(self._results_file_path) and not for_incremental:
     358            old_results = self._fs.read_text_file(self._results_file_path)
    364359        elif self._builder_base_url or for_incremental:
    365360            if for_incremental:
  • trunk/Tools/Scripts/webkitpy/layout_tests/layout_package/json_results_generator_unittest.py

    r73833 r76200  
    3232import optparse
    3333import random
    34 import shutil
    35 import tempfile
    36 
     34
     35from webkitpy.common.system import filesystem_mock
    3736from webkitpy.layout_tests.layout_package import json_results_generator
    3837from webkitpy.layout_tests.layout_package import test_expectations
     38from webkitpy.thirdparty.mock import Mock
    3939
    4040
     
    8484                elapsed_time=test_timings[test])
    8585
    86         generator = json_results_generator.JSONResultsGeneratorBase(
     86        port = Mock()
     87        port._filesystem = filesystem_mock.MockFileSystem()
     88        generator = json_results_generator.JSONResultsGeneratorBase(port,
    8789            self.builder_name, self.build_name, self.build_number,
    8890            '',
  • trunk/Tools/Scripts/webkitpy/layout_tests/layout_package/test_runner.py

    r76195 r76200  
    3535create a final report.
    3636"""
     37
     38from __future__ import with_statement
    3739
    3840import errno
  • trunk/Tools/Scripts/webkitpy/layout_tests/port/base.py

    r76184 r76200  
    118118        self._pretty_patch_path = self.path_from_webkit_base("Websites",
    119119            "bugs.webkit.org", "PrettyPatch", "prettify.rb")
    120         self._pretty_patch_available = True
     120        # If we're running on a mocked-out filesystem, this file almost
     121        # certainly won't be available, so it's a good test to keep us
     122        # from erroring out later.
     123        self._pretty_patch_available = self._filesystem.exists(self._pretty_patch_path)
    121124        self.set_option_default('configuration', None)
    122125        if self._options.configuration is None:
Note: See TracChangeset for help on using the changeset viewer.