Fix checkin chromium dep tool's test

TBR=phoglund@webrtc.org

Bug: webrtc:8366
Change-Id: I0c01d640060d6f604d95fa02faff61917c87c7ab
Reviewed-on: https://webrtc-review.googlesource.com/77680
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23300}
This commit is contained in:
Artem Titov 2018-05-18 11:01:28 +02:00 committed by Commit Bot
parent c7da266cb8
commit a6ccd25eea

View File

@ -8,9 +8,11 @@
# be found in the AUTHORS file in the root of the source tree.
import errno
import json
import os.path
import shutil
import stat
import sys
import tempfile
import unittest
@ -30,6 +32,15 @@ FAKE_SOURCE_TEMPLATE_ROOT = os.path.join(SCRIPT_DIR, 'testdata',
'checkin_chromium_dep', 'src_root')
def _HandleRemoveReadonly(func, path, exc):
excvalue = exc[1]
if func in (os.rmdir, os.remove) and excvalue.errno == errno.EACCES:
os.chmod(path, stat.S_IRWXU | stat.S_IRWXG | stat.S_IRWXO) # 0777
func(path)
else:
raise excvalue
class TestCheckInChromiumDep(unittest.TestCase):
def setUp(self):
self._temp_dir = tempfile.mkdtemp(prefix='webrtc_test_')
@ -74,9 +85,12 @@ class TestCheckInChromiumDep(unittest.TestCase):
working_dir=repo_dir)
def tearDown(self):
shutil.rmtree(self._temp_dir)
shutil.rmtree(self._fake_chromium_repo)
shutil.rmtree(self._fake_source_repo)
shutil.rmtree(self._temp_dir, ignore_errors=False,
onerror=_HandleRemoveReadonly)
shutil.rmtree(self._fake_chromium_repo, ignore_errors=False,
onerror=_HandleRemoveReadonly)
shutil.rmtree(self._fake_source_repo, ignore_errors=False,
onerror=_HandleRemoveReadonly)
def testCheckIn(self):
third_party_dir = os.path.join(self._fake_source_repo, 'third_party')