| Index: tests/gclient_scm_test.py
|
| diff --git a/tests/gclient_scm_test.py b/tests/gclient_scm_test.py
|
| index f3d1b366c4afcfec62315b96d75d53684d359a73..ac5b801d6c93a1468124602b8014ac91816af418 100755
|
| --- a/tests/gclient_scm_test.py
|
| +++ b/tests/gclient_scm_test.py
|
| @@ -970,67 +970,6 @@ class UnmanagedGitWrapperTestCase(BaseGitWrapperTestCase):
|
| self.checkstdout('________ unmanaged solution; skipping .\n')
|
|
|
|
|
| -class GitHungTest(BaseGitWrapperTestCase):
|
| - def setUp(self):
|
| - super(GitHungTest, self).setUp()
|
| - self.old = gclient_scm.gclient_utils.CheckCallAndFilter
|
| - self.old2 = gclient_scm.gclient_utils.subprocess2.Popen
|
| - self.options = self.Options()
|
| - self.options.verbose = False
|
| - self.scm = gclient_scm.CreateSCM(url=self.url, root_dir=self.root_dir,
|
| - relpath=self.relpath)
|
| - os.environ['GCLIENT_KILL_GIT_FETCH_AFTER'] = '1.0'
|
| -
|
| - def tearDown(self):
|
| - os.environ.pop('GCLIENT_KILL_GIT_FETCH_AFTER')
|
| - gclient_scm.gclient_utils.CheckCallAndFilter = self.old
|
| - gclient_scm.gclient_utils.subprocess2.Popen = self.old2
|
| - super(GitHungTest, self).tearDown()
|
| -
|
| - def testGitFetchOk(self):
|
| - def subprocess_git_fetch_run(_, filter_fn, kill_timeout, **__):
|
| - self.assertEqual(kill_timeout, 1.0)
|
| - filter_fn('remote: something')
|
| - gclient_scm.gclient_utils.CheckCallAndFilter = subprocess_git_fetch_run
|
| - self.scm._Fetch(self.options)
|
| - self.checkstdout('remote: something\n')
|
| -
|
| - def testGitFetchHungAndRetry(self):
|
| - class Process(object):
|
| - # First process will hang, second process will exit with 0 quickly.
|
| - cv = threading.Condition()
|
| - count = -1
|
| - killed = []
|
| - def __init__(self):
|
| - self.count += 1
|
| - self.stdout = self
|
| - self.data = list('retry' if self.count > 0 else 'hung')
|
| - self.data.reverse()
|
| - self.this_killed = False
|
| - def read(self, _):
|
| - if self.data:
|
| - return self.data.pop()
|
| - if self.count == 0:
|
| - # Simulate hung process.
|
| - with self.cv:
|
| - self.cv.wait(timeout=0)
|
| - return ''
|
| - def kill(self):
|
| - self.this_killed = True
|
| - self.killed.append(self.count)
|
| - with self.cv:
|
| - self.cv.notify()
|
| - def wait(self):
|
| - if self.this_killed:
|
| - return 1
|
| - return 0
|
| -
|
| - gclient_scm.gclient_utils.subprocess2.Popen = lambda *_, **__: Process()
|
| - self.scm._Capture = lambda *_, **__: None
|
| - self.scm._Fetch(self.options)
|
| - self.checkstdout('hung\n')
|
| -
|
| -
|
| if __name__ == '__main__':
|
| level = logging.DEBUG if '-v' in sys.argv else logging.FATAL
|
| logging.basicConfig(
|
|
|