1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- #!/usr/bin/env vpython3
- # Copyright 2022 The Chromium Authors. All rights reserved.
- # Use of this source code is governed by a BSD-style license that can be
- # found in the LICENSE file.
- import logging
- import os
- import sys
- import unittest
- from unittest import mock
- DEPOT_TOOLS_ROOT = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
- sys.path.insert(0, DEPOT_TOOLS_ROOT)
- from testing_support import coverage_utils
- import utils
- class GitCacheTest(unittest.TestCase):
- def setUp(self):
- pass
- @mock.patch('subprocess.check_output', lambda x, **kwargs: b'foo')
- def testVersionWithGit(self):
- version = utils.depot_tools_version()
- self.assertEqual(version, 'git-foo')
- @mock.patch('subprocess.check_output')
- @mock.patch('os.path.getmtime', lambda x: 42)
- def testVersionWithNoGit(self, mock_subprocess):
- mock_subprocess.side_effect = Exception
- version = utils.depot_tools_version()
- self.assertEqual(version, 'recipes.cfg-42')
- @mock.patch('subprocess.check_output')
- @mock.patch('os.path.getmtime')
- def testVersionWithNoGit(self, mock_subprocess, mock_getmtime):
- mock_subprocess.side_effect = Exception
- mock_getmtime.side_effect = Exception
- version = utils.depot_tools_version()
- self.assertEqual(version, 'unknown')
- if __name__ == '__main__':
- logging.basicConfig(
- level=logging.DEBUG if '-v' in sys.argv else logging.ERROR)
- sys.exit(
- coverage_utils.covered_main(
- (os.path.join(DEPOT_TOOLS_ROOT, 'git_cache.py')),
- required_percentage=0))
|